Rudiments
/home/dmuse/src/rudiments/include/rudiments/serialport.h
00001 // Copyright (c) 2004 David Muse
00002 // See the COPYING file for more information.
00003 
00004 #ifndef RUDIMENTS_SERIALPORT_H
00005 #define RUDIMENTS_SERIALPORT_H
00006 
00007 #include <rudiments/private/serialportincludes.h>
00008 
00009 #ifdef RUDIMENTS_NAMESPACE
00010 namespace rudiments {
00011 #endif
00012 
00013 class serialportprivate;
00014 
00020 class RUDIMENTS_DLLSPEC serialport : public filedescriptor {
00021         public:
00022 
00024                 serialport();
00025 
00028                 serialport(const serialport &s);
00029 
00032                 serialport      &operator=(const serialport &s);
00033 
00035                 virtual         ~serialport();
00036 
00039                 bool    setProfileNow(serialportprofile *profile);
00040 
00043                 bool    setProfileOnDrain(serialportprofile *profile);
00044 
00048                 bool    setProfileOnFlush(serialportprofile *profile);
00049 
00051                 bool    getProfile(serialportprofile *profile);
00052 
00055                 bool    drain();
00056 
00059                 bool    flush();
00060 
00062                 bool    flushInput();
00063 
00066                 bool    flushOutput();
00067 
00071                 bool    suspendOutput();
00072 
00075                 bool    restartOutput();
00076 
00080                 bool    transmitStop();
00081 
00084                 bool    transmitStart();
00085 
00095                 bool    sendBreak(int32_t duration);
00096 
00097         #include <rudiments/private/serialport.h>
00098 };
00099 
00100 #ifdef RUDIMENTS_NAMESPACE
00101 }
00102 #endif
00103 
00104 #endif