#ifndef ___CDYCOMMITCLIENT_H__ #define ___CDYCOMMITCLIENT_H__ #ifdef _WINDOWS64 #ifdef DY_COMMIT_DLL_EXPORTS #define DY_COMMIT_DLL_API __declspec(dllexport) #else #define DY_COMMIT_DLL_API __declspec(dllimport) #endif #else #define DY_COMMIT_DLL_API #endif #ifndef _WINDOWS64 #include #include //#include #else #include #include #endif #include "dy_commit_m.h" //#include "common_service_interface.h" //#include #include "msg_api/message_inv.h" #include "sysadm/scn_service.h" #include "servicemanage.h" #include "pub_ctx.h" #include "system.h" #include "port_def.h" #include "db_com/CDyCfgLocal.h" using namespace NS_SYSADMIN; //#include //#include /*#ifndef SERVEICE_CLASS_H #define SERVEICE_CLASS_H class CServicesManage servicesman; #endif*/ struct TDyReCommitProp //扩展用,暂不使用 { int app_no; }; class DY_COMMIT_DLL_API CDyCommitClient { public: CDyCommitClient (int sys_port); CDyCommitClient (int sys_port, int seconds); CDyCommitClient();//用于图形修改SCADA数据 ~CDyCommitClient(); //void SetAppNo(const int app_no); void SetRequestTimeout (int seconds); short VSCommit (TDyCommitVS DyCommitVSStru); short KVSCommit (TDyCommitKVS DyCommitKVSStru); private: ServiceInfo m_Serviceinfo; CDyCfgLocal m_dy_cfg_read; char m_IpAddress[64]; int m_Port; Handle m_Handle; char m_HostName[64]; CScnService* m_ServicesManage; int m_RequestTimeoutSeconds; int GetHostByAppNo (char* host_name, const int app_no, const short context_no); int SetServiceHost(int app_no); bool print_env;//是否输出打印语句 //记录应用是否需要调用总控服务 map map_app_is_ctrl; //是否需要自动获取端口号,CDyCommitClient()下生效 bool m_is_port_auto_set; short GetIsCtrlByApp(const int app_no,bool &is_ctrl); }; #endif