Sophie

Sophie

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

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::KSocketDevice 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_1KSocketDevice.html">KSocketDevice</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<div class="title">KNetwork::KSocketDevice Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="KNetwork::KSocketDevice" --><!-- doxytag: inherits="KNetwork::KActiveSocketBase,KNetwork::KPassiveSocketBase" -->
<p>Low-level socket functionality.  
 <a href="classKNetwork_1_1KSocketDevice.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="ksocketdevice_8h_source.html">ksocketdevice.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for KNetwork::KSocketDevice:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classKNetwork_1_1KSocketDevice.png" usemap="#KNetwork::KSocketDevice_map" alt=""/>
  <map id="KNetwork::KSocketDevice_map" name="KNetwork::KSocketDevice_map">
<area href="classKNetwork_1_1KActiveSocketBase.html" title="Abstract class for active sockets." alt="KNetwork::KActiveSocketBase" shape="rect" coords="111,56,324,80"/>
<area href="classKNetwork_1_1KPassiveSocketBase.html" title="Abstract base class for passive sockets." alt="KNetwork::KPassiveSocketBase" shape="rect" coords="446,56,659,80"/>
<area href="qiodevice.html" alt="QIODevice" shape="rect" coords="0,0,213,24"/>
<area href="classKNetwork_1_1KSocketBase.html" title="Basic socket functionality." alt="KNetwork::KSocketBase" shape="rect" coords="223,0,436,24"/>
<area href="classKNetwork_1_1KSocketBase.html" title="Basic socket functionality." alt="KNetwork::KSocketBase" shape="rect" coords="446,0,659,24"/>
<area href="classKNetwork_1_1KHttpProxySocketDevice.html" title="The low-level backend for HTTP proxying." alt="KNetwork::KHttpProxySocketDevice" shape="rect" coords="55,168,268,192"/>
<area href="classKNetwork_1_1KMulticastSocketImpl.html" title="The low-level backend for multicasting sockets." alt="KNetwork::KMulticastSocketImpl" shape="rect" coords="278,168,491,192"/>
<area href="classKNetwork_1_1KSocksSocketDevice.html" title="The low-level class for SOCKS proxying." alt="KNetwork::KSocksSocketDevice" shape="rect" coords="501,168,714,192"/>
</map>
 </div></div>

<p><a href="classKNetwork_1_1KSocketDevice-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8">Capabilities</a> { <br/>
&#160;&#160;<a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8a7e07524be247f5caf88be42c1db36029">CanConnectString</a> =  0x01, 
<a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8a05676c2ae6e4cb629242f07508244401">CanBindString</a> =  0x02, 
<a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8ac13cb1ab4bea760af0d9be3751909096">CanNotBind</a> =  0x04, 
<a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8a66d787e57eda273f2831eaa91ae0c130">CanNotListen</a> =  0x08, 
<br/>
&#160;&#160;<a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8a17aef9fcfded9d0de3e0cbdc61e97953">CanMulticast</a> =  0x10, 
<a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8abe786d2d439dc4123a1b5221b9f9ceb6">CanNotUseDatagrams</a> =  0x20
<br/>
 }</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_1KSocketDevice.html#a9431e4ad07af80403f627b8fe4fc6ed8">KSocketDevice</a> (const <a class="el" href="classKNetwork_1_1KSocketBase.html">KSocketBase</a> *=0L)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a0f397e4b61a3bbc73ad7f25bbfec8be9">KSocketDevice</a> (int fd)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#ad6798c45abf7c92196a0105aad449b4c">~KSocketDevice</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a4e0267a7c7524b2466b2d376f4615ca4">socket</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#aabb9639e2040cca4cc879743f6eb5214">capabilities</a> () const </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_1KSocketDevice.html#a1d44eb54de71fcd65b8865f52cbb65d7">setSocketOptions</a> (int opts)</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_1KSocketDevice.html#a611636754d39d9354b26d90f19a73da7">open</a> (int <a class="elRef" href="qiodevice.html#mode">mode</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_1KSocketDevice.html#a55d6dddd299c3142e0a8662de417de25">close</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_1KSocketDevice.html#afb5fdd2aad34b1118bb46168b5984bc0">flush</a> ()</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_1KSocketDevice.html#a2b8bdeb8203d7d65360dc3a4ec36fa84">create</a> (int family, int type, int protocol)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a098f13a72e58b6309928b1670bc00d9e">create</a> (const <a class="el" href="classKNetwork_1_1KResolverEntry.html">KResolverEntry</a> &amp;address)</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_1KSocketDevice.html#ac2af1d881218358cd5951982a404f3de">bind</a> (const <a class="el" href="classKNetwork_1_1KResolverEntry.html">KResolverEntry</a> &amp;address)</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_1KSocketDevice.html#ac75cac8053991aa5849e1d2ed039c9fa">listen</a> (int backlog=5)</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_1KSocketDevice.html#a79e1e96139551a39986d6b6a47018fa1">connect</a> (const <a class="el" href="classKNetwork_1_1KResolverEntry.html">KResolverEntry</a> &amp;address)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKNetwork_1_1KSocketDevice.html">KSocketDevice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a3def850768e03c000ce089bc8080f3d9">accept</a> ()</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_1KSocketDevice.html#a2d136dbef9b5431638b9dc641954e8d2">disconnect</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_1KSocketDevice.html#a37c2dc8a6d3ce0d0444988e64c2134e4">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_1KSocketDevice.html#ac2e00f045b4b00566dd4b32b57d88bc2">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_1KSocketDevice.html#a21f19a087bc11c62b4ebf2f09378e610">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_1KSocketDevice.html#a5a5967cedc6318d5c74cb953fdbb7e6b">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_1KSocketDevice.html#a731b3835f8bbee00e37210bac05ce59b">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_1KSocketDevice.html#a0a7c108c2a918d614425c84cfa4c6ce3">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_1KSocketDevice.html#a20ec5283e8815fe5e42a3b41bd5a3a69">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_1KSocketDevice.html#ac4d0da0c7fe11c90d53fc0970aa850fa">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 <a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a864926e9f316d16e3dacba8f3ffe892b">localAddress</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#af8cb5bc075e2695a11ee6d1ec069c27e">peerAddress</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a89da1425f36e4896d4dd964c638594bd">externalAddress</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#acdf84ff6f73d3aa49ac2b2b52ed05a8d">readNotifier</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a42346acae11b01a1a8908018f5cf99c6">writeNotifier</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a8a6d65b65d96aa456c3ba361fe3f29b2">exceptionNotifier</a> () const </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_1KSocketDevice.html#aa73567398d38cf19c2ffb112a4e61682">poll</a> (bool *input, bool *output, bool *exception=0L, int timeout=-1, bool *timedout=0L)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#add2d924db043dda18adf1c270e0c26d8">poll</a> (int timeout=-1, bool *timedout=0L)</td></tr>
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classKNetwork_1_1KSocketDevice.html">KSocketDevice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#adbcb704051780f912fffe87b91cbfc51">createDefault</a> (<a class="el" href="classKNetwork_1_1KSocketBase.html">KSocketBase</a> *parent)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classKNetwork_1_1KSocketDevice.html">KSocketDevice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#ae487a49aad0e4eb4b1951e9f985f5ec6">createDefault</a> (<a class="el" href="classKNetwork_1_1KSocketBase.html">KSocketBase</a> *parent, int capabilities)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static KSocketDeviceFactoryBase *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a0c511d3a63507e29fa402d72ae418ecd">setDefaultImpl</a> (KSocketDeviceFactoryBase *factory)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a8560fdbb126c77b5b79b9153f86e32a9">addNewImpl</a> (KSocketDeviceFactoryBase *factory, int capabilities)</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">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#aec90750a1418354abba5daf1d08a878d">KSocketDevice</a> (bool, const <a class="el" href="classKNetwork_1_1KSocketBase.html">KSocketBase</a> *parent=0L)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#a048ee63f2c594ed410bf76e0054fd1dc">createNotifier</a> (QSocketNotifier::Type type) const </td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KSocketDevice.html#aef418354e2d1f9c8c46b84a09566799e">m_sockfd</a></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Low-level socket functionality. </p>
<p>This class provides low-level socket functionality.</p>
<p>Most users will prefer "cooked" interfaces like those of <a class="el" href="classKNetwork_1_1KStreamSocket.html">KStreamSocket</a> or <a class="el" href="classKServerSocket.html">KServerSocket</a>.</p>
<p>Descended classes from this one provide some other kinds of socket functionality, like proxying or specific socket types.</p>
<dl class="author"><dt><b>Author:</b></dt><dd>Thiago Macieira &lt;<a href="mailto:thiago.macieira@kdemail.net">thiago.macieira@kdemail.net</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="ksocketdevice_8h_source.html#l00050">50</a> of file <a class="el" href="ksocketdevice_8h_source.html">ksocketdevice.h</a>.</p>
</div><hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a588a274f23e85216b1c578e536f7e8d8"></a><!-- doxytag: member="KNetwork::KSocketDevice::Capabilities" ref="a588a274f23e85216b1c578e536f7e8d8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8">KNetwork::KSocketDevice::Capabilities</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Capabilities for the socket implementation. </p>
<p>KSocketDevice-derived classes can implement certain capabilities that are not available in the default class. These capabilities are described by these flags. The default <a class="el" href="classKNetwork_1_1KSocketDevice.html" title="Low-level socket functionality.">KSocketDevice</a> class has none of these capabilities.</p>
<p>For the negative capabilities (inabilities, the CanNot* forms), when a capability is not present, the implementation will default to the original behaviour. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a588a274f23e85216b1c578e536f7e8d8a7e07524be247f5caf88be42c1db36029"></a><!-- doxytag: member="CanConnectString" ref="a588a274f23e85216b1c578e536f7e8d8a7e07524be247f5caf88be42c1db36029" args="" -->CanConnectString</em>&nbsp;</td><td>
<p>Can connect to hostnames. </p>
<p>If this flag is present, the string form of <a class="el" href="classKNetwork_1_1KSocketDevice.html#a79e1e96139551a39986d6b6a47018fa1">connect</a> can be used. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a588a274f23e85216b1c578e536f7e8d8a05676c2ae6e4cb629242f07508244401"></a><!-- doxytag: member="CanBindString" ref="a588a274f23e85216b1c578e536f7e8d8a05676c2ae6e4cb629242f07508244401" args="" -->CanBindString</em>&nbsp;</td><td>
<p>Can bind to hostnames. </p>
<p>If this flag is present, the string form of <a class="el" href="classKNetwork_1_1KSocketDevice.html#ac2af1d881218358cd5951982a404f3de">bind</a> can be used </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a588a274f23e85216b1c578e536f7e8d8ac13cb1ab4bea760af0d9be3751909096"></a><!-- doxytag: member="CanNotBind" ref="a588a274f23e85216b1c578e536f7e8d8ac13cb1ab4bea760af0d9be3751909096" args="" -->CanNotBind</em>&nbsp;</td><td>
<p>Can not bind. </p>
<p>If this flag is present, this implementation cannot bind </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a588a274f23e85216b1c578e536f7e8d8a66d787e57eda273f2831eaa91ae0c130"></a><!-- doxytag: member="CanNotListen" ref="a588a274f23e85216b1c578e536f7e8d8a66d787e57eda273f2831eaa91ae0c130" args="" -->CanNotListen</em>&nbsp;</td><td>
<p>Can not listen. </p>
<p>If this flag is present, this implementation cannot listen </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a588a274f23e85216b1c578e536f7e8d8a17aef9fcfded9d0de3e0cbdc61e97953"></a><!-- doxytag: member="CanMulticast" ref="a588a274f23e85216b1c578e536f7e8d8a17aef9fcfded9d0de3e0cbdc61e97953" args="" -->CanMulticast</em>&nbsp;</td><td>
<p>Can send multicast as well as join/leave multicast groups. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a588a274f23e85216b1c578e536f7e8d8abe786d2d439dc4123a1b5221b9f9ceb6"></a><!-- doxytag: member="CanNotUseDatagrams" ref="a588a274f23e85216b1c578e536f7e8d8abe786d2d439dc4123a1b5221b9f9ceb6" args="" -->CanNotUseDatagrams</em>&nbsp;</td><td>
<p>Can not use datagrams. </p>
<p>Note that this implies multicast capability not being available either. </p>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="ksocketdevice_8h_source.html#l00063">63</a> of file <a class="el" href="ksocketdevice_8h_source.html">ksocketdevice.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a9431e4ad07af80403f627b8fe4fc6ed8"></a><!-- doxytag: member="KNetwork::KSocketDevice::KSocketDevice" ref="a9431e4ad07af80403f627b8fe4fc6ed8" args="(const KSocketBase *=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KSocketDevice::KSocketDevice </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classKNetwork_1_1KSocketBase.html">KSocketBase</a> *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>0L</code></td><td>)</td>
          <td><code> [explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor. </p>
<p>The parameter is used to specify which socket this object is used as a device for. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00078">78</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a0f397e4b61a3bbc73ad7f25bbfec8be9"></a><!-- doxytag: member="KNetwork::KSocketDevice::KSocketDevice" ref="a0f397e4b61a3bbc73ad7f25bbfec8be9" args="(int fd)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KSocketDevice::KSocketDevice </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>fd</em></td><td>)</td>
          <td><code> [explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a new object around an already-open socket. </p>
<p>Note: you should write programs that create sockets through the classes whenever possible. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00086">86</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

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

<p>Destructor. </p>
<p>This closes the socket if it's open. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00103">103</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aec90750a1418354abba5daf1d08a878d"></a><!-- doxytag: member="KNetwork::KSocketDevice::KSocketDevice" ref="aec90750a1418354abba5daf1d08a878d" args="(bool, const KSocketBase *parent=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KSocketDevice::KSocketDevice </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classKNetwork_1_1KSocketBase.html">KSocketBase</a> *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>0L</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Special constructor. </p>
<p>This constructor will cause the internal socket device NOT to be set. Use this if your socket device class takes another underlying socket device.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>the parent, if any </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00095">95</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a3def850768e03c000ce089bc8080f3d9"></a><!-- doxytag: member="KNetwork::KSocketDevice::accept" ref="a3def850768e03c000ce089bc8080f3d9" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKNetwork_1_1KSocketDevice.html">KSocketDevice</a> * KSocketDevice::accept </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Accepts a new incoming connection. </p>
<p>Note: this function returns a socket of type <a class="el" href="classKNetwork_1_1KSocketDevice.html" title="Low-level socket functionality.">KSocketDevice</a>. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KPassiveSocketBase.html#a0cdd50077fefedf0648430d0b8e7297b">KNetwork::KPassiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a64ad98a8dbf9351b166d1e8d48ef19b9">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00309">309</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a8560fdbb126c77b5b79b9153f86e32a9"></a><!-- doxytag: member="KNetwork::KSocketDevice::addNewImpl" ref="a8560fdbb126c77b5b79b9153f86e32a9" args="(KSocketDeviceFactoryBase *factory, int capabilities)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KSocketDevice::addNewImpl </td>
          <td>(</td>
          <td class="paramtype">KSocketDeviceFactoryBase *&#160;</td>
          <td class="paramname"><em>factory</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>capabilities</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a factory of <a class="el" href="classKNetwork_1_1KSocketDevice.html" title="Low-level socket functionality.">KSocketDevice</a> objects to the list, along with its capabilities flag. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00879">879</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ac2af1d881218358cd5951982a404f3de"></a><!-- doxytag: member="KNetwork::KSocketDevice::bind" ref="ac2af1d881218358cd5951982a404f3de" args="(const KResolverEntry &amp;address)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KSocketDevice::bind </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classKNetwork_1_1KResolverEntry.html">KResolverEntry</a> &amp;&#160;</td>
          <td class="paramname"><em>address</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Binds this socket to the given address. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#aa2e883758d6ed8d32960c9b980d7f07f">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#aee4733f833f2330de1f0d64967bd4357">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00232">232</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

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

<p>Returns the number of bytes available for reading without blocking. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a27abcb04c3127b4d702f9fa308eea99a">KNetwork::KActiveSocketBase</a>.</p>

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

</div>
</div>
<a class="anchor" id="aabb9639e2040cca4cc879743f6eb5214"></a><!-- doxytag: member="KNetwork::KSocketDevice::capabilities" ref="aabb9639e2040cca4cc879743f6eb5214" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int KNetwork::KSocketDevice::capabilities </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the set of capabilities this socket class implements. </p>
<p>The set of capabilities is defined as an OR-ed mask of <a class="el" href="classKNetwork_1_1KSocketDevice.html#a588a274f23e85216b1c578e536f7e8d8">Capabilities</a> bits.</p>
<p>The default implementation is guaranteed to always return 0. That is, derived implementations always return bits where they differ from the system standard sockets. </p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KHttpProxySocketDevice.html#a521091a5d5ead8c7a5609e2536756b0b">KNetwork::KHttpProxySocketDevice</a>, <a class="el" href="classKNetwork_1_1KMulticastSocketImpl.html#add6b5cf8f889687e741d6e361bcddf69">KNetwork::KMulticastSocketImpl</a>, and <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#adf6fa76fa3cdfbbe6f9e6fe113f1e6a9">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8h_source.html#l00134">134</a> of file <a class="el" href="ksocketdevice_8h_source.html">ksocketdevice.h</a>.</p>

</div>
</div>
<a class="anchor" id="a55d6dddd299c3142e0a8662de417de25"></a><!-- doxytag: member="KNetwork::KSocketDevice::close" ref="a55d6dddd299c3142e0a8662de417de25" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KSocketDevice::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. </p>
<p>Reimplemented from <a class="elRef" href="qiodevice.html">QIODevice</a>.</p>
<p>Use this function to close the socket this object is holding open. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KPassiveSocketBase.html#ab50731a51a85a9d51f5b522e1ba76fca">KNetwork::KPassiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KHttpProxySocketDevice.html#aaca3de11ae67783e043ce66c03560dcc">KNetwork::KHttpProxySocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00180">180</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a79e1e96139551a39986d6b6a47018fa1"></a><!-- doxytag: member="KNetwork::KSocketDevice::connect" ref="a79e1e96139551a39986d6b6a47018fa1" args="(const KResolverEntry &amp;address)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KSocketDevice::connect </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classKNetwork_1_1KResolverEntry.html">KResolverEntry</a> &amp;&#160;</td>
          <td class="paramname"><em>address</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Connect to a remote host. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a828afa08c8017b10986e52b1efea359f">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KHttpProxySocketDevice.html#ac79e145184554b232242f03098addf45">KNetwork::KHttpProxySocketDevice</a>, <a class="el" href="classKNetwork_1_1KMulticastSocketImpl.html#a8944168d11125ffd6f35db9ae14b89eb">KNetwork::KMulticastSocketImpl</a>, and <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a95a39b3e19ba851e1af54a6c92396a51">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00276">276</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a098f13a72e58b6309928b1670bc00d9e"></a><!-- doxytag: member="KNetwork::KSocketDevice::create" ref="a098f13a72e58b6309928b1670bc00d9e" args="(const KResolverEntry &amp;address)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KSocketDevice::create </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classKNetwork_1_1KResolverEntry.html">KResolverEntry</a> &amp;&#160;</td>
          <td class="paramname"><em>address</em></td><td>)</td>
          <td></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. Creates a socket but don't connect or bind anywhere. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00227">227</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a2b8bdeb8203d7d65360dc3a4ec36fa84"></a><!-- doxytag: member="KNetwork::KSocketDevice::create" ref="a2b8bdeb8203d7d65360dc3a4ec36fa84" args="(int family, int type, int protocol)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KSocketDevice::create </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>family</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>protocol</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates a socket but don't connect or bind anywhere. </p>
<p>This function is the equivalent of the system call socket(2). </p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KMulticastSocketImpl.html#ab93ade939f6fbbe79fb2906d58dbc1a9">KNetwork::KMulticastSocketImpl</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00201">201</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae487a49aad0e4eb4b1951e9f985f5ec6"></a><!-- doxytag: member="KNetwork::KSocketDevice::createDefault" ref="ae487a49aad0e4eb4b1951e9f985f5ec6" args="(KSocketBase *parent, int capabilities)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKNetwork_1_1KSocketDevice.html">KSocketDevice</a> * KSocketDevice::createDefault </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKNetwork_1_1KSocketBase.html">KSocketBase</a> *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>capabilities</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</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. This will create an object only if the requested capabilities match. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>the parent </td></tr>
    <tr><td class="paramname">capabilities</td><td>the requested capabilities </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00854">854</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="adbcb704051780f912fffe87b91cbfc51"></a><!-- doxytag: member="KNetwork::KSocketDevice::createDefault" ref="adbcb704051780f912fffe87b91cbfc51" args="(KSocketBase *parent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKNetwork_1_1KSocketDevice.html">KSocketDevice</a> * KSocketDevice::createDefault </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKNetwork_1_1KSocketBase.html">KSocketBase</a> *&#160;</td>
          <td class="paramname"><em>parent</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates a new default <a class="el" href="classKNetwork_1_1KSocketDevice.html" title="Low-level socket functionality.">KSocketDevice</a> object given the parent object. </p>
<p>The capabilities flag indicates the desired capabilities the object being created should possess. Those capabilities are not guaranteed: if no factory can provide such an object, a default object will be created.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>the <a class="el" href="classKNetwork_1_1KSocketBase.html" title="Basic socket functionality.">KSocketBase</a> parent </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00839">839</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a048ee63f2c594ed410bf76e0054fd1dc"></a><!-- doxytag: member="KNetwork::KSocketDevice::createNotifier" ref="a048ee63f2c594ed410bf76e0054fd1dc" args="(QSocketNotifier::Type type) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a> * KSocketDevice::createNotifier </td>
          <td>(</td>
          <td class="paramtype">QSocketNotifier::Type&#160;</td>
          <td class="paramname"><em>type</em></td><td>)</td>
          <td> const<code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates a socket notifier of the given type. </p>
<p>This function is called by <a class="el" href="classKNetwork_1_1KSocketDevice.html#acdf84ff6f73d3aa49ac2b2b52ed05a8d">readNotifier</a>, <a class="el" href="classKNetwork_1_1KSocketDevice.html#a42346acae11b01a1a8908018f5cf99c6">writeNotifier</a> and <a class="el" href="classKNetwork_1_1KSocketDevice.html#a8a6d65b65d96aa456c3ba361fe3f29b2">exceptionNotifier</a> when they need to create a socket notifier (i.e., the first call to those functions after the socket is open). After that call, those functions cache the socket notifier and will not need to call this function again.</p>
<p>Reimplement this function in your derived class if your socket type requires a different kind of <a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a>. The return value should be deleteable with delete. (<a class="el" href="classKNetwork_1_1KSocketDevice.html#a55d6dddd299c3142e0a8662de417de25">close</a> deletes them).</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">type</td><td>the socket notifier type </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00791">791</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

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

<p>Disconnects this socket. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a1cfeec50aa9518e58ece1f97baea8e56">KNetwork::KActiveSocketBase</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00333">333</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a8a6d65b65d96aa456c3ba361fe3f29b2"></a><!-- doxytag: member="KNetwork::KSocketDevice::exceptionNotifier" ref="a8a6d65b65d96aa456c3ba361fe3f29b2" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a> * KSocketDevice::exceptionNotifier </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a socket notifier for exceptional events on this socket. </p>
<p>The is created only when requested.</p>
<p>This function might return NULL. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00645">645</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a89da1425f36e4896d4dd964c638594bd"></a><!-- doxytag: member="KNetwork::KSocketDevice::externalAddress" ref="a89da1425f36e4896d4dd964c638594bd" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> KSocketDevice::externalAddress </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns this socket's externally visible local address. </p>
<p>If this socket has a local address visible externally different from the normal local address (as returned by <a class="el" href="classKNetwork_1_1KSocketDevice.html#a864926e9f316d16e3dacba8f3ffe892b">localAddress</a>), then return it.</p>
<p>Certain implementations will use proxies and thus have externally visible addresses different from the local socket values. The default implementation returns the same value as <a class="el" href="classKNetwork_1_1KSocketDevice.html#a864926e9f316d16e3dacba8f3ffe892b">localAddress</a>.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>This function may return an empty <a class="el" href="classKNetwork_1_1KSocketAddress.html" title="A generic socket address.">KSocketAddress</a>. In that case, the externally visible address could/can not be determined. </dd></dl>

<p>Implements <a class="el" href="classKNetwork_1_1KPassiveSocketBase.html#a950dd3fa226bded484738f88eb35c8fe">KNetwork::KPassiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KHttpProxySocketDevice.html#a813dfdfbc1abaffde650c0838a10296c">KNetwork::KHttpProxySocketDevice</a>, and <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a701c74b260ccd5fec549f819801d3c19">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00602">602</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

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

<p>This call is not supported on sockets. </p>
<p>Reimplemented from <a class="elRef" href="qiodevice.html">QIODevice</a>. </p>

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

<p>Definition at line <a class="el" href="ksocketdevice_8h_source.html#l00157">157</a> of file <a class="el" href="ksocketdevice_8h_source.html">ksocketdevice.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac75cac8053991aa5849e1d2ed039c9fa"></a><!-- doxytag: member="KNetwork::KSocketDevice::listen" ref="ac75cac8053991aa5849e1d2ed039c9fa" args="(int backlog=5)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KSocketDevice::listen </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>backlog</em> = <code>5</code></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Puts this socket into listening mode. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KPassiveSocketBase.html#a3b9783d82efc679f0e5e7b932bbcb933">KNetwork::KPassiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a95a1a91df81ec7b6736b0d11630fe2a3">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00255">255</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a864926e9f316d16e3dacba8f3ffe892b"></a><!-- doxytag: member="KNetwork::KSocketDevice::localAddress" ref="a864926e9f316d16e3dacba8f3ffe892b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> KSocketDevice::localAddress </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns this socket's local address. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a55d3c9eec3fbf3646b453526b5129318">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#aa407077303bdaae671d2cc2c611b048e">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00530">530</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

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

<p>Reimplementation from <a class="elRef" href="qiodevice.html">QIODevice</a>. </p>
<p>You should not call this function in sockets. </p>

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

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00174">174</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a731b3835f8bbee00e37210bac05ce59b"></a><!-- doxytag: member="KNetwork::KSocketDevice::peekBlock" ref="a731b3835f8bbee00e37210bac05ce59b" args="(char *data, Q_ULONG maxlen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KSocketDevice::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 in the socket. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a746adb9cc1cc7e734117160cf05fd92e">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a866b50bf93199a3fa8773a2c1c243e2b">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00459">459</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a0a7c108c2a918d614425c84cfa4c6ce3"></a><!-- doxytag: member="KNetwork::KSocketDevice::peekBlock" ref="a0a7c108c2a918d614425c84cfa4c6ce3" args="(char *data, Q_ULONG maxlen, KSocketAddress &amp;from)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KSocketDevice::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>Peeks the data in the socket and the source address. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a109c0e1cb604f78c2f8f2f407868fd91">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a70161f23e83ec3ada61256af79f267bd">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00480">480</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="af8cb5bc075e2695a11ee6d1ec069c27e"></a><!-- doxytag: member="KNetwork::KSocketDevice::peerAddress" ref="af8cb5bc075e2695a11ee6d1ec069c27e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKNetwork_1_1KSocketAddress.html">KSocketAddress</a> KSocketDevice::peerAddress </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns this socket's peer address. </p>
<p>If this implementation does proxying of some sort, this is the real external address, not the proxy's address. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#aa1c158f12589be4dbc64aaeb68a170fe">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KHttpProxySocketDevice.html#a2f1cdad527bfdb055a48106e5ef1bfd8">KNetwork::KHttpProxySocketDevice</a>, and <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#ae867959a5fefef4e7aa35b4d14c9bd93">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00566">566</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="add2d924db043dda18adf1c270e0c26d8"></a><!-- doxytag: member="KNetwork::KSocketDevice::poll" ref="add2d924db043dda18adf1c270e0c26d8" args="(int timeout=&#45;1, bool *timedout=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KSocketDevice::poll </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>timeout</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>timedout</em> = <code>0L</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Shorter version to poll for any events in a socket. </p>
<p>This call polls for input, output and exceptional events in a socket but does not return their states. This is useful if you need to wait for any event, but don't need to know which; or for timeouts.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">timeout</td><td>the time in milliseconds to wait for an event; 0 for no wait and any negative value to wait forever </td></tr>
    <tr><td class="paramname">timedout</td><td>on exit, will contain true if the polling timed out </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the poll call succeeded and false if an error occurred </dd></dl>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00785">785</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa73567398d38cf19c2ffb112a4e61682"></a><!-- doxytag: member="KNetwork::KSocketDevice::poll" ref="aa73567398d38cf19c2ffb112a4e61682" args="(bool *input, bool *output, bool *exception=0L, int timeout=&#45;1, bool *timedout=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KSocketDevice::poll </td>
          <td>(</td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>output</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>exception</em> = <code>0L</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>timeout</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>timedout</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>Executes a poll in the socket, via select(2) or poll(2). </p>
<p>The events polled are returned in the parameters pointers. Set any of them to NULL to disable polling of that event.</p>
<p>On exit, <code>input</code>, <code>output</code> and <code>exception</code> will contain true if an event of that kind is waiting on the socket or false if not. If a timeout occurred, set <code>timedout</code> to true (all other parameters are necessarily set to false).</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">input</td><td>if set, turns on polling for input events </td></tr>
    <tr><td class="paramname">output</td><td>if set, turns on polling for output events </td></tr>
    <tr><td class="paramname">exception</td><td>if set, turns on polling for exceptional events </td></tr>
    <tr><td class="paramname">timeout</td><td>the time in milliseconds to wait for an event; 0 for no wait and any negative value to wait forever </td></tr>
    <tr><td class="paramname">timedout</td><td>on exit, will contain true if the polling timed out </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the poll call succeeded and false if an error occurred </dd></dl>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a9a24020f70c3d03f79d996c1b520c894">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00663">663</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a21f19a087bc11c62b4ebf2f09378e610"></a><!-- doxytag: member="KNetwork::KSocketDevice::readBlock" ref="a21f19a087bc11c62b4ebf2f09378e610" args="(char *data, Q_ULONG maxlen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KSocketDevice::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 this socket. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a7b4b7304817fd573c77839982b5e3cd3">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a7404e36004d3dc7625848521a0520826">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00417">417</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5a5967cedc6318d5c74cb953fdbb7e6b"></a><!-- doxytag: member="KNetwork::KSocketDevice::readBlock" ref="a5a5967cedc6318d5c74cb953fdbb7e6b" args="(char *data, Q_ULONG maxlen, KSocketAddress &amp;from)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KSocketDevice::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>Reads data and the source address from this socket. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#ae26adda2fe7d1c78665b0c5e37974fee">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a03f193497265c6b77d709d06b60f20b5">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00438">438</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="acdf84ff6f73d3aa49ac2b2b52ed05a8d"></a><!-- doxytag: member="KNetwork::KSocketDevice::readNotifier" ref="acdf84ff6f73d3aa49ac2b2b52ed05a8d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a> * KSocketDevice::readNotifier </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a socket notifier for input on this socket. </p>
<p>The notifier is created only when requested. Whether it is enabled or not depends on the implementation.</p>
<p>This function might return NULL. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00609">609</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a0c511d3a63507e29fa402d72ae418ecd"></a><!-- doxytag: member="KNetwork::KSocketDevice::setDefaultImpl" ref="a0c511d3a63507e29fa402d72ae418ecd" args="(KSocketDeviceFactoryBase *factory)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KSocketDeviceFactoryBase * KSocketDevice::setDefaultImpl </td>
          <td>(</td>
          <td class="paramtype">KSocketDeviceFactoryBase *&#160;</td>
          <td class="paramname"><em>factory</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the default <a class="el" href="classKNetwork_1_1KSocketDevice.html" title="Low-level socket functionality.">KSocketDevice</a> implementation to use and return the old factory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">factory</td><td>the factory object for the implementation </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00871">871</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

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

<p>This implementation sets the options on the socket. </p>

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

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00110">110</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4e0267a7c7524b2466b2d376f4615ca4"></a><!-- doxytag: member="KNetwork::KSocketDevice::socket" ref="a4e0267a7c7524b2466b2d376f4615ca4" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KNetwork::KSocketDevice::socket </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the file descriptor for this socket. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8h_source.html#l00122">122</a> of file <a class="el" href="ksocketdevice_8h_source.html">ksocketdevice.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac2e00f045b4b00566dd4b32b57d88bc2"></a><!-- doxytag: member="KNetwork::KSocketDevice::waitForMore" ref="ac2e00f045b4b00566dd4b32b57d88bc2" args="(int msecs, bool *timeout=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KSocketDevice::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>Waits up to <code>msecs</code> for more data to be available on this socket. </p>
<p>This function is a wrapper against <a class="el" href="classKNetwork_1_1KSocketDevice.html#aa73567398d38cf19c2ffb112a4e61682">poll</a>. This function will wait for any read events. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#ad89800cfae4755458955673247b9682d">KNetwork::KActiveSocketBase</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00379">379</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ac4d0da0c7fe11c90d53fc0970aa850fa"></a><!-- doxytag: member="KNetwork::KSocketDevice::writeBlock" ref="ac4d0da0c7fe11c90d53fc0970aa850fa" 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 KSocketDevice::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>Writes the given data to the given destination address. </p>

<p>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a972d6a9bbf5ad43aa82b71bef2a1b830">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a6dd1b91e6d9bbf7c9d1bcd76cd97dc3a">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00506">506</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a20ec5283e8815fe5e42a3b41bd5a3a69"></a><!-- doxytag: member="KNetwork::KSocketDevice::writeBlock" ref="a20ec5283e8815fe5e42a3b41bd5a3a69" args="(const char *data, Q_ULONG len)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Q_LONG KSocketDevice::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>Implements <a class="el" href="classKNetwork_1_1KActiveSocketBase.html#a504bf1dcb57f6724017045882a647464">KNetwork::KActiveSocketBase</a>.</p>

<p>Reimplemented in <a class="el" href="classKNetwork_1_1KSocksSocketDevice.html#a3cc4123d3be620b5edb15fc98cd00ad2">KNetwork::KSocksSocketDevice</a>.</p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00501">501</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a42346acae11b01a1a8908018f5cf99c6"></a><!-- doxytag: member="KNetwork::KSocketDevice::writeNotifier" ref="a42346acae11b01a1a8908018f5cf99c6" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qsocketnotifier.html">QSocketNotifier</a> * KSocketDevice::writeNotifier </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a socket notifier for output on this socket. </p>
<p>The is created only when requested.</p>
<p>This function might return NULL. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8cpp_source.html#l00627">627</a> of file <a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="aef418354e2d1f9c8c46b84a09566799e"></a><!-- doxytag: member="KNetwork::KSocketDevice::m_sockfd" ref="aef418354e2d1f9c8c46b84a09566799e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classKNetwork_1_1KSocketDevice.html#aef418354e2d1f9c8c46b84a09566799e">KNetwork::KSocketDevice::m_sockfd</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The socket file descriptor. </p>
<p>It is used throughout the implementation and subclasses. </p>

<p>Definition at line <a class="el" href="ksocketdevice_8h_source.html#l00095">95</a> of file <a class="el" href="ksocketdevice_8h_source.html">ksocketdevice.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="ksocketdevice_8h_source.html">ksocketdevice.h</a></li>
<li><a class="el" href="ksocketdevice_8cpp_source.html">ksocketdevice.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>