#include #include #include #include #include std::string LoadStringFromFile(std::string path) { std::ifstream file(path); if (!file.is_open()) { std::cout << "Failed to open " << path << std::endl; abort(); } std::stringstream sstr; sstr << file.rdbuf(); return sstr.str(); } #define GRPC_DEVICE_EXPORTS #define GRPC_DEVICE_API class GrpcDeviceClient { public: GrpcDeviceClient() {} virtual ~GrpcDeviceClient() {} virtual int OpenDevice(string devUri, string group) = 0; virtual int CloseDevice() = 0; virtual string GetDeviceTarget() = 0; virtual int GetClientStatus() = 0; virtual string GetOpendDeviceResource() = 0; //同步接口 virtual int Get(string devResource, string& devRes, string &calResMsg, string devUri = "", string calSection = "", string calClientID = "") = 0; virtual int Set(string devResource, string reqParams, string& devRes, string& calResMsg, string devUri = "", string calSection = "", string calClientID = "") = 0; virtual int Update(string devResource, string reqParams, string& devRes, string& calResMsg, string devUri = "", string calSection = "", string calClientID = "") = 0; virtual int Add(string devResource, string reqParams, string& devRes, string& calResMsg, string devUri = "", string calSection = "", string calClientID = "") = 0; virtual int Del(string devResource, string reqParams, string& devRes, string& calResMsg, string devUri = "", string calSection = "", string calClientID = "") = 0; virtual int Action(string devResource, string reqParams, string& devRes, string& calResMsg, string devUri = "", string calSection = "", string calClientID = "") = 0; virtual int Message(string devResource, string reqParams, string& devRes, string& calResMsg, string devUri = "", string calSection = "", string calClientID = "") = 0; virtual int BeginAyncWait() = 0; virtual void WaitAllComplete() = 0; virtual int GetAsyncResult(int idx, string& devResource, string& devRes, string& calResMsg) = 0; virtual void EndAync() = 0; virtual int AsyncAction(string devResource, string reqParams, string devUri = "", string calSection = "", string calClientID = "") = 0; virtual int AsyncMessage(string devResource, string reqParams, string devUri = "", string calSection = "", string calClientID = "") = 0; }; GRPC_DEVICE_API GrpcDeviceClient* CreateClient(const char* pszDeviceServerTarget); GRPC_DEVICE_API void FreeClient(GrpcDeviceClient* pClient);