<class name="QTcpSocket" doc="/**
&lt;p&gt;The &lt;a href=&quot;QTcpSocket.html#QTcpSocket(com.trolltech.qt.core.QObject)&quot;&gt;&lt;tt&gt;QTcpSocket&lt;/tt&gt;&lt;/a&gt; class provides a TCP socket.&lt;/p&gt;
&lt;p&gt;TCP (Transmission Control Protocol) is a reliable, stream-oriented, connection-oriented transport protocol. It is especially well suited for continuous transmission of data.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;QTcpSocket.html#QTcpSocket(com.trolltech.qt.core.QObject)&quot;&gt;&lt;tt&gt;QTcpSocket&lt;/tt&gt;&lt;/a&gt; is a convenience subclass of &lt;a href=&quot;QAbstractSocket.html#QAbstractSocket(com.trolltech.qt.network.QAbstractSocket.SocketType, com.trolltech.qt.core.QObject)&quot;&gt;&lt;tt&gt;QAbstractSocket&lt;/tt&gt;&lt;/a&gt; that allows you to establish a TCP connection and transfer streams of data. See the &lt;a href=&quot;QAbstractSocket.html#QAbstractSocket(com.trolltech.qt.network.QAbstractSocket.SocketType, com.trolltech.qt.core.QObject)&quot;&gt;&lt;tt&gt;QAbstractSocket&lt;/tt&gt;&lt;/a&gt; documentation for details.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; TCP sockets cannot be opened in QIODevice::Unbuffered mode.&lt;/p&gt;

@see &lt;a href=&quot;QTcpServer.html&quot;&gt;&lt;tt&gt;QTcpServer&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QUdpSocket.html&quot;&gt;&lt;tt&gt;QUdpSocket&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QFtp.html&quot;&gt;&lt;tt&gt;QFtp&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QHttp.html&quot;&gt;&lt;tt&gt;QHttp&lt;/tt&gt;&lt;/a&gt;
@see Fortune Server Example&lt;/tt&gt;
@see Fortune Client Example&lt;/tt&gt;
@see Threaded Fortune Server Example&lt;/tt&gt;
@see Blocking Fortune Client Example&lt;/tt&gt;
@see Loopback Example&lt;/tt&gt;
@see Torrent Example&lt;/tt&gt; */">
    <signal name="protected final void aboutToClose()" doc="/**
&lt;p&gt;This signal is emitted when the device is about to close. Connect this signal if you have operations that need to be performed before the device closes (e.g&amp;#x2e;, if you have data in a separate buffer that needs to be written to the device).&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signature:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void bytesWritten(long bytes)" doc="/**
&lt;p&gt;This signal is emitted every time a payload of data has been written to the device. The &lt;tt&gt;bytes&lt;/tt&gt; argument is set to the number of bytes that were written in this payload.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;QTcpSocket.html#bytesWritten(long)&quot;&gt;&lt;tt&gt;bytesWritten&lt;/tt&gt;&lt;/a&gt; is not emitted recursively; if you reenter the event loop or call &lt;a href=&quot;QAbstractSocket.html#waitForBytesWritten(int)&quot;&gt;&lt;tt&gt;waitForBytesWritten&lt;/tt&gt;&lt;/a&gt; inside a slot connected to the &lt;a href=&quot;QTcpSocket.html#bytesWritten(long)&quot;&gt;&lt;tt&gt;bytesWritten&lt;/tt&gt;&lt;/a&gt; signal, the signal will not be reemitted (although &lt;a href=&quot;QAbstractSocket.html#waitForBytesWritten(int)&quot;&gt;&lt;tt&gt;waitForBytesWritten&lt;/tt&gt;&lt;/a&gt; may still return true).&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signatures:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot(long bytes)&lt;/tt&gt;&lt;/dd&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;a href=&quot;QTcpSocket.html#readyRead()&quot;&gt;&lt;tt&gt;readyRead&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void connected()" doc="/**
&lt;p&gt;This signal is emitted after connectToHost() has been called and a connection has been successfully established.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signature:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;connectToHost&lt;/tt&gt;, &lt;a href=&quot;QTcpSocket.html#disconnected()&quot;&gt;&lt;tt&gt;disconnected&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void disconnected()" doc="/**
&lt;p&gt;This signal is emitted when the socket has been disconnected.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signature:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;connectToHost&lt;/tt&gt;, &lt;a href=&quot;QAbstractSocket.html#disconnectFromHost()&quot;&gt;&lt;tt&gt;disconnectFromHost&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QAbstractSocket.html#abort()&quot;&gt;&lt;tt&gt;abort&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void error(com.trolltech.qt.network.QAbstractSocket.SocketError arg__1)" doc="/**
&lt;p&gt;This signal is emitted after an error occurred. The &lt;tt&gt;arg__1&lt;/tt&gt; parameter describes the type of error that occurred.&lt;/p&gt;
&lt;p&gt;QAbstractSocket::SocketError is not a registered metatype, so for queued connections, you will have to register it with Q_REGISTER_METATYPE.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signatures:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot(com.trolltech.qt.network.QAbstractSocket.SocketError arg__1)&lt;/tt&gt;&lt;/dd&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;a href=&quot;QTcpSocket.html#error(com.trolltech.qt.network.QAbstractSocket.SocketError)&quot;&gt;&lt;tt&gt;error&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;%2E%2E/core/%2E%2E/core/QIODevice.html#errorString()&quot;&gt;&lt;tt&gt;errorString&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void hostFound()" doc="/**
&lt;p&gt;This signal is emitted after connectToHost() has been called and the host lookup has succeeded.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signature:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;a href=&quot;QTcpSocket.html#connected()&quot;&gt;&lt;tt&gt;connected&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void proxyAuthenticationRequiredPrivate(com.trolltech.qt.network.QNetworkProxy proxy, com.trolltech.qt.network.QAuthenticator authenticator)" doc="/**
&lt;p&gt;This signal can be emitted when a &lt;tt&gt;proxy&lt;/tt&gt; that requires authentication is used. The &lt;tt&gt;authenticator&lt;/tt&gt; object can then be filled in with the required details to allow authentication and continue the connection.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; It is not possible to use a QueuedConnection to connect to this signal, as the connection will fail if the authenticator has not been filled in with new information when the signal returns.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signatures:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot(com.trolltech.qt.network.QNetworkProxy proxy, com.trolltech.qt.network.QAuthenticator authenticator)&lt;/tt&gt;&lt;/dd&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot(com.trolltech.qt.network.QNetworkProxy proxy)&lt;/tt&gt;&lt;/dd&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;a href=&quot;QAuthenticator.html&quot;&gt;&lt;tt&gt;QAuthenticator&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QNetworkProxy.html&quot;&gt;&lt;tt&gt;QNetworkProxy&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void readyRead()" doc="/**
&lt;p&gt;This signal is emitted once every time new data is available for reading from the device. It will only be emitted again once new data is available, such as when a new payload of network data has arrived on your network socket, or when a new block of data has been appended to your device.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;QTcpSocket.html#readyRead()&quot;&gt;&lt;tt&gt;readyRead&lt;/tt&gt;&lt;/a&gt; is not emitted recursively; if you reenter the event loop or call &lt;a href=&quot;QAbstractSocket.html#waitForReadyRead(int)&quot;&gt;&lt;tt&gt;waitForReadyRead&lt;/tt&gt;&lt;/a&gt; inside a slot connected to the &lt;a href=&quot;QTcpSocket.html#readyRead()&quot;&gt;&lt;tt&gt;readyRead&lt;/tt&gt;&lt;/a&gt; signal, the signal will not be reemitted (although &lt;a href=&quot;QAbstractSocket.html#waitForReadyRead(int)&quot;&gt;&lt;tt&gt;waitForReadyRead&lt;/tt&gt;&lt;/a&gt; may still return true).&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signature:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;a href=&quot;QTcpSocket.html#bytesWritten(long)&quot;&gt;&lt;tt&gt;bytesWritten&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void stateChanged(com.trolltech.qt.network.QAbstractSocket.SocketState arg__1)" doc="/**
&lt;p&gt;This signal is emitted whenever &lt;a href=&quot;QAbstractSocket.html#QAbstractSocket(com.trolltech.qt.network.QAbstractSocket.SocketType, com.trolltech.qt.core.QObject)&quot;&gt;&lt;tt&gt;QAbstractSocket&lt;/tt&gt;&lt;/a&gt;'s state changes. The &lt;tt&gt;arg__1&lt;/tt&gt; parameter is the new state.&lt;/p&gt;
&lt;p&gt;QAbstractSocket::SocketState is not a registered metatype, so for queued connections, you will have to register it with Q_REGISTER_METATYPE.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signatures:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot(com.trolltech.qt.network.QAbstractSocket.SocketState arg__1)&lt;/tt&gt;&lt;/dd&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;a href=&quot;QAbstractSocket.html#state()&quot;&gt;&lt;tt&gt;state&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <method name="public QTcpSocket(com.trolltech.qt.core.QObject parent)" doc="/**
&lt;p&gt;Creates a &lt;a href=&quot;QTcpSocket.html#QTcpSocket(com.trolltech.qt.core.QObject)&quot;&gt;&lt;tt&gt;QTcpSocket&lt;/tt&gt;&lt;/a&gt; object in state &lt;tt&gt;UnconnectedState&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;parent&lt;/tt&gt; is passed on to the &lt;a href=&quot;%2E%2E/core/%2E%2E/core/QObject.html#QObject(com.trolltech.qt.core.QObject)&quot;&gt;&lt;tt&gt;QObject&lt;/tt&gt;&lt;/a&gt; constructor.&lt;/p&gt;

@see &lt;a href=&quot;QAbstractSocket.html#socketType()&quot;&gt;&lt;tt&gt;socketType&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public QTcpSocket()" doc="/**
&lt;p&gt;Equivalent to &lt;a href=&quot;QTcpSocket.html#QTcpSocket(com.trolltech.qt.core.QObject)&quot;&gt;&lt;tt&gt;QTcpSocket&lt;/tt&gt;&lt;/a&gt;(0). */"/>
</class>
