#pragma once #include #include #include #include #include class CommEntity; class DeviceEntity { public: int deviceId = -1; int type = -1; std::string name; std::string code; bool isOpen = false; std::string attrsJson = ""; int err = 0; int online = 0; int status = 0; //std::map mapAttrs; DataFields attrs; // 通讯entity std::shared_ptr commEntity; //int getAttrInt(std::string key); //float getAttrFloat(std::string key); //double getAttrDouble(std::string key); //std::string getAttrStr(std::string key); // 启动通讯 int startComm(); }; class Device { public: static void add(DataFields& fields); static std::vector> getDeviceByType(int type); public: static std::map> mapDevices; };