Qt 4.8
Public Functions | Protected Functions | List of all members
QTcpSocket Class Reference

The QTcpSocket class provides a TCP socket. More...

#include <qtcpsocket.h>

Inheritance diagram for QTcpSocket:
QAbstractSocket QIODevice QObject QDeclarativeDebugConnection QSslSocket

Public Functions

 QTcpSocket (QObject *parent=0)
 Creates a QTcpSocket object in state UnconnectedState. More...
 
virtual ~QTcpSocket ()
 Destroys the socket, closing the connection if necessary. More...
 
- Public Functions inherited from QAbstractSocket
void abort ()
 Aborts the current connection and resets the socket. More...
 
bool atEnd () const
 Returns true if no more data is currently available for reading; otherwise returns false. More...
 
qint64 bytesAvailable () const
 Returns the number of incoming bytes that are waiting to be read. More...
 
qint64 bytesToWrite () const
 Returns the number of bytes that are waiting to be written. More...
 
bool canReadLine () const
 Returns true if a line of data can be read from the socket; otherwise returns false. More...
 
void close ()
 Closes the I/O device for the socket, disconnects the socket's connection with the host, closes the socket, and resets the name, address, port number and underlying socket descriptor. More...
 
void connectToHost (const QString &hostName, quint16 port, OpenMode mode=ReadWrite)
 Attempts to make a connection to hostName on the given port. More...
 
void connectToHost (const QHostAddress &address, quint16 port, OpenMode mode=ReadWrite)
 Attempts to make a connection to address on port port. More...
 
void disconnectFromHost ()
 Attempts to close the socket. More...
 
SocketError error () const
 Returns the type of error that last occurred. More...
 
bool flush ()
 This function writes as much as possible from the internal write buffer to the underlying network socket, without blocking. More...
 
bool isSequential () const
 Reimplemented Function More...
 
bool isValid () const
 Returns true if the socket is valid and ready for use; otherwise returns false. More...
 
QHostAddress localAddress () const
 Returns the host address of the local socket if available; otherwise returns QHostAddress::Null. More...
 
quint16 localPort () const
 Returns the host port number (in native byte order) of the local socket if available; otherwise returns 0. More...
 
QHostAddress peerAddress () const
 Returns the address of the connected peer if the socket is in ConnectedState; otherwise returns QHostAddress::Null. More...
 
QString peerName () const
 Returns the name of the peer as specified by connectToHost(), or an empty QString if connectToHost() has not been called. More...
 
quint16 peerPort () const
 Returns the port of the connected peer if the socket is in ConnectedState; otherwise returns 0. More...
 
QNetworkProxy proxy () const
 Returns the network proxy for this socket. More...
 
 QAbstractSocket (SocketType socketType, QObject *parent)
 Creates a new abstract socket of type socketType. More...
 
qint64 readBufferSize () const
 Returns the size of the internal read buffer. More...
 
void setProxy (const QNetworkProxy &networkProxy)
 Sets the explicit network proxy for this socket to networkProxy. More...
 
void setReadBufferSize (qint64 size)
 Sets the size of QAbstractSocket's internal read buffer to be size bytes. More...
 
bool setSocketDescriptor (int socketDescriptor, SocketState state=ConnectedState, OpenMode openMode=ReadWrite)
 Initializes QAbstractSocket with the native socket descriptor socketDescriptor. More...
 
void setSocketOption (QAbstractSocket::SocketOption option, const QVariant &value)
 Sets the given option to the value described by value. More...
 
int socketDescriptor () const
 Returns the native socket descriptor of the QAbstractSocket object if this is available; otherwise returns -1. More...
 
QVariant socketOption (QAbstractSocket::SocketOption option)
 Returns the value of the option option. More...
 
SocketType socketType () const
 Returns the socket type (TCP, UDP, or other). More...
 
SocketState state () const
 Returns the state of the socket. More...
 
bool waitForBytesWritten (int msecs=30000)
 Reimplemented Function More...
 
bool waitForConnected (int msecs=30000)
 Waits until the socket is connected, up to msecs milliseconds. More...
 
bool waitForDisconnected (int msecs=30000)
 Waits until the socket has disconnected, up to msecs milliseconds. More...
 
bool waitForReadyRead (int msecs=30000)
 This function blocks until new data is available for reading and the QIODevice::readyRead() signal has been emitted. More...
 
virtual ~QAbstractSocket ()
 Destroys the socket. More...
 
- Public Functions inherited from QIODevice
QString errorString () const
 Returns a human-readable description of the last device error that occurred. More...
 
bool getChar (char *c)
 Reads one character from the device and stores it in c. More...
 
bool isOpen () const
 Returns true if the device is open; otherwise returns false. More...
 
bool isReadable () const
 Returns true if data can be read from the device; otherwise returns false. More...
 
bool isTextModeEnabled () const
 Returns true if the Text flag is enabled; otherwise returns false. More...
 
bool isWritable () const
 Returns true if data can be written to the device; otherwise returns false. More...
 
virtual bool open (OpenMode mode)
 Opens the device and sets its OpenMode to mode. More...
 
OpenMode openMode () const
 Returns the mode in which the device has been opened; i.e. More...
 
qint64 peek (char *data, qint64 maxlen)
 Reads at most maxSize bytes from the device into data, without side effects (i. More...
 
QByteArray peek (qint64 maxlen)
 Peeks at most maxSize bytes from the device, returning the data peeked as a QByteArray. More...
 
virtual qint64 pos () const
 For random-access devices, this function returns the position that data is written to or read from. More...
 
bool putChar (char c)
 Writes the character c to the device. More...
 
 QIODevice ()
 Constructs a QIODevice object. More...
 
 QIODevice (QObject *parent)
 Constructs a QIODevice object with the given parent. More...
 
qint64 read (char *data, qint64 maxlen)
 Reads at most maxSize bytes from the device into data, and returns the number of bytes read. More...
 
QByteArray read (qint64 maxlen)
 Reads at most maxSize bytes from the device, and returns the data read as a QByteArray. More...
 
QByteArray readAll ()
 Reads all available data from the device, and returns it as a QByteArray. More...
 
qint64 readLine (char *data, qint64 maxlen)
 This function reads a line of ASCII characters from the device, up to a maximum of maxSize - 1 bytes, stores the characters in data, and returns the number of bytes read. More...
 
QByteArray readLine (qint64 maxlen=0)
 Reads a line from the device, but no more than maxSize characters, and returns the result as a QByteArray. More...
 
virtual bool reset ()
 Seeks to the start of input for random-access devices. More...
 
virtual bool seek (qint64 pos)
 For random-access devices, this function sets the current position to pos, returning true on success, or false if an error occurred. More...
 
void setTextModeEnabled (bool enabled)
 If enabled is true, this function sets the Text flag on the device; otherwise the Text flag is removed. More...
 
virtual qint64 size () const
 For open random-access devices, this function returns the size of the device. More...
 
void ungetChar (char c)
 Puts the character c back into the device, and decrements the current position unless the position is 0. More...
 
qint64 write (const char *data, qint64 len)
 Writes at most maxSize bytes of data from data to the device. More...
 
qint64 write (const char *data)
 Writes data from a zero-terminated string of 8-bit characters to the device. More...
 
qint64 write (const QByteArray &data)
 Writes the content of byteArray to the device. More...
 
virtual ~QIODevice ()
 The destructor is virtual, and QIODevice is an abstract base class. More...
 
- Public Functions inherited from QObject
bool blockSignals (bool b)
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). More...
 
const QObjectListchildren () const
 Returns a list of child objects. More...
 
bool connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=0, const QObject *receiver=0, const char *member=0)
 
bool disconnect (const QObject *receiver, const char *member=0)
 
void dumpObjectInfo ()
 Dumps information about signal connections, etc. More...
 
void dumpObjectTree ()
 Dumps a tree of children to the debug output. More...
 
QList< QByteArraydynamicPropertyNames () const
 Returns the names of all properties that were dynamically added to the object using setProperty(). More...
 
virtual bool event (QEvent *)
 This virtual function receives events to an object and should return true if the event e was recognized and processed. More...
 
virtual bool eventFilter (QObject *, QEvent *)
 Filters events if this object has been installed as an event filter for the watched object. More...
 
template<typename T >
findChild (const QString &aName=QString()) const
 Returns the child of this object that can be cast into type T and that is called name, or 0 if there is no such object. More...
 
template<typename T >
QList< T > findChildren (const QString &aName=QString()) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. More...
 
template<typename T >
QList< T > findChildren (const QRegExp &re) const
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false. More...
 
void installEventFilter (QObject *)
 Installs an event filter filterObj on this object. More...
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false. More...
 
void killTimer (int id)
 Kills the timer with timer identifier, id. More...
 
virtual const QMetaObjectmetaObject () const
 Returns a pointer to the meta-object of this object. More...
 
void moveToThread (QThread *thread)
 Changes the thread affinity for this object and its children. More...
 
QString objectName () const
 
QObjectparent () const
 Returns a pointer to the parent object. More...
 
QVariant property (const char *name) const
 Returns the value of the object's name property. More...
 
Q_INVOKABLE QObject (QObject *parent=0)
 Constructs an object with parent object parent. More...
 
void removeEventFilter (QObject *)
 Removes an event filter object obj from this object. More...
 
void setObjectName (const QString &name)
 
void setParent (QObject *)
 Makes the object a child of parent. More...
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value. More...
 
void setUserData (uint id, QObjectUserData *data)
 
bool signalsBlocked () const
 Returns true if signals are blocked; otherwise returns false. More...
 
int startTimer (int interval)
 Starts a timer and returns a timer identifier, or returns zero if it could not start a timer. More...
 
QThreadthread () const
 Returns the thread in which the object lives. More...
 
QObjectUserDatauserData (uint id) const
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects. More...
 

Protected Functions

 QTcpSocket (QTcpSocketPrivate &dd, QObject *parent=0)
 
- Protected Functions inherited from QAbstractSocket
 QAbstractSocket (SocketType socketType, QAbstractSocketPrivate &dd, QObject *parent=0)
 Constructs a new abstract socket of type socketType. More...
 
qint64 readData (char *data, qint64 maxlen)
 Reimplemented Function More...
 
qint64 readLineData (char *data, qint64 maxlen)
 Reimplemented Function More...
 
void setLocalAddress (const QHostAddress &address)
 Sets the address on the local side of a connection to address. More...
 
void setLocalPort (quint16 port)
 Sets the port on the local side of a connection to port. More...
 
void setPeerAddress (const QHostAddress &address)
 Sets the address of the remote side of the connection to address. More...
 
void setPeerName (const QString &name)
 Sets the host name of the remote peer to name. More...
 
void setPeerPort (quint16 port)
 Sets the port of the remote side of the connection to port. More...
 
void setSocketError (SocketError socketError)
 Sets the type of error that last occurred to socketError. More...
 
void setSocketState (SocketState state)
 Sets the state of the socket to state. More...
 
qint64 writeData (const char *data, qint64 len)
 Reimplemented Function More...
 
- Protected Functions inherited from QIODevice
 QIODevice (QIODevicePrivate &dd, QObject *parent=0)
 
void setErrorString (const QString &errorString)
 Sets the human readable description of the last device error that occurred to str. More...
 
void setOpenMode (OpenMode openMode)
 Sets the OpenMode of the device to openMode. More...
 
- Protected Functions inherited from QObject
virtual void childEvent (QChildEvent *)
 This event handler can be reimplemented in a subclass to receive child events. More...
 
virtual void connectNotify (const char *signal)
 This virtual function is called when something has been connected to signal in this object. More...
 
virtual void customEvent (QEvent *)
 This event handler can be reimplemented in a subclass to receive custom events. More...
 
virtual void disconnectNotify (const char *signal)
 This virtual function is called when something has been disconnected from signal in this object. More...
 
 QObject (QObjectPrivate &dd, QObject *parent=0)
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal. More...
 
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns 0. More...
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *)
 This event handler can be reimplemented in a subclass to receive timer events for the object. More...
 

Additional Inherited Members

- Public Types inherited from QAbstractSocket
enum  NetworkLayerProtocol { IPv4Protocol, IPv6Protocol, UnknownNetworkLayerProtocol = -1 }
 This enum describes the network layer protocol values used in Qt. More...
 
enum  SocketError {
  ConnectionRefusedError, RemoteHostClosedError, HostNotFoundError, SocketAccessError,
  SocketResourceError, SocketTimeoutError, DatagramTooLargeError, NetworkError,
  AddressInUseError, SocketAddressNotAvailableError, UnsupportedSocketOperationError, UnfinishedSocketOperationError,
  ProxyAuthenticationRequiredError, SslHandshakeFailedError, ProxyConnectionRefusedError, ProxyConnectionClosedError,
  ProxyConnectionTimeoutError, ProxyNotFoundError, ProxyProtocolError, UnknownSocketError = -1
}
 This enum describes the socket errors that can occur. More...
 
enum  SocketOption { LowDelayOption, KeepAliveOption, MulticastTtlOption, MulticastLoopbackOption }
 This enum represents the options that can be set on a socket. More...
 
enum  SocketState {
  UnconnectedState, HostLookupState, ConnectingState, ConnectedState,
  BoundState, ListeningState, ClosingState
}
 This enum describes the different states in which a socket can be. More...
 
enum  SocketType { TcpSocket, UdpSocket, UnknownSocketType = -1 }
 This enum describes the transport layer protocol. More...
 
- Public Types inherited from QIODevice
enum  OpenModeFlag {
  NotOpen = 0x0000, ReadOnly = 0x0001, WriteOnly = 0x0002, ReadWrite = ReadOnly | WriteOnly,
  Append = 0x0004, Truncate = 0x0008, Text = 0x0010, Unbuffered = 0x0020
}
 This enum is used with open() to describe the mode in which a device is opened. More...
 
- Public Slots inherited from QObject
void deleteLater ()
 Schedules this object for deletion. More...
 
- Signals inherited from QAbstractSocket
void connected ()
 This signal is emitted after connectToHost() has been called and a connection has been successfully established. More...
 
void disconnected ()
 This signal is emitted when the socket has been disconnected. More...
 
void error (QAbstractSocket::SocketError)
 This signal is emitted after an error occurred. More...
 
void hostFound ()
 This signal is emitted after connectToHost() has been called and the host lookup has succeeded. More...
 
void proxyAuthenticationRequired (const QNetworkProxy &proxy, QAuthenticator *authenticator)
 
void stateChanged (QAbstractSocket::SocketState)
 This signal is emitted whenever QAbstractSocket's state changes. More...
 
- Signals inherited from QIODevice
void aboutToClose ()
 This signal is emitted when the device is about to close. More...
 
void bytesWritten (qint64 bytes)
 This signal is emitted every time a payload of data has been written to the device. More...
 
void readChannelFinished ()
 This signal is emitted when the input (reading) stream is closed in this device. More...
 
void readyRead ()
 This signal is emitted once every time new data is available for reading from the device. More...
 
- Signals inherited from QObject
void destroyed (QObject *=0)
 This signal is emitted immediately before the object obj is destroyed, and can not be blocked. More...
 
- Static Public Functions inherited from QObject
static bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 Creates a connection of the given type from the signal in the sender object to the method in the receiver object. More...
 
static bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 Disconnects signal in object sender from method in object receiver. More...
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static uint registerUserData ()
 
static QString tr (const char *sourceText, const char *comment=0, int n=-1)
 
static QString trUtf8 (const char *sourceText, const char *comment=0, int n=-1)
 
- Static Public Variables inherited from QObject
static const QMetaObject staticMetaObject
 This variable stores the meta-object for the class. More...
 
- Protected Slots inherited from QAbstractSocket
void connectToHostImplementation (const QString &hostName, quint16 port, OpenMode mode=ReadWrite)
 Contains the implementation of connectToHost(). More...
 
void disconnectFromHostImplementation ()
 Contains the implementation of disconnectFromHost(). More...
 
- Protected Variables inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Static Protected Variables inherited from QObject
static const QMetaObject staticQtMetaObject
 

Detailed Description

The QTcpSocket class provides a TCP socket.

Note
This class or function is reentrant.
Attention
Module: QtNetwork

TCP (Transmission Control Protocol) is a reliable, stream-oriented, connection-oriented transport protocol. It is especially well suited for continuous transmission of data.

QTcpSocket is a convenience subclass of QAbstractSocket that allows you to establish a TCP connection and transfer streams of data. See the QAbstractSocket documentation for details.

Note: TCP sockets cannot be opened in QIODevice::Unbuffered mode.

Symbian Platform Security Requirements

On Symbian, processes which use this class must have the NetworkServices platform security capability. If the client process lacks this capability, it will result in a panic.

Platform security capabilities are added via the TARGET.CAPABILITY qmake variable.

See also
QTcpServer, QUdpSocket, QFtp, QNetworkAccessManager, {Fortune Server Example}, {Fortune Client Example}, {Threaded Fortune Server Example}, {Blocking Fortune Client Example}, {Loopback Example}, {Torrent Example}

Definition at line 56 of file qtcpsocket.h.

Constructors and Destructors

◆ QTcpSocket() [1/2]

QTcpSocket::QTcpSocket ( QObject parent = 0)
explicit

Creates a QTcpSocket object in state UnconnectedState.

parent is passed on to the QObject constructor.

See also
socketType()

Definition at line 96 of file qtcpsocket.cpp.

98 {
99 #if defined(QTCPSOCKET_DEBUG)
100  qDebug("QTcpSocket::QTcpSocket()");
101 #endif
102  d_func()->isBuffered = true;
103 }
Q_CORE_EXPORT void qDebug(const char *,...)
QAbstractSocket(SocketType socketType, QObject *parent)
Creates a new abstract socket of type socketType.

◆ ~QTcpSocket()

QTcpSocket::~QTcpSocket ( )
virtual

Destroys the socket, closing the connection if necessary.

See also
close()

Definition at line 111 of file qtcpsocket.cpp.

112 {
113 #if defined(QTCPSOCKET_DEBUG)
114  qDebug("QTcpSocket::~QTcpSocket()");
115 #endif
116 }
Q_CORE_EXPORT void qDebug(const char *,...)

◆ QTcpSocket() [2/2]

QTcpSocket::QTcpSocket ( QTcpSocketPrivate dd,
QObject parent = 0 
)
protected
Warning
This function is not part of the public interface.

Definition at line 121 of file qtcpsocket.cpp.

122  : QAbstractSocket(TcpSocket, dd, parent)
123 {
124  d_func()->isBuffered = true;
125 }
QAbstractSocket(SocketType socketType, QObject *parent)
Creates a new abstract socket of type socketType.

The documentation for this class was generated from the following files: