Rudiments
listener.h
1 // Copyright (c) 1999-2018 David Muse
2 // See the COPYING file for more information.
3 
4 #ifndef RUDIMENTS_LISTENER_H
5 #define RUDIMENTS_LISTENER_H
6 
7 #include <rudiments/private/listenerincludes.h>
8 
11 
14 class RUDIMENTS_DLLSPEC listener {
15  public:
17  listener();
18 
20  virtual ~listener();
21 
26  void addFileDescriptor(filedescriptor *fd);
27 
31  void addReadFileDescriptor(filedescriptor *fd);
32 
36  void addWriteFileDescriptor(filedescriptor *fd);
37 
39  void removeFileDescriptor(filedescriptor *fd);
40 
42  void removeAllFileDescriptors();
43 
44 
52  int32_t listen();
53 
71  int32_t listen(int32_t sec, int32_t usec);
72 
73 
76  listenerlist *getReadReadyList();
77 
80  listenerlist *getWriteReadyList();
81 
82 
85  void retryInterruptedWaits();
86 
90  void dontRetryInterruptedWaits();
91 
92  #include <rudiments/private/listener.h>
93 };
94 
95 #endif
Definition: singlylinkedlist.h:64
Definition: listener.h:14
Definition: singlylinkedlist.h:12
Definition: filedescriptor.h:13