#pragma once #include #include #include "common/Fields.h" class CommEntity { public: CommEntity() {} CommEntity(std::string type) : type(type) {} void setType(std::string type) { this->type = type; } // 启动通讯连接 virtual int start() { return 0; }; // 关闭通讯连接 virtual void close() { isCloseRequest_ = true; }; std::string id() { return id_; } bool isAlive() { return isAlive_; } bool isConnected() { return isConnected_; } public: std::string id_; bool isAlive_ = false; bool isConnected_ = false; bool isCloseRequest_ = false; std::string type; }; class Communicator { public: static std::shared_ptr createEntity(Fields& data); };