📄 rawsocketserverworker.h
字号:
/////////////////////////////////////////////////////////////////////
// Class Creator Version 2.0.000 Copyrigth (C) Poul A. Costinsky 1994
///////////////////////////////////////////////////////////////////
// Header File RawSocketServerWorker.h
// class CWizRawSocketListener
//
// 16/07/1996 17:53 Author: Poul
///////////////////////////////////////////////////////////////////
#ifndef __CWizRawSocketServerWorker_H
#define __CWizRawSocketServerWorker_H
#include "ThreadDispatcher.h"
#include "RawSocket.h"
/////////////////////////////////////////////////////////////////////////////
// class CWizRawSocketServerWorker
class CWizRawSocketListener : public CWizMultiThreadedWorker
{
public:
// Exceptions hierarchy
struct Xeption {}; // common
struct XCannotCreate : public Xeption {}; // createsocket fail
struct XCannotSetHook : public Xeption {}; // WSASetBlockingHook fail
struct XCannotSetHookEvent : public Xeption {}; // SetEven fail
struct XCannotListen : public Xeption {}; // Listen fail
// Constructors:
CWizRawSocketListener (int nPort); // Constructor do almost nothing
// Destructor:
virtual ~CWizRawSocketListener ();
public:
// Operations:
// Virtual operations:
// Interface for CWizThreadDispatcher
virtual void Prepare();
virtual BOOL WaitForData (HANDLE hShutDownEvent);
virtual BOOL TreatData (HANDLE hShutDownEvent, HANDLE hDataTakenEvent);
virtual void CleanUp();
// Pure virtual function - do something
// with the socket connected to the client.
// Should return TRUE if needs to continue I/O.
virtual BOOL ReadWrite (CWizReadWriteSocket& socket) = 0;
protected:
// Implementation:
// Virtual implementation:
protected:
// Data Members:
CWizSyncSocket* m_pListenSocket;
int m_nPort;
SOCKET m_hAcceptedSocket;
};
/////////////////////////////////////////////////////////////////////////////
#endif // __CWizRawSocketServerWorker_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -