Sophie

Sophie

distrib > Mandriva > 8.2 > i586 > media > contrib > by-pkgid > 68d373e54fb21da3730c08bede406633 > files > 381

libCommonC++1.9_3-devel-1.9.4-2mdk.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>TCPStream class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">
<!-- Generated by Doxygen 1.2.5 on Thu Oct 4 15:33:02 2001 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
<hr><h1>TCPStream  Class Reference</h1><code>#include &lt;<a class="el" href="socket_h-source.html">socket.h</a>&gt;</code>
<p>
<p>Inheritance diagram for TCPStream:
<p><center><img src="class_tcpstream.gif" usemap="#TCPStream_map" border="0"></center>
<map name="TCPStream_map">
<area href="class_socket.html" alt="Socket" shape="rect" coords="0,0,89,24">
<area href="class_std__streambuf.html" alt="std::streambuf" shape="rect" coords="99,0,188,24">
<area href="class_std__iostream.html" alt="std::iostream" shape="rect" coords="198,0,287,24">
<area href="class_tcpsession.html" alt="TCPSession" shape="rect" coords="0,112,89,136">
<area href="class_tcpstream.html" alt="tcpstream" shape="rect" coords="99,112,188,136">
<area href="class_urlstream.html" alt="URLStream" shape="rect" coords="198,112,287,136">
</map>
<a href="class_tcpstream-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#a0">TCPStream</a> (<a class="el" href="class_tcpsocket.html">TCPSocket</a> &amp;server, int size=512, <a class="el" href="config_h.html#a17">bool</a> throwflag=true, <a class="el" href="thread_h.html#a1">timeout_t</a> <a class="el" href="class_tcpstream.html#n0">timeout</a>=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Create a TCP stream by accepting a connection from a bound TCP socket acting as a server.</em> <a href="#a0">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#a1">TCPStream</a> (const <a class="el" href="class_inethostaddress.html">InetHostAddress</a> &amp;host, <a class="el" href="socket_h.html#a2">tpport_t</a> port, int size=512, <a class="el" href="config_h.html#a17">bool</a> throwflag=true, <a class="el" href="thread_h.html#a1">timeout_t</a> to=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Create a TCP stream by connecting to a TCP socket (on a remote machine).</em> <a href="#a1">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#a2">setTimeout</a> (<a class="el" href="thread_h.html#a1">timeout_t</a> to)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Set the I/O operation timeout for socket I/O operations.</em> <a href="#a2">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#a3">TCPStream</a> (const TCPStream &amp;source)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>A copy constructor creates a new stream buffer.</em> <a href="#a3">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#a4">~TCPStream</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Flush and empty all buffers, and then remove the allocated buffers.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#a5">sync</a> (void)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Flushes the stream input and output buffers, writes pending output.</em> <a href="#a5">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="config_h.html#a17">bool</a>&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#a6">isPending</a> (<a class="el" href="socket_h.html#a62">sockpend_t</a> pend, <a class="el" href="thread_h.html#a1">timeout_t</a> <a class="el" href="class_tcpstream.html#n0">timeout</a>=TIMEOUT_INF)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get the status of pending stream data.</em> <a href="#a6">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#a7">getBufferSize</a> (void) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Return the size of the current stream buffering used.</em> <a href="#a7">More...</a><em></em></font><br><br></td></tr>
<tr><td colspan=2><br><h2>Protected Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#b0">TCPStream</a> (<a class="el" href="config_h.html#a17">bool</a> throwflag=true)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The constructor required for "<a class="el" href="class_tcpstream.html">tcpstream</a>", a more C++ style version of the TCPStream class.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#b1">Allocate</a> (int size)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Used to allocate the buffer space needed for iostream operations.</em> <a href="#b1">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#b2">endStream</a> (void)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Used to terminate the buffer space and cleanup the socket connection.</em> <a href="#b2">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual int&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#b3">underflow</a> (void)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>This streambuf method is used to load the input buffer through the established tcp socket connection.</em> <a href="#b3">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#b4">uflow</a> (void)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>This streambuf method is used for doing unbuffered reads through the establish tcp socket connection when in interactive mode.</em> <a href="#b4">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#b5">overflow</a> (int ch)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>This streambuf method is used to write the output buffer through the established tcp connection.</em> <a href="#b5">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#b6">Connect</a> (const <a class="el" href="class_inethostaddress.html">InetHostAddress</a> &amp;host, <a class="el" href="socket_h.html#a2">tpport_t</a> port, int size)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Create a TCP stream by connecting to a TCP socket (on a remote machine).</em> <a href="#b6">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="class_std__iostream.html">std::iostream</a>*&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#b7">tcp</a> (void)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Used in derived classes to refer to the current object via it's iostream.</em> <a href="#b7">More...</a><em></em></font><br><br></td></tr>
<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="thread_h.html#a1">timeout_t</a>&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#n0">timeout</a></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#n1">bufsize</a></td></tr>
<tr><td nowrap align=right valign=top>char*&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#n2">gbuf</a></td></tr>
<tr><td nowrap align=right valign=top>char *&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#n3">pbuf</a></td></tr>
<tr><td colspan=2><br><h2>Friends</h2></td></tr>
<tr><td nowrap align=right valign=top>TCPStream&amp;&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#l0">crlf</a> (TCPStream &amp;)</td></tr>
<tr><td nowrap align=right valign=top>TCPStream&amp;&nbsp;</td><td valign=bottom><a class="el" href="class_tcpstream.html#l1">lfcr</a> (TCPStream &amp;)</td></tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="b0" doxytag="TCPStream::TCPStream"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
TCPStream::TCPStream (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="config_h.html#a17">bool</a> <em>throwflag</em> = true&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
The constructor required for "<a class="el" href="class_tcpstream.html">tcpstream</a>", a more C++ style version of the TCPStream class.
<p>
    </td>
  </tr>
</table>
<a name="a0" doxytag="TCPStream::TCPStream"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
TCPStream::TCPStream (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="class_tcpsocket.html">TCPSocket</a> &amp; <em>server</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>size</em> = 512, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="config_h.html#a17">bool</a> <em>throwflag</em> = true, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="thread_h.html#a1">timeout_t</a> <em>timeout</em> = 0&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Create a TCP stream by accepting a connection from a bound TCP socket acting as a server.
<p>
This performs an "accept" call.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>size</em>
&nbsp;</td><td>
 of streaming input and output buffers. </td></tr>
<tr><td valign=top><em>flag</em>
&nbsp;</td><td>
 to throw errors. </td></tr>
<tr><td valign=top><em>timeout</em>
&nbsp;</td><td>
 for all operations. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a1" doxytag="TCPStream::TCPStream"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
TCPStream::TCPStream (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="class_inethostaddress.html">InetHostAddress</a> &amp; <em>host</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="socket_h.html#a2">tpport_t</a> <em>port</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>size</em> = 512, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="config_h.html#a17">bool</a> <em>throwflag</em> = true, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="thread_h.html#a1">timeout_t</a> <em>to</em> = 0&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Create a TCP stream by connecting to a TCP socket (on a remote machine).
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>host</em>
&nbsp;</td><td>
 address of remote TCP server. </td></tr>
<tr><td valign=top><em>port</em>
&nbsp;</td><td>
 number to connect. </td></tr>
<tr><td valign=top><em>size</em>
&nbsp;</td><td>
 of streaming input and output buffers. </td></tr>
<tr><td valign=top><em>flag</em>
&nbsp;</td><td>
 to throw errors. </td></tr>
<tr><td valign=top><em>timeout</em>
&nbsp;</td><td>
 for all operations. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a3" doxytag="TCPStream::TCPStream"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
TCPStream::TCPStream (
          </b></td>
          <td valign="bottom"><b>
const TCPStream &amp; <em>source</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
A copy constructor creates a new stream buffer.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>source</em>
&nbsp;</td><td>
 of copy. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a4" doxytag="TCPStream::~TCPStream"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
TCPStream::~TCPStream (
          </b></td>
          <td valign="bottom"><b>
)<code> [inline, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Flush and empty all buffers, and then remove the allocated buffers.
<p>
    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="b1" doxytag="TCPStream::Allocate"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void TCPStream::Allocate (
          </b></td>
          <td valign="bottom"><b>
int <em>size</em>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Used to allocate the buffer space needed for iostream operations.
<p>
This function is called by the constructor.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>size</em>
&nbsp;</td><td>
 of stream buffers from constructor. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="b6" doxytag="TCPStream::Connect"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void TCPStream::Connect (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="class_inethostaddress.html">InetHostAddress</a> &amp; <em>host</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="socket_h.html#a2">tpport_t</a> <em>port</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>size</em>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Create a TCP stream by connecting to a TCP socket (on a remote machine).
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>host</em>
&nbsp;</td><td>
 address of remote TCP server. </td></tr>
<tr><td valign=top><em>port</em>
&nbsp;</td><td>
 number to connect. </td></tr>
<tr><td valign=top><em>size</em>
&nbsp;</td><td>
 of streaming input and output buffers. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="b2" doxytag="TCPStream::endStream"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void TCPStream::endStream (
          </b></td>
          <td valign="bottom"><b>
void&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Used to terminate the buffer space and cleanup the socket connection.
<p>
This fucntion is called by the destructor.     </td>
  </tr>
</table>
<a name="a7" doxytag="TCPStream::getBufferSize"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
int TCPStream::getBufferSize (
          </b></td>
          <td valign="bottom"><b>
void&nbsp;) const<code> [inline]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Return the size of the current stream buffering used.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
 size of stream buffers. </dl>    </td>
  </tr>
</table>
<a name="a6" doxytag="TCPStream::isPending"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="config_h.html#a17">bool</a> TCPStream::isPending (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="socket_h.html#a62">sockpend_t</a> <em>pend</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="thread_h.html#a1">timeout_t</a> <em>timeout</em> = TIMEOUT_INF&nbsp;)<code> [virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the status of pending stream data.
<p>
This can be used to examine if input or output is waiting, or if an error or disconnect has occured on the stream. If a read buffer contains data then input is ready and if write buffer contains data it is first flushed and then checked. 
<p>
Reimplemented from <a class="el" href="class_socket.html#a16">Socket</a>.    </td>
  </tr>
</table>
<a name="b5" doxytag="TCPStream::overflow"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
int TCPStream::overflow (
          </b></td>
          <td valign="bottom"><b>
int <em>ch</em>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This streambuf method is used to write the output buffer through the established tcp connection.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>char</em>
&nbsp;</td><td>
 to push through. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
 char pushed through. </dl>    </td>
  </tr>
</table>
<a name="a2" doxytag="TCPStream::setTimeout"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void TCPStream::setTimeout (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="thread_h.html#a1">timeout_t</a> <em>to</em>&nbsp;)<code> [inline]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the I/O operation timeout for socket I/O operations.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>timeout</em>
&nbsp;</td><td>
 to set. </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="class_urlstream.html#a16">URLStream</a>.    </td>
  </tr>
</table>
<a name="a5" doxytag="TCPStream::sync"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
int TCPStream::sync (
          </b></td>
          <td valign="bottom"><b>
void&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Flushes the stream input and output buffers, writes pending output.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
 0 on success. </dl>    </td>
  </tr>
</table>
<a name="b7" doxytag="TCPStream::tcp"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="class_std__iostream.html">std::iostream</a> * TCPStream::tcp (
          </b></td>
          <td valign="bottom"><b>
void&nbsp;)<code> [inline, protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Used in derived classes to refer to the current object via it's iostream.
<p>
For example, to send a set of characters in a derived method, one might use *<a class="el" href="class_tcpstream.html#b7">tcp</a>() &lt;&lt; "test".
<p>
<dl compact><dt>
<b>Returns: </b><dd>
 stream pointer of this object. </dl>    </td>
  </tr>
</table>
<a name="b4" doxytag="TCPStream::uflow"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
int TCPStream::uflow (
          </b></td>
          <td valign="bottom"><b>
void&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This streambuf method is used for doing unbuffered reads through the establish tcp socket connection when in interactive mode.
<p>
Also this method will handle proper use of buffers if not in interative mode.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
 char from tcp socket connection, EOF if not connected. </dl>    </td>
  </tr>
</table>
<a name="b3" doxytag="TCPStream::underflow"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
int TCPStream::underflow (
          </b></td>
          <td valign="bottom"><b>
void&nbsp;)<code> [protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This streambuf method is used to load the input buffer through the established tcp socket connection.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
 char from get buffer, EOF if not connected. </dl>
<p>
Reimplemented in <a class="el" href="class_urlstream.html#b1">URLStream</a>.    </td>
  </tr>
</table>
<hr><h2>Friends And Related Function Documentation</h2>
<a name="l0" doxytag="TCPStream::crlf"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
TCPStream&amp; crlf (
          </b></td>
          <td valign="bottom"><b>
TCPStream &amp;&nbsp;)<code> [friend]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="l1" doxytag="TCPStream::lfcr"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
TCPStream&amp; lfcr (
          </b></td>
          <td valign="bottom"><b>
TCPStream &amp;&nbsp;)<code> [friend]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Member Data Documentation</h2>
<a name="n1" doxytag="TCPStream::bufsize"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
int TCPStream::bufsize<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="n2" doxytag="TCPStream::gbuf"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
char * TCPStream::gbuf<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="n3" doxytag="TCPStream::pbuf"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
char * TCPStream::pbuf<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="n0" doxytag="TCPStream::timeout"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="thread_h.html#a1">timeout_t</a> TCPStream::timeout<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="socket_h-source.html">socket.h</a></ul>
<hr><address><small>Generated at Thu Oct 4 15:33:02 2001 for CommonC++ by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.gif" alt="doxygen" align="middle" border=0 
width=110 height=53></a>1.2.5 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>,
 &copy;&nbsp;1997-2001</small></address>
</body>
</html>