refactoring: replace wxSocketDispatcher with more generic wxSelectDispatcher (patch...
[wxWidgets.git] / include / wx / private / gsocketiohandler.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/private/gsocketiohandler.h
3 // Purpose: class for registering GSocket in wxSelectDispatcher
4 // Authors: Lukasz Michalski
5 // Modified by:
6 // Created: December 2006
7 // Copyright: (c) Lukasz Michalski
8 // RCS-ID: $Id$
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_PRIVATE_GSOCKETIOHANDLER_H_
13 #define _WX_PRIVATE_GSOCKETIOHANDLER_H_
14
15 #include "wx/defs.h"
16 #include "wx/private/selectdispatcher.h"
17
18 #if wxUSE_SOCKETS
19
20 // forward declarations
21 class GSocket;
22
23 class WXDLLIMPEXP_CORE wxGSocketIOHandler : public wxFDIOHandler
24 {
25 public:
26 wxGSocketIOHandler(GSocket* socket);
27 int GetFlags() const;
28 void RemoveFlag(wxSelectDispatcherEntryFlags flag);
29 void AddFlag(wxSelectDispatcherEntryFlags flag);
30
31 private:
32 virtual void OnReadWaiting(int fd);
33 virtual void OnWriteWaiting(int fd);
34 virtual void OnExceptionWaiting(int fd);
35
36 GSocket* m_socket;
37 int m_flags;
38 };
39
40 #endif // wxUSE_SOCKETS
41
42 #endif // _WX_PRIVATE_SOCKETEVTDISPATCH_H_