/************************************************************************* 【文件名】 DevControl.h 【功能模块和目的】 设备控制类头文件 【开发者及日期】 郑石诺 2016/06/20 【版本】 V1.0.0 【版权信息】 Copyright (C)2016 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ #pragma once #include "devicelink.h" class IDeviceOperator; /************************************************************************* 【类名】 CDevControl 【功能】 【接口说明】 设备控制类 【开发者及日期】 郑石诺 2016/06/20 【版本】 V1.0.0 【版权信息】 Copyright (C)2016 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ 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, UINT ResID); // 通知可控的资源明细信息 void onEventResState(UINT Type, UINT ResID, UINT State, LPCTSTR CallerNum = NULL, LPCTSTR CalleeNum = NULL); // 通知资源状态信息 void onEventLog(UINT Level, CHAR* lpszFormat, ...); // 通知显示日志 void onEventDevUp(void); // 通知设备初始化结束 void onEventDevDown(void); // 通知设备不可用 void onEventOpResult(long Instance, bool IsSucceed, LPCTSTR lpData ); // 设备操作执行结果 void onEventOpProcess(long Instance, UINT HostLine, UINT AssoLine, DEV_RES_TYPE AssoLineType, LPCTSTR lpCallerNum, LPCTSTR lpCalleeNum); // 操作进展通知事件 void onEventDevOperation(UINT LineID, DEV_OP OpType, LPCTSTR lpCallerNum, LPCTSTR lpCalleeNum); // 设备主动操作事件 BOOL IsRegExten(UINT ExtenID); private: CDevControl(void); void __openTts(void); void __closeTts(void); private: IDeviceOperator* m_pOperator; };