+++ /dev/null
-// CasServer.h: CCasServer \83N\83\89\83X\82Ì\83C\83\93\83^\81[\83t\83F\83C\83X\r
-//\r
-//////////////////////////////////////////////////////////////////////\r
-\r
-#pragma once\r
-\r
-\r
-#include <map>\r
-#include "CasClient.h"\r
-#include "TsUtilClass.h"\r
-#include "SmartSock.h"\r
-\r
-\r
-using std::map;\r
-\r
-\r
-class CCasServer : protected CCasClient::ICasClientHandler\r
-{\r
-public:\r
- class ICasServerHandler\r
- {\r
- public:\r
- virtual void OnCasServerEvent(CCasServer *pCasServer, const WORD wEventID) = 0;\r
- };\r
-\r
- enum\r
- {\r
- CSEI_CONNECTED, // \83N\83\89\83C\83A\83\93\83g\90Ú\91±\r
- CSEI_DISCONNECTED, // \83N\83\89\83C\83A\83\93\83g\90Ø\92f\r
- };\r
-\r
- CCasServer(void);\r
- CCasServer(ICasServerHandler *pEventHandler);\r
- ~CCasServer(void);\r
-\r
- const BOOL OpenServer(const WORD wServerPort);\r
- void CloseServer(void);\r
- \r
- const DWORD GetClientNum(void) const;\r
-\r
-protected:\r
- virtual void OnCasClientEvent(CCasClient *pClient, const DWORD dwEventID, PVOID pParam);\r
-\r
- void ServerThread(void);\r
- static void* ServerThreadRaw(LPVOID pParam);\r
-\r
- ICasServerHandler *m_pEventHandler;\r
-\r
- CSmartSock m_pSocket;\r
- pthread_t m_hServerThread;
-\r
- typedef map<CCasClient *, CCasClient *> ClientList;\r
- ClientList m_ClientList;\r
- \r
- CCriticalLock m_Lock;\r
-};\r