2025-04-03 18:33:10 +08:00
|
|
|
#ifndef DATAMANAGER_H
|
|
|
|
|
#define DATAMANAGER_H
|
|
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
|
#include "global.h"
|
|
|
|
|
#include "export.hpp"
|
|
|
|
|
/****数据管理类
|
|
|
|
|
* 对模型数据的集中分发、更新
|
|
|
|
|
*****/
|
|
|
|
|
typedef QMap<QString,modelStateInfo> ModleStateMap;
|
|
|
|
|
typedef QMap<QString,modelDataInfo> ModelDataMap;
|
|
|
|
|
|
|
|
|
|
class DIAGRAM_DESIGNER_PUBLIC DataManager : public QObject
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
explicit DataManager(QObject *parent = nullptr);
|
|
|
|
|
~DataManager();
|
|
|
|
|
|
|
|
|
|
static DataManager& instance();
|
|
|
|
|
public:
|
2025-04-30 16:29:17 +08:00
|
|
|
void initialModelState(bool refresh = false);
|
|
|
|
|
void initialModelData(bool refresh = false);
|
2025-04-03 18:33:10 +08:00
|
|
|
|
|
|
|
|
void updateModelData(const QString& sModel,QUuid uuid,const QString& sGroup,QMap<QString,propertyStateInfo> mapPro);
|
|
|
|
|
|
|
|
|
|
ModleStateMap& modelState();
|
|
|
|
|
ModelDataMap& modelData();
|
|
|
|
|
private:
|
|
|
|
|
ModleStateMap _modelStateInfo; //接收的模型结构信息(可直接返回引用)
|
|
|
|
|
ModelDataMap _modleDataInfo; //模型实时数据(使用接口获取数据)
|
|
|
|
|
|
|
|
|
|
bool _stateInitialised;
|
|
|
|
|
bool _dataInitialised;
|
|
|
|
|
};
|
|
|
|
|
#endif // DATAMANAGER_H
|