| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #ifndef _WATCHSERVERSOCKET_H_
- #define _WATCHSERVERSOCKET_H_
- #include "CritSection.h"
- #include "SocketHandle.h"
- #include "SocketClientImpl.h"
- //---------------------------------------------- CDevicesManager ----
- class CWatchServerSocket:public ISocketClientHandler
- {
- typedef SocketClientImpl<ISocketClientHandler> CSocketClient;
- friend CSocketClient;
- public:
- CWatchServerSocket();
- ~CWatchServerSocket();
- public:
- BOOL Connection(LPCTSTR strAddr, LPCTSTR strPort);
- void DisConnection(void);
- void ProcessHeart(void *pData, int nLen);
- protected:
- // ISocketServerHandler
- virtual void OnThreadBegin(CSocketHandle* pSH);
- virtual void OnThreadExit(CSocketHandle* pSH);
- virtual void OnDataReceived(CSocketHandle* pSH, const BYTE* pbData, DWORD dwCount, const SockAddrIn& addr);
- virtual void OnConnectionDropped(CSocketHandle* pSH);
- virtual void OnConnectionError(CSocketHandle* pSH, DWORD dwError);
- public:
- CSocketClient m_SocketClient;
- int m_nSockType; //UDP »ò TCP
- int m_nMode; //IP4 »ò IP6
- BOOL m_bSocket;
- protected:
- void GetAddress(const SockAddrIn& addrIn, CString& rString) const;
- bool SetupMCAST();
- unsigned int CalcCheckSum( void *pData, unsigned int nSize );
- void ProcessData(CSocketHandle *pSH, const BYTE* pData, DWORD nLen);
- int OnCmdProcess(void *pData);
-
- private:
- };
- #endif
|