多数据源中间件标准版1.0

TrunkBase.h 1.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*************************************************************************
  2. 【文件名】 TrunkBase.h
  3. 【功能模块和目的】 中继线路基类
  4. 【开发者及日期】 郑石诺 2017/01/08
  5. 【版本】 V1.0.0
  6. 【版权信息】 Copyright (C)2017 河南华谊网络科技有限公司
  7. 【更改记录】
  8. *************************************************************************/
  9. #pragma once
  10. /*************************************************************************
  11. 【类名】 CTrunkBase
  12. 【功能】
  13. 【接口说明】 中继线路基类头文件
  14. 【开发者及日期】 郑石诺 2017/01/08
  15. 【版本】 V1.0.0
  16. 【更改记录】
  17. *************************************************************************/
  18. class CTrunkBase
  19. {
  20. public:
  21. CTrunkBase(UINT TrunkId);
  22. virtual ~CTrunkBase(void) = 0 {}
  23. // 属性相关
  24. virtual TrunkType type(void) const = 0;
  25. UINT id(void) const { return m_TrunkId; }
  26. int getDevLinkCallId(void) const { return m_DevLinkCallId; }
  27. // 线路操作
  28. virtual void regist(void); // 注册线路
  29. // DevLink设备事件响应入口
  30. virtual void onDevLinkEventS(DevLinkInfoS* pInfoS); // S事件
  31. virtual void onDevLinkEventA(int DevLinkCallId); // A事件
  32. virtual void onDevLinkEventD(int DevLinkCallId); // D事件
  33. protected:
  34. virtual void _setState(TRUNK_STATE NewState, int Flag); // 设置线路当前状态
  35. virtual void _onFree(int Flag); // 线路空闲的后续处理
  36. protected:
  37. UINT m_TrunkId; // 中继线ID
  38. int m_DevLinkCallId; // 当前线路关联的DevLinkCallId
  39. TRUNK_STATE m_LineStatus; // 线路当前状态
  40. CString m_CallerNum; // 主叫号码
  41. CString m_CalleeNum; // 被叫号码
  42. };