Rudiments: /home/dmuse/temp/rudiments/include/rudiments/listener.h Source File

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
9 typedef singlylinkedlistnode<filedescriptor *> listenerlistnode;
10 typedef singlylinkedlist<filedescriptor *> listenerlist;
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
filedescriptor
Definition: filedescriptor.h:13
listener
Definition: listener.h:14
listener::listen
int32_t listen(int32_t sec, int32_t usec)
listener::getWriteReadyList
listenerlist * getWriteReadyList()
listener::addFileDescriptor
void addFileDescriptor(filedescriptor *fd)
listener::removeFileDescriptor
void removeFileDescriptor(filedescriptor *fd)
listener::listen
int32_t listen()
listener::addReadFileDescriptor
void addReadFileDescriptor(filedescriptor *fd)
listener::getReadReadyList
listenerlist * getReadReadyList()
listener::addWriteFileDescriptor
void addWriteFileDescriptor(filedescriptor *fd)
listener::~listener
virtual ~listener()
listener::removeAllFileDescriptors
void removeAllFileDescriptors()
listener::dontRetryInterruptedWaits
void dontRetryInterruptedWaits()
listener::listener
listener()
listener::retryInterruptedWaits
void retryInterruptedWaits()
singlylinkedlist
Definition: singlylinkedlist.h:64
singlylinkedlistnode
Definition: singlylinkedlist.h:12