]> git.saurik.com Git - wxWidgets.git/blob - include/wx/unix/evtloopsrc.h
Resolve GCC's 'type-punned pointer will break strict-aliasing rules' warning by break...
[wxWidgets.git] / include / wx / unix / evtloopsrc.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/unix/evtloopsrc.h
3 // Purpose: wxUnixEventLoopSource class
4 // Author: Vadim Zeitlin
5 // Created: 2009-10-21
6 // RCS-ID: $Id: wxhead.h,v 1.11 2009-06-29 10:23:04 zeitlin Exp $
7 // Copyright: (c) 2009 Vadim Zeitlin <vadim@wxwidgets.org>
8 // Licence: wxWindows licence
9 ///////////////////////////////////////////////////////////////////////////////
10
11 #ifndef _WX_UNIX_EVTLOOPSRC_H_
12 #define _WX_UNIX_EVTLOOPSRC_H_
13
14 class wxFDIODispatcher;
15 class wxFDIOHandler;
16
17 // ----------------------------------------------------------------------------
18 // wxUnixEventLoopSource: wxEventLoopSource for Unix-like toolkits using fds
19 // ----------------------------------------------------------------------------
20
21 class wxUnixEventLoopSource : public wxEventLoopSource
22 {
23 public:
24 // dispatcher and fdioHandler are only used here to allow us to unregister
25 // from the event loop when we're destroyed
26 wxUnixEventLoopSource(wxFDIODispatcher *dispatcher,
27 wxFDIOHandler *fdioHandler,
28 int fd,
29 wxEventLoopSourceHandler *handler,
30 int flags)
31 : wxEventLoopSource(handler, flags),
32 m_dispatcher(dispatcher),
33 m_fdioHandler(fdioHandler),
34 m_fd(fd)
35 {
36 }
37
38 virtual ~wxUnixEventLoopSource();
39
40 private:
41 wxFDIODispatcher * const m_dispatcher;
42 wxFDIOHandler * const m_fdioHandler;
43 const int m_fd;
44
45 wxDECLARE_NO_COPY_CLASS(wxUnixEventLoopSource);
46 };
47
48 #endif // _WX_UNIX_EVTLOOPSRC_H_
49