RelayServer.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. // RelayServer.h: interface for the CRelayServer class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_RELAYSERVER_H__AA2F8FC9_AC25_4060_A136_DC9545C92699__INCLUDED_)
  5. #define AFX_RELAYSERVER_H__AA2F8FC9_AC25_4060_A136_DC9545C92699__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "NetServer.h"
  10. #include "RelayConnect.h"
  11. class CRelayServer : public CNetServer  
  12. {
  13. public:
  14. CRelayServer();
  15. virtual ~CRelayServer();
  16. private:
  17. virtual CNetConnect* CreateConnect(CNetServer* pNetServer, unsigned long id);
  18. virtual void DestroyConnect(CNetConnect* pConn);
  19. virtual void OnBuildup();
  20. virtual void OnClearup();
  21. virtual void OnClientConnectCreate(CNetConnect* pConn);
  22. virtual void OnClientConnectClose(CNetConnect* pConn);
  23. private:
  24. typedef std::map<DWORD, CRelayConnect*> IP2CONNECTMAP;
  25. IP2CONNECTMAP m_mapIp2Connect;
  26. CLockMRSW m_lockIpMap;
  27. public:
  28. BOOL FindRelayConnectByIP(DWORD IP, class CNetConnectDup* pConnDup);
  29. public:
  30. BOOL TraceInfo();
  31. };
  32. #endif // !defined(AFX_RELAYSERVER_H__AA2F8FC9_AC25_4060_A136_DC9545C92699__INCLUDED_)