You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.5 KiB
66 lines
2.5 KiB
#ifndef DATABASEMANAGERCORE_H
|
|
#define DATABASEMANAGERCORE_H
|
|
|
|
#include <QObject>
|
|
#include <QtSql>
|
|
|
|
#include "model/databaseManager/utils/XmlReader.h"
|
|
#include "model/databaseManager/type/EDatabaseRequest.h"
|
|
#include "model/databaseManager/dto/ProbeProperties/DbmProbeProperties.h"
|
|
#include "model/databaseManager/dto/ProbeProperties/DbmApplicatoin.h"
|
|
#include "model/databaseManager/dto/ProbeProperties/DbmPreset.h"
|
|
#include "model/databaseManager/dto/ProbeProperties/DbmPresetValue.h"
|
|
#include "model/databaseManager/dto/ProbeProperties/DbmLastConfig.h"
|
|
#include "model/databaseManager/dto/System/DbmSysParameters.h"
|
|
#include "model/databaseManager/dto/System/DbmGrayMap.h"
|
|
#include "model/databaseManager/dto/System/DbmTgc.h"
|
|
#include "model/databaseManager/dto/System/DbmTintMap.h"
|
|
#include "model/databaseManager/dto/System/DbmSri.h"
|
|
#include "model/databaseManager/dto/System/DbmDynamicContrast.h"
|
|
#include "model/databaseManager/dto/System/DbmCriFilter.h"
|
|
#include "model/databaseManager/dto/System/DbmEnhance.h"
|
|
#include "model/databaseManager/dto/Hardware/DbmLineFilter.h"
|
|
#include "model/databaseManager/dto/Hardware/DbmLpf.h"
|
|
#include "model/databaseManager/dto/Hardware/DbmApodizationLut.h"
|
|
#include "model/databaseManager/dto/User/DbmUser.h"
|
|
#include "model/databaseManager/dto/User/DbmUserGrayMap.h"
|
|
#include "model/databaseManager/dto/User/DbmUserTgc.h"
|
|
#include "model/databaseManager/core/DatabaseManagerNames.h"
|
|
|
|
/*************************************************************************************************/
|
|
/**
|
|
* @brief Database manager core class
|
|
* @author Mohammad Mohsen Talaie
|
|
* @details
|
|
* @date 20 sep 2020
|
|
*/
|
|
/*************************************************************************************************/
|
|
class DatabaseManagerCore : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
private:
|
|
static QMutex _locker;
|
|
XmlReader* _xmlReader;
|
|
XmlReader* _xmlDataReader;
|
|
QSqlDatabase _databaseDriver = QSqlDatabase::addDatabase("QSQLITE");
|
|
|
|
QString getDatabaseHomeDirectory();
|
|
QString createDbName(QString dbName);
|
|
DbmDtoGrayMap appendUserGrayMapToMainGrayMapList(const QVariant& userGrayVar,
|
|
QVariant& grayVar);
|
|
DbmDtoTgc appendUserTgcToMainTgcList(const QVariant& userTgcVar, QVariant& tgcVar);
|
|
|
|
public:
|
|
DatabaseManagerCore();
|
|
~DatabaseManagerCore();
|
|
|
|
void init();
|
|
|
|
QPair<bool, QVariant> read(EDatabaseRequest::eDatabaseRequest databaseRequest,
|
|
QList<QVariant> args);
|
|
bool write(EDatabaseRequest::eDatabaseRequest databaseRequest,
|
|
QList<QVariant> args);
|
|
};
|
|
|
|
#endif //DATABASEMANAGERCORE_H
|
|
|