中间件底层,websocket

SubjectHost.h 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*************************************************************************
  2. 【文件名】 SubjectHost.h
  3. 【功能模块和目的】 订阅主题观查者类头文件
  4. 【开发者及日期】 郑石诺 2015/01/22
  5. 【版本】 V1.0.0
  6. 【版权信息】 Copyright (C)2015 河南加一信息技术有限公司
  7. 【更改记录】
  8. *************************************************************************/
  9. #pragma once
  10. #include <mutex>
  11. /*************************************************************************
  12. 【类名】 CSubjectHost
  13. 【功能】
  14. 【接口说明】 订阅主题观查者类
  15. 【开发者及日期】 郑石诺 2015/01/22
  16. 【版本】 V1.0.0
  17. 【版权信息】 Copyright (C)2015 河南加一信息技术有限公司
  18. 【更改记录】
  19. *************************************************************************/
  20. class CSubjectHost
  21. {
  22. public:
  23. CSubjectHost(UINT Agent);
  24. ~CSubjectHost(void);
  25. // 相关操作
  26. UINT id(void) const { return m_Agent; }
  27. void addQueueNo(int QueueNo);
  28. void delQueueNo(int QueueNo);
  29. BOOL isQueueNoCared(int QueueNo);
  30. void addAgentId(int AgentId);
  31. void delAgentId(int AgentId);
  32. BOOL isAgentIdCared(int AgentId);
  33. void addAgentId2ExtNo(int ExtenNo);
  34. void delAgentId2ExtNo(int ExtenNo);
  35. BOOL isAgentId2ExtNoCared(int ExtenNo);
  36. BOOL isEmpty(void) const;
  37. private:
  38. UINT m_Agent; // 观查者座席工号
  39. CList<UINT, UINT> m_AgentIdList; // 订阅的座席号
  40. CList<UINT, UINT> m_AgentId2ExtNoList; // 订阅其分机的座席号
  41. CList<UINT, UINT> m_QueueNoList; // 订阅的外线排队组号
  42. };