/************************************************************************* 【文件名】 DevControl.h 【功能模块和目的】 设备控制类头文件 【开发者及日期】 郑石诺 2015/01/05 【版本】 V1.0.0 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ #pragma once #include "devicelink.h" class IDeviceOperator; /************************************************************************* 【类名】 CDevControl 【功能】 设备控制类 【接口说明】 【开发者及日期】 郑石诺 2015/01/05 【版本】 V1.0.0 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ class CDevControl : public IDeviceLink { SINGLETON_DECLARE(CDevControl) public: virtual ~CDevControl(void); //////////////////////////////////////////////////////////////////////////////// ////继承自IDeviceLink/////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// bool open(IDeviceOperator* a_pOperator); void close(void); bool operate(LONG Instance, LINE_OP OpType, ULONG ResID, LineOpParam* pLineOpParam); // 业务逻辑处理相关接口 void onEventResType(void); // 通知可控的资源类型 void onEventResDetail(UINT Type, LPCTSTR ResID); // 通知可控的资源明细信息 void onEventResState(UINT Type, LPCTSTR ResID, long State, LPCTSTR CallerNum = NULL, LPCTSTR CalleeNum = NULL); // 通知资源状态信息 void onEventLog(UINT Level, CHAR* lpszFormat, ...); // 通知显示日志 void onEventInitEnd(void); // 通知设备初始化结束 void onEventOpResult(long Instance, bool IsSucceed, LPCTSTR lpData = NULL); // 设备操作执行结果 void onEventOpProcess(long Instance, UINT HostLine, UINT AssoLine, DEV_RES_TYPE AssoLineType, LPCTSTR lpCallerNum, LPCTSTR lpCalleeNum); // 操作进展通知事件 void onEventDevOperation(UINT LineID, UINT OpType, LPCTSTR lpCallerNum, LPCTSTR lpCalleeNum); // 设备主动操作事件 private: CDevControl(void); private: IDeviceOperator* m_pOperator; };