61 TCPPort (std::map<std::string, std::string> options);
72 ssize_t Read (
void *
const buffer,
size_t count);
74 ssize_t ReadFull (
void *
const buffer,
size_t count);
76 ssize_t BytesAvailable ();
78 ssize_t BytesAvailableWait ();
80 ssize_t Write (
const void *
const buffer,
size_t count);
86 std::string GetStatus ()
const;
88 void SetTimeout (
Timeout timeout);
90 void SetCanRead (
bool canRead);
92 void SetCanWrite (
bool canWrite);
94 bool IsOpen ()
const {
return _open; }
105 void CheckPort (
bool read);
107 bool ProcessOption (
const std::string &option,
const std::string &value);
110 void WaitForConnection ();
111 typedef enum {TIMED_OUT, DATA_AVAILABLE, CAN_WRITE} WaitStatus;
112 WaitStatus WaitForDataOrTimeout ();
113 bool IsDataAvailable ();
114 WaitStatus WaitForWritableOrTimeout ();
115 void SetSocketBlockingFlag ();
122 #endif // __TCPPORT_H An object used to represent timeouts.
Definition: timeout.h:62
bool IsOpen() const
Check if the port is open.
Definition: tcpport.h:94
FlexiPort data communications library.
Base Port class.
Definition: port.h:79
TCP implementation of the Port class.
Definition: tcpport.h:58