![]() |
CuteHMI - Shared Database (CuteHMI.SharedDatabase.1)
|
Database worker. More...
#include <cutehmi/shareddatabase/DatabaseWorker.hpp>
Signals | |
void | started () |
Work started. More... | |
void | ready () |
Results are ready. More... | |
void | refused (const QString &reason) |
Worker went on a strike action. More... | |
Public Member Functions | |
DatabaseWorker (const QString &connectionName, std::function< void(QSqlDatabase &db)> task=nullptr) | |
Constructor. More... | |
void | setTask (std::function< void(QSqlDatabase &db)> task) |
Set task. More... | |
virtual void | job (QSqlDatabase &db) |
Worker's job. More... | |
void | wait () const |
Wait for the worker. More... | |
bool | isReady () const |
Check if worker is ready. More... | |
bool | isWorking () const |
Check if worker is working. More... | |
void | work () |
Do the work. More... | |
![]() | |
virtual const QMetaObject * | metaObject () const const |
QObject (QObject *parent) | |
virtual | ~QObject () |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
QString | objectName () const const |
void | setObjectName (const QString &name) |
bool | isWidgetType () const const |
bool | isWindowType () const const |
bool | signalsBlocked () const const |
bool | blockSignals (bool block) |
QThread * | thread () const const |
void | moveToThread (QThread *targetThread) |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType) |
void | killTimer (int id) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegExp ®Exp, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
const QObjectList & | children () const const |
void | setParent (QObject *parent) |
void | installEventFilter (QObject *filterObj) |
void | removeEventFilter (QObject *obj) |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
void | dumpObjectTree () |
void | dumpObjectInfo () |
void | dumpObjectTree () const const |
void | dumpObjectInfo () const const |
bool | setProperty (const char *name, const QVariant &value) |
QVariant | property (const char *name) const const |
QList< QByteArray > | dynamicPropertyNames () const const |
void | destroyed (QObject *obj) |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const const |
bool | inherits (const char *className) const const |
void | deleteLater () |
Q_DISABLE_COPY (Class) | |
Q_DISABLE_MOVE (Class) | |
Q_DISABLE_COPY_MOVE (Class) | |
T | qobject_cast (QObject *object) |
T | qobject_cast (const QObject *object) |
T | qFindChild (const QObject *obj, const QString &name) |
QList< T > | qFindChildren (const QObject *obj, const QString &name) |
QList< T > | qFindChildren (const QObject *obj, const QRegExp ®Exp) |
Q_CLASSINFO (Name, Value) | |
Q_INTERFACES (...) | |
Q_PROPERTY (...) | |
Q_ENUMS (...) | |
Q_FLAGS (...) | |
Q_ENUM (...) | |
Q_FLAG (...) | |
Q_ENUM_NS (...) | |
Q_FLAG_NS (...) | |
Q_OBJECT Q_OBJECT | |
Q_GADGET Q_GADGET | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_SIGNALS Q_SIGNALS | |
Q_SIGNAL Q_SIGNAL | |
Q_SLOTS Q_SLOTS | |
Q_SLOT Q_SLOT | |
Q_EMIT Q_EMIT | |
Q_INVOKABLE Q_INVOKABLE | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
Protected Member Functions | |
QThread * | dbThread () const |
Get database thread. More... | |
QSqlDatabase * | db () |
Get database connection. More... | |
const QSqlDatabase * | db () const |
Get database connection. More... | |
![]() | |
QObject * | sender () const const |
int | senderSignalIndex () const const |
int | receivers (const char *signal) const const |
bool | isSignalConnected (const QMetaMethod &signal) const const |
virtual void | timerEvent (QTimerEvent *event) |
virtual void | childEvent (QChildEvent *event) |
virtual void | customEvent (QEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
Additional Inherited Members | |
![]() | |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
![]() | |
typedef | QObjectList |
![]() | |
objectName | |
Database worker.
Convenient worker class that runs tasks in the same thread as where database connection lives.
|
explicit |
Constructor.
This constructor employs the worker in the same thread as where database connection denoted by connectionName lives.
connectionName | database connection name. |
task | task function. See job(). |
|
protected |
Get database connection.
|
protected |
Get database connection.
|
protected |
Get database thread.
bool cutehmi::shareddatabase::DatabaseWorker::isReady | ( | ) | const |
Check if worker is ready.
true
when worker has completed the job, false
otherwise.bool cutehmi::shareddatabase::DatabaseWorker::isWorking | ( | ) | const |
Check if worker is working.
true
if worker is processing its job, false
otherwise.
|
virtual |
Worker's job.
This function can be reimplemented. Default implementation calls task function if it has been set (it can be passed to the constructor or set via setTask() function). Default implementation does nothing if task has not been set (i.e. task = nullptr
).
db | databse connection to be used by the worker. |
|
signal |
Results are ready.
This signal is emitted when the job() has been completed and the results are ready.
|
signal |
Worker went on a strike action.
This signal is emitted when worker refused to do the job.
void cutehmi::shareddatabase::DatabaseWorker::setTask | ( | std::function< void(QSqlDatabase &db)> | task | ) |
Set task.
task | task function. See job(). |
|
signal |
Work started.
This signal is emitted just before worker starts processing the job.
void cutehmi::shareddatabase::DatabaseWorker::wait | ( | ) | const |
Wait for the worker.
Causes calling thread to wait until worker finishes its job. Function does not block until work() has been called. It also won't block if worker has already finished its job.
void cutehmi::shareddatabase::DatabaseWorker::work | ( | ) |
Do the work.
This function tells worker to process the job() in database thread.