Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 1f9eb832ba1e4b88d9a5c2b384813bb4 > files > 1878

kdelibs3-apidocs-3.5.10-31.fc15.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en_US" xml:lang="en_US">

<head>
  <title>kdecore: KNetwork::KBufferedSocket Class Reference (kdecore)</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <meta http-equiv="Content-Style-Type" content="text/css" />

  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />

  <meta name="trademark" content="KDE e.V." />
  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
  <meta name="MSSmartTagsPreventParsing" content="true" />
  <meta name="robots" content="all" />

  <link rel="shortcut icon" href="../../favicon.ico" />

<link rel="stylesheet" media="screen" type="text/css" title="APIDOX" href="doxygen.css" />



</head>

<body>

<div id="nav_header_top" align="right">
  <a href="#content" class="doNotDisplay" accesskey="2">Skip to main content ::</a>

  <a href="../.."><img id="nav_header_logo" alt="Home" align="left" src="../../kde_gear_64.png" border="0" /></a>
  <span class="doNotDisplay">::</span>

  <div id="nav_header_title" align="left">KDE API Reference</div>


</div>

<div id="nav_header_bottom" align="right">
  <span class="doNotDisplay">:: <a href="#navigation" accesskey="5">Skip to Link Menu</a><br/></span>
  <div id="nav_header_bottom_right" style="text-align: left;">
/ <a href="../..">API Reference</a>
 / <a href=".">kdecore</a>
  </div>
</div>


<table id="main" border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
      <td valign="top" class="menuheader" height="0"></td>

  <td id="contentcolumn" valign="top" rowspan="2" >
    <div id="content" style="padding-top: 0px;"><div style="width:100%; margin: 0px; padding: 0px;">
    <a name="content"></a>


<!-- Generated by Doxygen 1.7.4 -->
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespaceKNetwork.html">KNetwork</a>      </li>
      <li class="navelem"><a class="el" href="classKNetwork_1_1KBufferedSocket.html">KBufferedSocket</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#signals">Signals</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-slots">Protected Slots</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">KNetwork::KBufferedSocket Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="KNetwork::KBufferedSocket" --><!-- doxytag: inherits="KNetwork::KStreamSocket" -->
<p>Buffered stream sockets.  
 <a href="classKNetwork_1_1KBufferedSocket.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="kbufferedsocket_8h_source.html">kbufferedsocket.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for KNetwork::KBufferedSocket:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classKNetwork_1_1KBufferedSocket.png" usemap="#KNetwork::KBufferedSocket_map" alt=""/>
  <map id="KNetwork::KBufferedSocket_map" name="KNetwork::KBufferedSocket_map">
<area href="classKNetwork_1_1KStreamSocket.html" title="Simple stream socket." alt="KNetwork::KStreamSocket" shape="rect" coords="96,168,278,192"/>
<area href="classKNetwork_1_1KClientSocketBase.html" title="Abstract client socket class." alt="KNetwork::KClientSocketBase" shape="rect" coords="96,112,278,136"/>
<area href="qobject.html" alt="QObject" shape="rect" coords="0,56,182,80"/>
<area href="classKNetwork_1_1KActiveSocketBase.html" title="Abstract class for active sockets." alt="KNetwork::KActiveSocketBase" shape="rect" coords="192,56,374,80"/>
<area href="qiodevice.html" alt="QIODevice" shape="rect" coords="96,0,278,24"/>
<area href="classKNetwork_1_1KSocketBase.html" title="Basic socket functionality." alt="KNetwork::KSocketBase" shape="rect" coords="288,0,470,24"/>
</map>
 </div></div>

<p><a href="classKNetwork_1_1KBufferedSocket-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="signals"></a>
Signals</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#af3c75d4ed7a273db8ec6a0596a202b43">bytesWritten</a> (int bytes)</td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#aafdcc1069fd7915cf583c660ba6c8b0d">KBufferedSocket</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;node=QString::null, const <a class="elRef" href="qstring.html">QString</a> &amp;service=QString::null, <a class="elRef" href="qobject.html">QObject</a> *<a class="elRef" href="qobject.html#parent">parent</a>=0L, const char *name=0L)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a61439d6491503d0b416579d6698a0583">~KBufferedSocket</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a19593a26a264ba67eb5068f9b4e8a6b3">setSocketDevice</a> (<a class="el" href="classKNetwork_1_1KSocketDevice.html">KSocketDevice</a> *device)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#ab7758ea7e939882ea5d83278bbee3bc4">close</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#adf11270247355aa1aa288f79d69cdc67">bytesAvailable</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a2f74aff6c39b66bcfb155d6f291d57cc">waitForMore</a> (int msecs, bool *timeout=0L)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#ae9d7b026ebb141c72540ab90258b8ff4">readBlock</a> (char *data, Q_ULONG maxlen)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#ab2fe6d7d35ce533d7b74710d7e142dee">readBlock</a> (char *data, Q_ULONG maxlen, <a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> &amp;from)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a78a2d29681fbc03b4a230fe0659d5daf">peekBlock</a> (char *data, Q_ULONG maxlen)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a5f864568db0f9b534e2b9547f47de598">peekBlock</a> (char *data, Q_ULONG maxlen, <a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> &amp;from)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a2113810ad2ca4a2d1092f11a2125f2a1">writeBlock</a> (const char *data, Q_ULONG len)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a8f56d40f0cc82b7eafb3280ea75d1e8a">writeBlock</a> (const char *data, Q_ULONG len, const <a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> &amp;to)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a44f8a0383597b63b3fb34c54a4db5a83">enableRead</a> (bool enable)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#aa0764e92735b4e7de286aa74bd5c0a25">enableWrite</a> (bool enable)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a76593ba9478cb763e8a32278bfbaaad2">setInputBuffering</a> (bool enable)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKIOBufferBase.html">KIOBufferBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a4803502d6b321c744b1cefcfda9bc9d1">inputBuffer</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#ad76af541b4b5e81761d046953599b0fb">setOutputBuffering</a> (bool enable)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKIOBufferBase.html">KIOBufferBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a26a26ae4055512a849612374c6897ed8">outputBuffer</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual Q_ULONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a5d1d37e1fef1286dc847a060dd062d58">bytesToWrite</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a92d4dae49757e88d4491483265b3fc1e">closeNow</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a0a7228ee854aa3a91aa80947a5e39879">canReadLine</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qcstring.html">QCString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#adcc34b2d57f554782dc4db13a5fd77da">readLine</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#ad16af2e6dda5b870a770b9a3d3e34fa5">waitForConnect</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#ad82f18adb294dc52b8f518c387cfc9bd">reset</a> ()</td></tr>
<tr><td colspan="2"><h2><a name="pro-slots"></a>
Protected Slots</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a2780a349bba509557f417eeeee2a84b3">slotReadActivity</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a2a339db8f6efbdaaafe01fb20c3c62e6">slotWriteActivity</a> ()</td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#ad558024f694a7eae2227edc684c28539">setSocketOptions</a> (int opts)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a3eee01e3f8948699843aec60cbcc4f06">stateChanging</a> (<a class="el" href="classKNetwork_1_1KClientSocketBase.html#a25cbb03492f7267142a98c091cda2e53">SocketState</a> newState)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Buffered stream sockets. </p>
<p>This class allows the user to create and operate buffered stream sockets such as those used in most Internet connections. This class is also the one that resembles the most to the old <a class="elRef" href="qsocket.html">QSocket</a> implementation.</p>
<p>Objects of this type operate only in non-blocking mode. A call to setBlocking(true) will result in an error.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>Buffered sockets only make sense if you're using them from the main (event-loop) thread. This is actually a restriction imposed by Qt's <a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a>. If you want to use a socket in an auxiliary thread, please use <a class="el" href="classKNetwork_1_1KStreamSocket.html" title="Simple stream socket.">KStreamSocket</a>.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KStreamSocket.html" title="Simple stream socket.">KNetwork::KStreamSocket</a>, <a class="el" href="classKNetwork_1_1KServerSocket.html" title="A server socket for accepting connections.">KNetwork::KServerSocket</a> </dd></dl>
<dl class="author"><dt><b>Author:</b></dt><dd>Thiago Macieira &lt;<a href="mailto:thiago@kde.org">thiago@kde.org</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="kbufferedsocket_8h_source.html#l00058">58</a> of file <a class="el" href="kbufferedsocket_8h_source.html">kbufferedsocket.h</a>.</p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aafdcc1069fd7915cf583c660ba6c8b0d"></a><!-- doxytag: member="KNetwork::KBufferedSocket::KBufferedSocket" ref="aafdcc1069fd7915cf583c660ba6c8b0d" args="(const QString &amp;node=QString::null, const QString &amp;service=QString::null, QObject *parent=0L, const char *name=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KBufferedSocket::KBufferedSocket </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>node</em> = <code>QString::null</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>service</em> = <code>QString::null</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" href="qobject.html">QObject</a> *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>0L</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em> = <code>0L</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">node</td><td>destination host </td></tr>
    <tr><td class="paramname">service</td><td>destination service to connect to </td></tr>
    <tr><td class="paramname">parent</td><td>the parent object for this object </td></tr>
    <tr><td class="paramname">name</td><td>the internal name for this object </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00050">50</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a61439d6491503d0b416579d6698a0583"></a><!-- doxytag: member="KNetwork::KBufferedSocket::~KBufferedSocket" ref="a61439d6491503d0b416579d6698a0583" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KBufferedSocket::~KBufferedSocket </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00059">59</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="adf11270247355aa1aa288f79d69cdc67"></a><!-- doxytag: member="KNetwork::KBufferedSocket::bytesAvailable" ref="adf11270247355aa1aa288f79d69cdc67" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KBufferedSocket::bytesAvailable </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Make use of the buffers. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a3838a3d1e30df942f09d385c512dc911">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00096">96</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5d1d37e1fef1286dc847a060dd062d58"></a><!-- doxytag: member="KNetwork::KBufferedSocket::bytesToWrite" ref="a5d1d37e1fef1286dc847a060dd062d58" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_ULONG KBufferedSocket::bytesToWrite </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the length of the output buffer. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00282">282</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="af3c75d4ed7a273db8ec6a0596a202b43"></a><!-- doxytag: member="KNetwork::KBufferedSocket::bytesWritten" ref="af3c75d4ed7a273db8ec6a0596a202b43" args="(int bytes)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KNetwork::KBufferedSocket::bytesWritten </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>bytes</em></td><td>)</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This signal is emitted whenever data is written. </p>

</div>
</div>
<a class="anchor" id="a0a7228ee854aa3a91aa80947a5e39879"></a><!-- doxytag: member="KNetwork::KBufferedSocket::canReadLine" ref="a0a7228ee854aa3a91aa80947a5e39879" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KBufferedSocket::canReadLine </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if a line can be read with <a class="el" href="classKNetwork_1_1KBufferedSocket.html#adcc34b2d57f554782dc4db13a5fd77da">readLine</a>. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00297">297</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ab7758ea7e939882ea5d83278bbee3bc4"></a><!-- doxytag: member="KNetwork::KBufferedSocket::close" ref="ab7758ea7e939882ea5d83278bbee3bc4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::close </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Closes the socket for new data, but allow data that had been buffered for output with <a class="el" href="classKNetwork_1_1KBufferedSocket.html#a2113810ad2ca4a2d1092f11a2125f2a1">writeBlock</a> to be still be written. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KBufferedSocket.html#a92d4dae49757e88d4491483265b3fc1e" title="Closes the socket and discards any output data that had been buffered with writeBlock but that had no...">closeNow</a> </dd></dl>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a6e80c6a063d5af3d2d6d6796b108113f">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00082">82</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a92d4dae49757e88d4491483265b3fc1e"></a><!-- doxytag: member="KNetwork::KBufferedSocket::closeNow" ref="a92d4dae49757e88d4491483265b3fc1e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::closeNow </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Closes the socket and discards any output data that had been buffered with <a class="el" href="classKNetwork_1_1KBufferedSocket.html#a2113810ad2ca4a2d1092f11a2125f2a1">writeBlock</a> but that had not yet been written. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KBufferedSocket.html#ab7758ea7e939882ea5d83278bbee3bc4" title="Closes the socket for new data, but allow data that had been buffered for output with writeBlock to b...">close</a> </dd></dl>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00290">290</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a44f8a0383597b63b3fb34c54a4db5a83"></a><!-- doxytag: member="KNetwork::KBufferedSocket::enableRead" ref="a44f8a0383597b63b3fb34c54a4db5a83" args="(bool enable)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::enableRead </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>enable</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Catch changes. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a40d5227f1bfa73da180f5fc1440c2366">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00197">197</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa0764e92735b4e7de286aa74bd5c0a25"></a><!-- doxytag: member="KNetwork::KBufferedSocket::enableWrite" ref="aa0764e92735b4e7de286aa74bd5c0a25" args="(bool enable)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::enableWrite </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>enable</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Catch changes. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a5f90b011b5cdfc9cd96fbe388157439f">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00214">214</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4803502d6b321c744b1cefcfda9bc9d1"></a><!-- doxytag: member="KNetwork::KBufferedSocket::inputBuffer" ref="a4803502d6b321c744b1cefcfda9bc9d1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKIOBufferBase.html">KIOBufferBase</a> * KBufferedSocket::inputBuffer </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieves the input buffer object. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00258">258</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a26a26ae4055512a849612374c6897ed8"></a><!-- doxytag: member="KNetwork::KBufferedSocket::outputBuffer" ref="a26a26ae4055512a849612374c6897ed8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKIOBufferBase.html">KIOBufferBase</a> * KBufferedSocket::outputBuffer </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieves the output buffer object. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00277">277</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a78a2d29681fbc03b4a230fe0659d5daf"></a><!-- doxytag: member="KNetwork::KBufferedSocket::peekBlock" ref="a78a2d29681fbc03b4a230fe0659d5daf" args="(char *data, Q_ULONG maxlen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KBufferedSocket::peekBlock </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Q_ULONG&#160;</td>
          <td class="paramname"><em>maxlen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Peeks data from the socket. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a66e8cdab3fe734c8ba5d478bd112cdad">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00138">138</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5f864568db0f9b534e2b9547f47de598"></a><!-- doxytag: member="KNetwork::KBufferedSocket::peekBlock" ref="a5f864568db0f9b534e2b9547f47de598" args="(char *data, Q_ULONG maxlen, KSocketAddress &amp;from)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KBufferedSocket::peekBlock </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Q_ULONG&#160;</td>
          <td class="paramname"><em>maxlen</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> &amp;&#160;</td>
          <td class="paramname"><em>from</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Peeks data from the socket. </p>
<p>The <code>from</code> parameter is always set to <a class="el" href="classKNetwork_1_1KClientSocketBase.html#ac2c0c3a244e2dcb83df8f2e955a0e602">peerAddress()</a> </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#aa2de5120a63ebf16d05b272f291c07c7">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00154">154</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae9d7b026ebb141c72540ab90258b8ff4"></a><!-- doxytag: member="KNetwork::KBufferedSocket::readBlock" ref="ae9d7b026ebb141c72540ab90258b8ff4" args="(char *data, Q_ULONG maxlen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KBufferedSocket::readBlock </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Q_ULONG&#160;</td>
          <td class="paramname"><em>maxlen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reads data from the socket. </p>
<p>Make use of buffers. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a12568a3fddea910248a1fee9e6fea5a8">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00116">116</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ab2fe6d7d35ce533d7b74710d7e142dee"></a><!-- doxytag: member="KNetwork::KBufferedSocket::readBlock" ref="ab2fe6d7d35ce533d7b74710d7e142dee" args="(char *data, Q_ULONG maxlen, KSocketAddress &amp;from)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KBufferedSocket::readBlock </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Q_ULONG&#160;</td>
          <td class="paramname"><em>maxlen</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> &amp;&#160;</td>
          <td class="paramname"><em>from</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Reads data from a socket. </p>
<p>The <code>from</code> parameter is always set to <a class="el" href="classKNetwork_1_1KClientSocketBase.html#ac2c0c3a244e2dcb83df8f2e955a0e602">peerAddress()</a> </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#ae50e89178bf31fc3bf6698455c8cecef">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00132">132</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="adcc34b2d57f554782dc4db13a5fd77da"></a><!-- doxytag: member="KNetwork::KBufferedSocket::readLine" ref="adcc34b2d57f554782dc4db13a5fd77da" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qcstring.html">QCString</a> KBufferedSocket::readLine </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reads a line of data from the socket buffers. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00305">305</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ad82f18adb294dc52b8f518c387cfc9bd"></a><!-- doxytag: member="KNetwork::KBufferedSocket::reset" ref="ad82f18adb294dc52b8f518c387cfc9bd" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KNetwork::KBufferedSocket::reset </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000081">Deprecated:</a></b></dt><dd>Closes the socket.</dd></dl>
<p>This function is provided to ease porting from <a class="el" href="classKExtendedSocket.html" title="The extended socket class.">KExtendedSocket</a>, which required a call to <a class="el" href="classKNetwork_1_1KBufferedSocket.html#ad82f18adb294dc52b8f518c387cfc9bd">reset()</a> in order to be able to connect again using the same device. This is not necessary in <a class="el" href="classKNetwork_1_1KBufferedSocket.html" title="Buffered stream sockets.">KBufferedSocket</a> any more. </p>

<p>Reimplemented from <a class="elRef" href="qiodevice.html#reset">QIODevice</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8h_source.html#l00247">247</a> of file <a class="el" href="kbufferedsocket_8h_source.html">kbufferedsocket.h</a>.</p>

</div>
</div>
<a class="anchor" id="a76593ba9478cb763e8a32278bfbaaad2"></a><!-- doxytag: member="KNetwork::KBufferedSocket::setInputBuffering" ref="a76593ba9478cb763e8a32278bfbaaad2" args="(bool enable)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::setInputBuffering </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>enable</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the use of input buffering. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00244">244</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ad76af541b4b5e81761d046953599b0fb"></a><!-- doxytag: member="KNetwork::KBufferedSocket::setOutputBuffering" ref="ad76af541b4b5e81761d046953599b0fb" args="(bool enable)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::setOutputBuffering </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>enable</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the use of output buffering. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00263">263</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a19593a26a264ba67eb5068f9b4e8a6b3"></a><!-- doxytag: member="KNetwork::KBufferedSocket::setSocketDevice" ref="a19593a26a264ba67eb5068f9b4e8a6b3" args="(KSocketDevice *device)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::setSocketDevice </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKNetwork_1_1KSocketDevice.html">KSocketDevice</a> *&#160;</td>
          <td class="paramname"><em>device</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Be sure to catch new devices. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KSocketBase.html#a6c9bbf5f9d40f30448b27fda328f0432">KNetwork::KSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00067">67</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ad558024f694a7eae2227edc684c28539"></a><!-- doxytag: member="KNetwork::KBufferedSocket::setSocketOptions" ref="ad558024f694a7eae2227edc684c28539" args="(int opts)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KBufferedSocket::setSocketOptions </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>opts</em></td><td>)</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Buffered sockets can only operate in non-blocking mode. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#ae669feb66f3cda67615a1ead4cc08426">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00073">73</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a2780a349bba509557f417eeeee2a84b3"></a><!-- doxytag: member="KNetwork::KBufferedSocket::slotReadActivity" ref="a2780a349bba509557f417eeeee2a84b3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::slotReadActivity </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, virtual, slot]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Slot called when there's read activity. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a50214a8b353c9c7303999e4824ddcc5a">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00320">320</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a2a339db8f6efbdaaafe01fb20c3c62e6"></a><!-- doxytag: member="KNetwork::KBufferedSocket::slotWriteActivity" ref="a2a339db8f6efbdaaafe01fb20c3c62e6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::slotWriteActivity </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, virtual, slot]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Slot called when there's write activity. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#ace11d590c5af59d4fe1b4a01cb3cef2c">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00367">367</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a3eee01e3f8948699843aec60cbcc4f06"></a><!-- doxytag: member="KNetwork::KBufferedSocket::stateChanging" ref="a3eee01e3f8948699843aec60cbcc4f06" args="(SocketState newState)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::stateChanging </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKNetwork_1_1KClientSocketBase.html#a25cbb03492f7267142a98c091cda2e53">SocketState</a>&#160;</td>
          <td class="paramname"><em>newState</em></td><td>)</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Catch connection to clear the buffers. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a29a6210d3ce6f62532bf5098133863cc">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00226">226</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ad16af2e6dda5b870a770b9a3d3e34fa5"></a><!-- doxytag: member="KNetwork::KBufferedSocket::waitForConnect" ref="ad16af2e6dda5b870a770b9a3d3e34fa5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KBufferedSocket::waitForConnect </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Blocks until the connection is either established, or completely failed. </p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00310">310</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a2f74aff6c39b66bcfb155d6f291d57cc"></a><!-- doxytag: member="KNetwork::KBufferedSocket::waitForMore" ref="a2f74aff6c39b66bcfb155d6f291d57cc" args="(int msecs, bool *timeout=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KBufferedSocket::waitForMore </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>msecs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>timeout</em> = <code>0L</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Make use of buffers. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#ad59e1f656976f6df4d380b64d15a9659">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00104">104</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a8f56d40f0cc82b7eafb3280ea75d1e8a"></a><!-- doxytag: member="KNetwork::KBufferedSocket::writeBlock" ref="a8f56d40f0cc82b7eafb3280ea75d1e8a" args="(const char *data, Q_ULONG len, const KSocketAddress &amp;to)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KBufferedSocket::writeBlock </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Q_ULONG&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> &amp;&#160;</td>
          <td class="paramname"><em>to</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Writes data to the socket. </p>
<p>The <code>to</code> parameter is discarded. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#a7104aebfec8db817ce58520b200de6c7">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00190">190</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a2113810ad2ca4a2d1092f11a2125f2a1"></a><!-- doxytag: member="KNetwork::KBufferedSocket::writeBlock" ref="a2113810ad2ca4a2d1092f11a2125f2a1" args="(const char *data, Q_ULONG len)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KBufferedSocket::writeBlock </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Q_ULONG&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Writes data to the socket. </p>

<p>Reimplemented from <a class="el" href="classKNetwork_1_1KClientSocketBase.html#ac54af94a0c5b9e8e3fffd4b76cbe2dbd">KNetwork::KClientSocketBase</a>.</p>

<p>Definition at line <a class="el" href="kbufferedsocket_8cpp_source.html#l00160">160</a> of file <a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="kbufferedsocket_8h_source.html">kbufferedsocket.h</a></li>
<li><a class="el" href="kbufferedsocket_8cpp_source.html">kbufferedsocket.cpp</a></li>
</ul>
</div>
    </div></div>


      </td>
  </tr>
  <tr>
    <td valign="top" id="leftmenu" width="25%">
      <a name="navigation"></a>
      <div class="menu_box"><h2>kdecore</h2>
<div class="nav_list">
<ul><li><a href="index.html">Main Page</a></li><li><a href="modules.html">Modules</a></li><li><a href="namespaces.html">Namespace List</a></li><li><a href="hierarchy.html">Class Hierarchy</a></li><li><a href="classes.html">Alphabetical List</a></li><li><a href="annotated.html">Class List</a></li><li><a href="files.html">File List</a></li><li><a href="namespacemembers.html">Namespace Members</a></li><li><a href="functions.html">Class Members</a></li><li><a href="pages.html">Related Pages</a></li></ul>
<!--
<h2>Class Picker</h2>
<div style="text-align: center;">
<form name="guideform">
<select name="guidelinks" style="width:100%;" onChange="window.location=document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value">
<option value="annotated.html">-- Choose --</option>
  <option value="classKAboutData.html">kaboutdata</option>,  <option value="classKAboutPerson.html">kaboutperson</option>,  <option value="classKAboutTranslator.html">kabouttranslator</option>,  <option value="classKAccel.html">kaccel</option>,  <option value="classKAcceleratorManager.html">kacceleratormanager</option>,  <option value="classKAccelManagerAlgorithm.html">kaccelmanageralgorithm</option>,  <option value="classKAccelShortcutList.html">kaccelshortcutlist</option>,  <option value="classKAccelString.html">kaccelstring</option>,  <option value="classKAddressInfo.html">kaddressinfo</option>,  <option value="classKAppDCOPInterface.html">kappdcopinterface</option>,  <option value="classKApplication.html">kapplication</option>,  <option value="classKAsyncIO.html">kasyncio</option>,  <option value="classKAudioPlayer.html">kaudioplayer</option>,  <option value="classKBufferedIO.html">kbufferedio</option>,  <option value="classKCalendarSystem.html">kcalendarsystem</option>,  <option value="classKCalendarSystemFactory.html">kcalendarsystemfactory</option>,  <option value="classKCalendarSystemJalali.html">kcalendarsystemjalali</option>,  <option value="classKCatalogue.html">kcatalogue</option>,  <option value="classKCharMacroExpander.html">kcharmacroexpander</option>,  <option value="classKCharsets.html">kcharsets</option>,  <option value="classKClipboardSynchronizer.html">kclipboardsynchronizer</option>,  <option value="classKCmdLineArgs.html">kcmdlineargs</option>,  <option value="classKCodecs.html">kcodecs</option>,  <option value="classKCompletion.html">kcompletion</option>,  <option value="classKCompletionBase.html">kcompletionbase</option>,  <option value="classKCompletionMatches.html">kcompletionmatches</option>,  <option value="classKCompTreeNode.html">kcomptreenode</option>,  <option value="classKConfig.html">kconfig</option>,  <option value="classKConfigBackEnd.html">kconfigbackend</option>,  <option value="classKConfigBase.html">kconfigbase</option>,  <option value="classKConfigDialogManager.html">kconfigdialogmanager</option>,  <option value="classKConfigGroup.html">kconfiggroup</option>,  <option value="classKConfigGroupSaver.html">kconfiggroupsaver</option>,  <option value="classKConfigINIBackEnd.html">kconfiginibackend</option>,  <option value="classKConfigSkeleton.html">kconfigskeleton</option>,  <option value="classKConfigSkeleton_1_1ItemBool.html">kconfigskeleton::itembool</option>,  <option value="classKConfigSkeleton_1_1ItemColor.html">kconfigskeleton::itemcolor</option>,  <option value="classKConfigSkeleton_1_1ItemDateTime.html">kconfigskeleton::itemdatetime</option>,  <option value="classKConfigSkeleton_1_1ItemDouble.html">kconfigskeleton::itemdouble</option>,  <option value="classKConfigSkeleton_1_1ItemEnum.html">kconfigskeleton::itemenum</option>,  <option value="classKConfigSkeleton_1_1ItemFont.html">kconfigskeleton::itemfont</option>,  <option value="classKConfigSkeleton_1_1ItemInt.html">kconfigskeleton::itemint</option>,  <option value="classKConfigSkeleton_1_1ItemInt64.html">kconfigskeleton::itemint64</option>,  <option value="classKConfigSkeleton_1_1ItemIntList.html">kconfigskeleton::itemintlist</option>,  <option value="classKConfigSkeleton_1_1ItemLong.html">kconfigskeleton::itemlong</option>,  <option value="classKConfigSkeleton_1_1ItemPassword.html">kconfigskeleton::itempassword</option>,  <option value="classKConfigSkeleton_1_1ItemPath.html">kconfigskeleton::itempath</option>,  <option value="classKConfigSkeleton_1_1ItemPathList.html">kconfigskeleton::itempathlist</option>,  <option value="classKConfigSkeleton_1_1ItemPoint.html">kconfigskeleton::itempoint</option>,  <option value="classKConfigSkeleton_1_1ItemProperty.html">kconfigskeleton::itemproperty</option>,  <option value="classKConfigSkeleton_1_1ItemRect.html">kconfigskeleton::itemrect</option>,  <option value="classKConfigSkeleton_1_1ItemSize.html">kconfigskeleton::itemsize</option>,  <option value="classKConfigSkeleton_1_1ItemString.html">kconfigskeleton::itemstring</option>,  <option value="classKConfigSkeleton_1_1ItemStringList.html">kconfigskeleton::itemstringlist</option>,  <option value="classKConfigSkeleton_1_1ItemUInt.html">kconfigskeleton::itemuint</option>,  <option value="classKConfigSkeleton_1_1ItemUInt64.html">kconfigskeleton::itemuint64</option>,  <option value="classKConfigSkeleton_1_1ItemULong.html">kconfigskeleton::itemulong</option>,  <option value="classKConfigSkeletonItem.html">kconfigskeletonitem</option>,  <option value="classKCrash.html">kcrash</option>,  <option value="classKDCOPPropertyProxy.html">kdcoppropertyproxy</option>,  <option value="classKDebugDCOPIface.html">kdebugdcopiface</option>,  <option value="classKDesktopFile.html">kdesktopfile</option>,  <option value="classKExtendedSocket.html">kextendedsocket</option>,  <option value="classKGenericFactory.html">kgenericfactory</option>,  <option value="classKGenericFactory_3_01KTypeList_3_01Product_00_01ProductListTail_01_4_00_01KTypeList_3_01Pare1ed8d1e5a9847c99711cad3b12c7e96c.html">kgenericfactory< ktypelist< product, productlisttail >, ktypelist< pare1ed8d1e5a9847c99711cad3b12c7e96c</option>,  <option value="classKGenericFactory_3_01KTypeList_3_01Product_00_01ProductListTail_01_4_00_01KTypeList_3_01Paref6a00f76851e0daa2cb662bb8a41fc7f.html">kgenericfactory< ktypelist< product, productlisttail >, ktypelist< paref6a00f76851e0daa2cb662bb8a41fc7f</option>,  <option value="classKGenericFactory_3_01KTypeList_3_01Product_00_01ProductListTail_01_4_00_01QObject_01_4.html">kgenericfactory< ktypelist< product, productlisttail >, qobject ></option>,  <option value="classKGlobal.html">kglobal</option>,  <option value="classKGlobalAccel.html">kglobalaccel</option>,  <option value="classKGlobalSettings.html">kglobalsettings</option>,  <option value="classKIcon.html">kicon</option>,  <option value="classKIconEffect.html">kiconeffect</option>,  <option value="classKIconLoader.html">kiconloader</option>,  <option value="classKIconTheme.html">kicontheme</option>,  <option value="classKInetSocketAddress.html">kinetsocketaddress</option>,  <option value="classKInstance.html">kinstance</option>,  <option value="classKIOBufferBase.html">kiobufferbase</option>,  <option value="classKIPC.html">kipc</option>,  <option value="classKKey.html">kkey</option>,  <option value="classKKeyNative.html">kkeynative</option>,  <option value="classKKeySequence.html">kkeysequence</option>,  <option value="classKLibFactory.html">klibfactory</option>,  <option value="classKLibLoader.html">klibloader</option>,  <option value="classKLibrary.html">klibrary</option>,  <option value="classKLocale.html">klocale</option>,  <option value="classKLockFile.html">klockfile</option>,  <option value="classKMacroExpanderBase.html">kmacroexpanderbase</option>,  <option value="classKMD4.html">kmd4</option>,  <option value="classKMD5.html">kmd5</option>,  <option value="classKMimeSourceFactory.html">kmimesourcefactory</option>,  <option value="classKMountPoint.html">kmountpoint</option>,  <option value="classKMultipleDrag.html">kmultipledrag</option>,  <option value="classKNetwork_1_1KActiveSocketBase.html">knetwork::kactivesocketbase</option>,  <option value="classKNetwork_1_1KBufferedSocket.html">knetwork::kbufferedsocket</option>,  <option value="classKNetwork_1_1KClientSocketBase.html">knetwork::kclientsocketbase</option>,  <option value="classKNetwork_1_1KDatagramPacket.html">knetwork::kdatagrampacket</option>,  <option value="classKNetwork_1_1KDatagramSocket.html">knetwork::kdatagramsocket</option>,  <option value="classKNetwork_1_1KHttpProxySocketDevice.html">knetwork::khttpproxysocketdevice</option>,  <option value="classKNetwork_1_1KInetSocketAddress.html">knetwork::kinetsocketaddress</option>,  <option value="classKNetwork_1_1KIpAddress.html">knetwork::kipaddress</option>,  <option value="classKNetwork_1_1KMulticastSocket.html">knetwork::kmulticastsocket</option>,  <option value="classKNetwork_1_1KMulticastSocketImpl.html">knetwork::kmulticastsocketimpl</option>,  <option value="classKNetwork_1_1KNetworkInterface.html">knetwork::knetworkinterface</option>,  <option value="classKNetwork_1_1KPassiveSocketBase.html">knetwork::kpassivesocketbase</option>,  <option value="classKNetwork_1_1KResolver.html">knetwork::kresolver</option>,  <option value="classKNetwork_1_1KResolverEntry.html">knetwork::kresolverentry</option>,  <option value="classKNetwork_1_1KResolverResults.html">knetwork::kresolverresults</option>,  <option value="classKNetwork_1_1KResolverWorkerBase_1_1ResolverLocker.html">knetwork::kresolverworkerbase::resolverlocker</option>,  <option value="classKNetwork_1_1KReverseResolver.html">knetwork::kreverseresolver</option>,  <option value="classKNetwork_1_1KServerSocket.html">knetwork::kserversocket</option>,  <option value="classKNetwork_1_1KSocketAddress.html">knetwork::ksocketaddress</option>,  <option value="classKNetwork_1_1KSocketBase.html">knetwork::ksocketbase</option>,  <option value="classKNetwork_1_1KSocketDevice.html">knetwork::ksocketdevice</option>,  <option value="classKNetwork_1_1KSocketDeviceFactory.html">knetwork::ksocketdevicefactory</option>,  <option value="classKNetwork_1_1KSocksSocketDevice.html">knetwork::ksockssocketdevice</option>,  <option value="classKNetwork_1_1KStreamSocket.html">knetwork::kstreamsocket</option>,  <option value="classKNetwork_1_1KUnixSocketAddress.html">knetwork::kunixsocketaddress</option>,  <option value="classKNotifyClient_1_1Instance.html">knotifyclient::instance</option>,  <option value="classKPalette.html">kpalette</option>,  <option value="classKPixmapProvider.html">kpixmapprovider</option>,  <option value="classKPopupAccelManager.html">kpopupaccelmanager</option>,  <option value="classKProcess.html">kprocess</option>,  <option value="classKProcessController.html">kprocesscontroller</option>,  <option value="classKProcIO.html">kprocio</option>,  <option value="classKProtocolInfoFactory.html">kprotocolinfofactory</option>,  <option value="classKPty.html">kpty</option>,  <option value="classKRandomSequence.html">krandomsequence</option>,  <option value="classKRegExp.html">kregexp</option>,  <option value="classKRegExpPrivate.html">kregexpprivate</option>,  <option value="classKRFCDate.html">krfcdate</option>,  <option value="classKRootProp.html">krootprop</option>,  <option value="classKSaveFile.html">ksavefile</option>,  <option value="classKServerSocket.html">kserversocket</option>,  <option value="classKSessionManaged.html">ksessionmanaged</option>,  <option value="classKShared.html">kshared</option>,  <option value="classKSharedConfig.html">ksharedconfig</option>,  <option value="classKSharedPtr.html">ksharedptr</option>,  <option value="classKShellProcess.html">kshellprocess</option>,  <option value="classKShortcut.html">kshortcut</option>,  <option value="classKShortcutList.html">kshortcutlist</option>,  <option value="classKSimpleConfig.html">ksimpleconfig</option>,  <option value="classKSocket.html">ksocket</option>,  <option value="classKSocketAddress.html">ksocketaddress</option>,  <option value="classKSocks.html">ksocks</option>,  <option value="classKSortableItem.html">ksortableitem</option>,  <option value="classKSortableValueList.html">ksortablevaluelist</option>,  <option value="classKStandardDirs.html">kstandarddirs</option>,  <option value="classKStaticDeleter.html">kstaticdeleter</option>,  <option value="classKStaticDeleterBase.html">kstaticdeleterbase</option>,  <option value="classKStdAccel_1_1ShortcutList.html">kstdaccel::shortcutlist</option>,  <option value="classKStringHandler.html">kstringhandler</option>,  <option value="classKSycocaEntry.html">ksycocaentry</option>,  <option value="classKSycocaFactoryList.html">ksycocafactorylist</option>,  <option value="classKTempDir.html">ktempdir</option>,  <option value="classKTempFile.html">ktempfile</option>,  <option value="classKTimezone.html">ktimezone</option>,  <option value="classKTimezoneDetails.html">ktimezonedetails</option>,  <option value="classKTimezones.html">ktimezones</option>,  <option value="classKTimezoneSource.html">ktimezonesource</option>,  <option value="classKUniqueApplication.html">kuniqueapplication</option>,  <option value="classKUnixSocketAddress.html">kunixsocketaddress</option>,  <option value="classKURL.html">kurl</option>,  <option value="classKURL_1_1List.html">kurl::list</option>,  <option value="classKURLDrag.html">kurldrag</option>,  <option value="classKUser.html">kuser</option>,  <option value="classKUserGroup.html">kusergroup</option>,  <option value="classKVMAllocator.html">kvmallocator</option>,  <option value="classKWin.html">kwin</option>,  <option value="classKWin_1_1WindowInfo.html">kwin::windowinfo</option>,  <option value="classKWinModule.html">kwinmodule</option>,  <option value="classKWordMacroExpander.html">kwordmacroexpander</option>,  <option value="classKXErrorHandler.html">kxerrorhandler</option>,  <option value="classKZoneAllocator.html">kzoneallocator</option>,  <option value="classNET.html">net</option>,
</select>
</form>
</div>
-->
</div></div>
<div class="menu_box"><h2>API Dox</h2>
<div class="nav_list">
<ul>
<li><a href="../../arts/html/index.html">arts</a></li><li><a href="../../dcop/html/index.html">dcop</a></li><li><a href="../../dnssd/html/index.html">dnssd</a></li><li><a href="../../interfaces/html/index.html">interfaces</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../interfaces/kimproxy/interface/html/index.html">interface</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../interfaces/kimproxy/library/html/index.html">library</a></li><li>&nbsp;&nbsp;<a href="../../interfaces/kspeech/html/index.html">kspeech</a></li><li>&nbsp;&nbsp;<a href="../../interfaces/ktexteditor/html/index.html">ktexteditor</a></li><li><a href="../../kabc/html/index.html">kabc</a></li><li><a href="../../kate/html/index.html">kate</a></li><li><a href="../../kcmshell/html/index.html">kcmshell</a></li><li><a href="../../kdecore/html/index.html">kdecore</a></li><li><a href="../../kded/html/index.html">kded</a></li><li><a href="../../kdefx/html/index.html">kdefx</a></li><li><a href="../../kdeprint/html/index.html">kdeprint</a></li><li><a href="../../kdesu/html/index.html">kdesu</a></li><li><a href="../../kdeui/html/index.html">kdeui</a></li><li><a href="../../kdoctools/html/index.html">kdoctools</a></li><li><a href="../../khtml/html/index.html">khtml</a></li><li><a href="../../kimgio/html/index.html">kimgio</a></li><li><a href="../../kinit/html/index.html">kinit</a></li><li><a href="../../kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../kio/bookmarks/html/index.html">bookmarks</a></li><li>&nbsp;&nbsp;<a href="../../kio/httpfilter/html/index.html">httpfilter</a></li><li>&nbsp;&nbsp;<a href="../../kio/kfile/html/index.html">kfile</a></li><li>&nbsp;&nbsp;<a href="../../kio/kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../kio/kioexec/html/index.html">kioexec</a></li><li>&nbsp;&nbsp;<a href="../../kio/kpasswdserver/html/index.html">kpasswdserver</a></li><li>&nbsp;&nbsp;<a href="../../kio/kssl/html/index.html">kssl</a></li><li><a href="../../kioslave/html/index.html">kioslave</a></li><li>&nbsp;&nbsp;<a href="../../kioslave/http/html/index.html">http</a></li><li><a href="../../kjs/html/index.html">kjs</a></li><li><a href="../../kmdi/html/index.html">kmdi</a></li><li>&nbsp;&nbsp;<a href="../../kmdi/kmdi/html/index.html">kmdi</a></li><li><a href="../../knewstuff/html/index.html">knewstuff</a></li><li><a href="../../kparts/html/index.html">kparts</a></li><li><a href="../../kresources/html/index.html">kresources</a></li><li><a href="../../kspell2/html/index.html">kspell2</a></li><li><a href="../../kunittest/html/index.html">kunittest</a></li><li><a href="../../kutils/html/index.html">kutils</a></li><li><a href="../../kwallet/html/index.html">kwallet</a></li><li><a href="../../libkmid/html/index.html">libkmid</a></li><li><a href="../../libkscreensaver/html/index.html">libkscreensaver</a></li>
</ul></div></div>


        </td>
</tr>
</table>

<span class="doNotDisplay">
  <a href="http://www.kde.org/" accesskey="8">KDE Home</a> |
  <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> |
  <a href="http://www.kde.org/media/accesskeys.php" accesskey="0">Description of Access Keys</a>
</span>


<div style="height: 8px"></div>

<div id="footer">
  <div id="footer_left">
    Maintained by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;groo&#116;&#64;kde&#46;or&#x67;">Adriaan de Groot</a>
and
<a href="&#109;a&#105;&#108;&#116;&#111;&#58;w&#105;nter&#64;kde&#46;or&#x67">Allen Winter</a>.
<br/>
    KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
    <a href="http://www.kde.org/contact/impressum.php">Legal</a>
  </div>
  <div id="footer_right"><img src="/media/images/footer_right.png" style="margin: 0px" alt="" /></div>
</div>

<!--
WARNING: DO NOT SEND MAIL TO THE FOLLOWING EMAIL ADDRESS! YOU WILL
BE BLOCKED INSTANTLY AND PERMANENTLY!
<a href="mailto:aaaatrap-425acc3b5374943f@kde.org">Block me</a>
WARNING END
-->

</body>
</html>