Streamable tcp connection between client and server.
More...
#include <stream.h>
Public Member Functions |
| void | close (void) |
| | Close an active stream connection.
|
| void | open (Socket::address &address, unsigned segment=536) |
| | Open a stream connection to a tcp service.
|
| void | open (char *host, char *service, unsigned segment=536) |
| | Open a stream connectoion to a host and service.
|
| | operator bool () |
| | See if stream connection is active.
|
| bool | operator! () |
| | See if stream is disconnected.
|
| | tcpstream (tcpstream ©) |
| | Copy constructor...
|
| | tcpstream (TCPServer *server, unsigned segsize=536, timeout_t timeout=0) |
| | Create a stream from an existing tcp listener.
|
| | tcpstream (int family=PF_INET, timeout_t timeout=0) |
| | Create an unconnected tcp stream object that is idle until opened.
|
| | tcpstream (Socket::address &address, unsigned segsize=536, timeout_t timeout=0) |
| | A convenience constructor that creates a connected tcp stream directly from an address.
|
|
virtual | ~tcpstream () |
| | Destroy a tcp stream.
|
|
bool | is_open (void) |
| int | sync (void) |
| | Flush the stream input and output buffers, writes pending output.
|
| int | get (void) |
| | Get the next character.
|
| int | put (int code) |
| | Put the next character.
|
Protected Member Functions |
| int | _getch (void) |
| | This streambuf method is used to load the input buffer through the established tcp socket connection.
|
| int | _putch (int ch) |
| | This streambuf method is used to write the output buffer through the established tcp connection.
|
|
virtual ssize_t | _read (char *buffer, size_t size) |
|
virtual bool | _wait (void) |
|
virtual ssize_t | _write (char *buffer, size_t size) |
|
socket_t | getsocket (void) |
|
void | release (void) |
| | Release the tcp stream and destroy the underlying socket.
|
|
void | allocate (size_t size) |
|
int | overflow (int code) |
| int | uflow () |
| | This streambuf method is used for doing unbuffered reads through the establish tcp socket connection when in interactive mode.
|
|
int | underflow () |
Protected Attributes |
|
socket_t | so |
|
timeout_t | timeout |
|
size_t | bufsize |
|
char * | gbuf |
|
char * | pbuf |
Detailed Description
Streamable tcp connection between client and server.
The tcp stream class can represent a client connection to a server or an instance of a service generated by a tcp listener. As a stream class, data can be manipulated using the << and >> operators.
- Author:
- David Sugar dyfet.nosp@m.@gnu.nosp@m.telep.nosp@m.hony.nosp@m..org
Definition at line 109 of file stream.h.
Constructor & Destructor Documentation
| ucommon::tcpstream::tcpstream |
( |
tcpstream & |
copy | ) |
|
Copy constructor...
- Parameters:
-
| ucommon::tcpstream::tcpstream |
( |
TCPServer * |
server, |
|
|
unsigned |
segsize = 536, |
|
|
timeout_t |
timeout = 0 |
|
) |
| |
Create a stream from an existing tcp listener.
- Parameters:
-
| server | to accept connection from. |
| segsize | for tcp segments and buffering. |
| timeout | for socket i/o operations. |
| ucommon::tcpstream::tcpstream |
( |
int |
family = PF_INET, |
|
|
timeout_t |
timeout = 0 |
|
) |
| |
Create an unconnected tcp stream object that is idle until opened.
- Parameters:
-
| family | of protocol to create. |
| timeout | for socket i/o operations. |
A convenience constructor that creates a connected tcp stream directly from an address.
The socket is constructed to match the type of the the address family in the socket address that is passed.
- Parameters:
-
| address | of service to connect to. |
| segsize | for tcp segments and buffering. |
| timeout | for socket i/o operations. |
Member Function Documentation
| int ucommon::tcpstream::_getch |
( |
void |
| ) |
|
|
protectedvirtual |
This streambuf method is used to load the input buffer through the established tcp socket connection.
- Returns:
- char from get buffer, EOF if not connected.
Implements ucommon::CharacterProtocol.
| int ucommon::tcpstream::_putch |
( |
int |
ch | ) |
|
|
protectedvirtual |
This streambuf method is used to write the output buffer through the established tcp connection.
- Parameters:
-
- Returns:
- char pushed through.
Implements ucommon::CharacterProtocol.
| void ucommon::tcpstream::close |
( |
void |
| ) |
|
Close an active stream connection.
This does not release the socket but is a disconnect.
Reimplemented in ucommon::sstream.
| void ucommon::tcpstream::open |
( |
Socket::address & |
address, |
|
|
unsigned |
segment = 536 |
|
) |
| |
Open a stream connection to a tcp service.
- Parameters:
-
| address | of service to access. |
| segment | buffering size to use. |
| void ucommon::tcpstream::open |
( |
char * |
host, |
|
|
char * |
service, |
|
|
unsigned |
segment = 536 |
|
) |
| |
Open a stream connectoion to a host and service.
- Parameters:
-
| host | to connect to. |
| service | to connect to by name or number as string. |
| segment | buffering size to use. |
| ucommon::tcpstream::operator bool |
( |
| ) |
|
|
inline |
| bool ucommon::tcpstream::operator! |
( |
| ) |
|
|
inline |
The documentation for this class was generated from the following file: