#pragma once #include #include #include enum ModuleType { comm=1, purify=2, calculate=3, transfer=4, store=5, control=6, }; struct DataItem { int Id; std::string DataName; std::string Code; std::string DataType; bool Displayed; std::string Description; std::string ToString() { return Code + DataName; } }; struct Setting { std::string Name; QVariant qValue; }; struct ModuleInfo { int Id; // 实例编号,不是moduleinfo里的编号,而是intelligentcontrol里的编号 ModuleType Type; // 类型 std::string Name; // 名称 std::string Code; // 标识码 std::string Model; // 型号 std::string AssemblyName; // 组件程序(dll、jar)名字,含路径 std::string ClassName; // 组件的 类名 std::string Description; // 描述 std::string Version; // 版本 int serverId; // 所属服务器编号 std::list lstInputs;// 输入 std::vector vSettings; // 自定义配置 std::list Properties; }; struct DeviceInfo { int Id; std::string Name; // 名称 std::string Type; // 类型 std::string Code; // 标识码 std::string Model; // 型号,通信组件的Code属性 int ServerId; // ModuleInfo ModuleInfo; // std::string Description; // 描述 //std::list Properties; }; struct AlarmRuler { std::string NodeCode; // 节点-标识码 std::string DataItemCode; // 数据项-标识码 std::string Operator; // 运算符 double dbOperator1; // 操作数1 double dbOperator2; // 操作数2 uint nKeepTimes = 5; // 保持次数 std::string alarmRuleId; // 节点-标识码 int alarmRuleVersion; int level; int status; std::string object; }; struct Config { std::string serverId; std::string appName; };