Rudiments
/home/dmuse/src/rudiments/include/rudiments/modemserver.h
00001 // Copyright (c) 2004 David Muse
00002 // See the COPYING file for more information.
00003 
00004 #ifndef RUDIMENTS_MODEMSERVER_H
00005 #define RUDIMENTS_MODEMSERVER_H
00006 
00007 #include <rudiments/private/modemserverincludes.h>
00008 
00009 #ifdef RUDIMENTS_NAMESPACE
00010 namespace rudiments {
00011 #endif
00012 
00013 class modemserverprivate;
00014 
00025 class RUDIMENTS_DLLSPEC modemserver : public server, private modemutil {
00026         public:
00027 
00029                 modemserver();
00030 
00033                 modemserver(const modemserver &m);
00034 
00037                 modemserver     &operator=(const modemserver &m);
00038 
00040                 virtual         ~modemserver();
00041 
00053                 bool    listen(const char *device, const char *baud,
00054                                                 const char *listenscript,
00055                                                 const char *acceptscript,
00056                                                 const char *disconnectscript);
00057 
00064                 void    initialize(const char *device, const char *baud,
00065                                                 const char *listenscript,
00066                                                 const char *acceptscript,
00067                                                 const char *disconnectscript);
00068 
00072                 bool    bind();
00073 
00078                 bool    listen(int32_t backlog);
00079 
00085                 filedescriptor  *accept();
00086 
00091                 bool    close();
00092 
00093         #include <rudiments/private/modemserver.h>
00094 };
00095 
00096 #ifdef RUDIMENTS_NAMESPACE
00097 }
00098 #endif
00099 
00100 #endif