QAbstractSocketEngine Class Reference

#include <qabstractsocketengine_p.h>

Inheritance diagram for QAbstractSocketEngine:

Inheritance graph
[legend]
Collaboration diagram for QAbstractSocketEngine:

Collaboration graph
[legend]
List of all members.

Detailed Description

Definition at line 44 of file qabstractsocketengine_p.h.

Public Types

enum  SocketOption

Signals

void readNotification ()
void writeNotification ()
void exceptionNotification ()

Public Member Functions

 QAbstractSocketEngine (QObject *parent=0)
virtual bool initialize (QAbstractSocket::SocketType type, QAbstractSocket::NetworkLayerProtocol protocol=QAbstractSocket::IPv4Protocol)=0
virtual bool initialize (int socketDescriptor, QAbstractSocket::SocketState socketState=QAbstractSocket::ConnectedState)=0
virtual int socketDescriptor () const=0
virtual bool isValid () const=0
virtual bool connectToHost (const QHostAddress &address, quint16 port)=0
virtual bool bind (const QHostAddress &address, quint16 port)=0
virtual bool listen ()=0
virtual int accept ()=0
virtual void close ()=0
virtual qint64 bytesAvailable () const=0
virtual qint64 read (char *data, qint64 maxlen)=0
virtual qint64 write (const char *data, qint64 len)=0
virtual qint64 readDatagram (char *data, qint64 maxlen, QHostAddress *addr=0, quint16 *port=0)=0
virtual qint64 writeDatagram (const char *data, qint64 len, const QHostAddress &addr, quint16 port)=0
virtual bool hasPendingDatagrams () const=0
virtual qint64 pendingDatagramSize () const=0
virtual int option (SocketOption option) const =0
virtual bool setOption (SocketOption option, int value)=0
virtual bool waitForRead (int msecs=30000, bool *timedOut=0) const=0
virtual bool waitForWrite (int msecs=30000, bool *timedOut=0) const=0
virtual bool waitForReadOrWrite (bool *readyToRead, bool *readyToWrite, bool checkRead, bool checkWrite, int msecs=30000, bool *timedOut=0) const =0
QAbstractSocket::SocketError error () const
QString errorString () const
QAbstractSocket::SocketState state () const
QAbstractSocket::SocketType socketType () const
QAbstractSocket::NetworkLayerProtocol protocol () const
QHostAddress localAddress () const
quint16 localPort () const
QHostAddress peerAddress () const
quint16 peerPort () const
virtual bool isReadNotificationEnabled () const=0
virtual void setReadNotificationEnabled (bool enable)=0
virtual bool isWriteNotificationEnabled () const=0
virtual void setWriteNotificationEnabled (bool enable)=0
virtual bool isExceptionNotificationEnabled () const=0
virtual void setExceptionNotificationEnabled (bool enable)=0

Static Public Member Functions

static QAbstractSocketEnginecreateSocketEngine (const QHostAddress &address, QAbstractSocket::SocketType socketType, QObject *parent)
static QAbstractSocketEnginecreateSocketEngine (int socketDescripter, QObject *parent)

Protected Member Functions

 QAbstractSocketEngine (QAbstractSocketEnginePrivate &dd, QObject *parent=0)
void setError (QAbstractSocket::SocketError error, const QString &errorString) const
void setState (QAbstractSocket::SocketState state)
void setSocketType (QAbstractSocket::SocketType socketType)
void setProtocol (QAbstractSocket::NetworkLayerProtocol protocol)
void setLocalAddress (const QHostAddress &address)
void setLocalPort (quint16 port)
void setPeerAddress (const QHostAddress &address)
void setPeerPort (quint16 port)


Member Enumeration Documentation

enum QAbstractSocketEngine::SocketOption

Definition at line 54 of file qabstractsocketengine_p.h.


Constructor & Destructor Documentation

QAbstractSocketEngine::QAbstractSocketEngine ( QObject parent = 0  ) 

Definition at line 63 of file qabstractsocketengine.cpp.

00064     : QObject(*new QAbstractSocketEnginePrivate(), parent)
00065 {
00066 }

QAbstractSocketEngine::QAbstractSocketEngine ( QAbstractSocketEnginePrivate dd,
QObject parent = 0 
) [protected]

Definition at line 68 of file qabstractsocketengine.cpp.

00069     : QObject(dd, parent)
00070 {
00071 }


Member Function Documentation

QAbstractSocketEngine * QAbstractSocketEngine::createSocketEngine ( const QHostAddress address,
QAbstractSocket::SocketType  socketType,
QObject parent 
) [static]

Definition at line 73 of file qabstractsocketengine.cpp.

References i, mutex, and QObject::parent().

Referenced by createSocketEngine(), QAbstractSocketPrivate::initSocketLayer(), QTcpServer::listen(), QAbstractSocket::setSocketDescriptor(), and QTcpServer::setSocketDescriptor().

00074 {
00075     QMutexLocker locker(&socketHandlers()->mutex);
00076     for (int i = 0; i < socketHandlers()->size(); i++) {
00077         if (QAbstractSocketEngine *ret = socketHandlers()->at(i)->createSocketEngine(address, socketType, parent))
00078             return ret;
00079     }
00080     return new QNativeSocketEngine(parent);
00081 }

Here is the call graph for this function:

QAbstractSocketEngine * QAbstractSocketEngine::createSocketEngine ( int  socketDescripter,
QObject parent 
) [static]

Definition at line 83 of file qabstractsocketengine.cpp.

References createSocketEngine(), i, mutex, and QObject::parent().

00084 {
00085     QMutexLocker locker(&socketHandlers()->mutex);
00086     for (int i = 0; i < socketHandlers()->size(); i++) {
00087         if (QAbstractSocketEngine *ret = socketHandlers()->at(i)->createSocketEngine(socketDescripter, parent))
00088             return ret;
00089     }
00090     return new QNativeSocketEngine(parent);
00091 }

Here is the call graph for this function:

virtual bool QAbstractSocketEngine::initialize ( QAbstractSocket::SocketType  type,
QAbstractSocket::NetworkLayerProtocol  protocol = QAbstractSocket::IPv4Protocol 
) [pure virtual]

Referenced by QAbstractSocketPrivate::initSocketLayer().

virtual bool QAbstractSocketEngine::initialize ( int  socketDescriptor,
QAbstractSocket::SocketState  socketState = QAbstractSocket::ConnectedState 
) [pure virtual]

virtual int QAbstractSocketEngine::socketDescriptor (  )  const [pure virtual]

virtual bool QAbstractSocketEngine::isValid (  )  const [pure virtual]

Referenced by QAbstractSocketPrivate::_q_abortConnectionAttempt(), QAbstractSocketPrivate::flush(), and QAbstractSocketPrivate::readFromSocket().

virtual bool QAbstractSocketEngine::connectToHost ( const QHostAddress address,
quint16  port 
) [pure virtual]

Referenced by QAbstractSocketPrivate::_q_connectToNextAddress(), and QAbstractSocketPrivate::_q_testConnection().

virtual bool QAbstractSocketEngine::bind ( const QHostAddress address,
quint16  port 
) [pure virtual]

virtual bool QAbstractSocketEngine::listen (  )  [pure virtual]

virtual int QAbstractSocketEngine::accept (  )  [pure virtual]

Referenced by QTcpServerPrivate::_q_processIncomingConnection().

virtual void QAbstractSocketEngine::close (  )  [pure virtual]

Referenced by QAbstractSocketPrivate::resetSocketLayer().

virtual qint64 QAbstractSocketEngine::bytesAvailable (  )  const [pure virtual]

Referenced by QAbstractSocketPrivate::readFromSocket().

virtual qint64 QAbstractSocketEngine::read ( char *  data,
qint64  maxlen 
) [pure virtual]

Referenced by QAbstractSocketPrivate::readFromSocket().

virtual qint64 QAbstractSocketEngine::write ( const char *  data,
qint64  len 
) [pure virtual]

Referenced by QAbstractSocketPrivate::flush().

virtual qint64 QAbstractSocketEngine::readDatagram ( char *  data,
qint64  maxlen,
QHostAddress addr = 0,
quint16 port = 0 
) [pure virtual]

virtual qint64 QAbstractSocketEngine::writeDatagram ( const char *  data,
qint64  len,
const QHostAddress addr,
quint16  port 
) [pure virtual]

virtual bool QAbstractSocketEngine::hasPendingDatagrams (  )  const [pure virtual]

Referenced by QAbstractSocketPrivate::_q_canReadNotification().

virtual qint64 QAbstractSocketEngine::pendingDatagramSize (  )  const [pure virtual]

virtual int QAbstractSocketEngine::option ( SocketOption  option  )  const [pure virtual]

virtual bool QAbstractSocketEngine::setOption ( SocketOption  option,
int  value 
) [pure virtual]

virtual bool QAbstractSocketEngine::waitForRead ( int  msecs = 30000,
bool *  timedOut = 0 
) const [pure virtual]

virtual bool QAbstractSocketEngine::waitForWrite ( int  msecs = 30000,
bool *  timedOut = 0 
) const [pure virtual]

virtual bool QAbstractSocketEngine::waitForReadOrWrite ( bool *  readyToRead,
bool *  readyToWrite,
bool  checkRead,
bool  checkWrite,
int  msecs = 30000,
bool *  timedOut = 0 
) const [pure virtual]

QAbstractSocket::SocketError QAbstractSocketEngine::error (  )  const

Definition at line 93 of file qabstractsocketengine.cpp.

Referenced by QAbstractSocketPrivate::_q_connectToNextAddress(), QAbstractSocketPrivate::flush(), QSocks5SocketEngine::initialize(), QAbstractSocketPrivate::initSocketLayer(), and QAbstractSocketPrivate::readFromSocket().

00094 {
00095     return d_func()->socketError;
00096 }

QString QAbstractSocketEngine::errorString (  )  const

Definition at line 98 of file qabstractsocketengine.cpp.

Referenced by QAbstractSocketPrivate::_q_connectToNextAddress(), QAbstractSocketPrivate::flush(), QAbstractSocketPrivate::initSocketLayer(), QAbstractSocketPrivate::readFromSocket(), and setError().

00099 {
00100     return d_func()->socketErrorString;
00101 }

QAbstractSocket::SocketState QAbstractSocketEngine::state (  )  const

Definition at line 110 of file qabstractsocketengine.cpp.

Referenced by QAbstractSocketPrivate::_q_connectToNextAddress(), and QAbstractSocketPrivate::_q_testConnection().

00111 {
00112     return d_func()->socketState;
00113 }

QAbstractSocket::SocketType QAbstractSocketEngine::socketType (  )  const

Definition at line 120 of file qabstractsocketengine.cpp.

Referenced by QSocks5SocketEngine::bind(), QSocks5SocketEngine::connectToHost(), and QSocks5SocketEngine::waitForRead().

00121 {
00122     return d_func()->socketType;
00123 }

QAbstractSocket::NetworkLayerProtocol QAbstractSocketEngine::protocol (  )  const

Definition at line 130 of file qabstractsocketengine.cpp.

00131 {
00132     return d_func()->socketProtocol;
00133 }

QHostAddress QAbstractSocketEngine::localAddress (  )  const

Definition at line 140 of file qabstractsocketengine.cpp.

Referenced by QAbstractSocketPrivate::fetchConnectionParameters().

00141 {
00142     return d_func()->localAddress;
00143 }

quint16 QAbstractSocketEngine::localPort (  )  const

Definition at line 150 of file qabstractsocketengine.cpp.

Referenced by QAbstractSocketPrivate::fetchConnectionParameters().

00151 {
00152     return d_func()->localPort;
00153 }

QHostAddress QAbstractSocketEngine::peerAddress (  )  const

Definition at line 160 of file qabstractsocketengine.cpp.

Referenced by QAbstractSocketPrivate::fetchConnectionParameters().

00161 {
00162     return d_func()->peerAddress;
00163 }

quint16 QAbstractSocketEngine::peerPort (  )  const

Definition at line 170 of file qabstractsocketengine.cpp.

Referenced by QAbstractSocketPrivate::fetchConnectionParameters().

00171 {
00172     return d_func()->peerPort;
00173 }

virtual bool QAbstractSocketEngine::isReadNotificationEnabled (  )  const [pure virtual]

Referenced by QAbstractSocketPrivate::_q_canReadNotification(), and QTcpServerPrivate::_q_processIncomingConnection().

virtual void QAbstractSocketEngine::setReadNotificationEnabled ( bool  enable  )  [pure virtual]

Referenced by QAbstractSocketPrivate::_q_canReadNotification(), QTcpServerPrivate::_q_processIncomingConnection(), and QAbstractSocketPrivate::fetchConnectionParameters().

virtual bool QAbstractSocketEngine::isWriteNotificationEnabled (  )  const [pure virtual]

Referenced by QAbstractSocketPrivate::_q_canWriteNotification(), and QAbstractSocketPrivate::flush().

virtual void QAbstractSocketEngine::setWriteNotificationEnabled ( bool  enable  )  [pure virtual]

Referenced by QAbstractSocketPrivate::_q_abortConnectionAttempt(), QAbstractSocketPrivate::_q_canWriteNotification(), QAbstractSocketPrivate::_q_connectToNextAddress(), QAbstractSocketPrivate::fetchConnectionParameters(), and QAbstractSocketPrivate::flush().

virtual bool QAbstractSocketEngine::isExceptionNotificationEnabled (  )  const [pure virtual]

virtual void QAbstractSocketEngine::setExceptionNotificationEnabled ( bool  enable  )  [pure virtual]

void QAbstractSocketEngine::readNotification (  )  [signal]

Referenced by QNativeSocketEngine::setReadNotificationEnabled().

void QAbstractSocketEngine::writeNotification (  )  [signal]

Referenced by QNativeSocketEngine::setWriteNotificationEnabled().

void QAbstractSocketEngine::exceptionNotification (  )  [signal]

Referenced by QNativeSocketEngine::setExceptionNotificationEnabled().

void QAbstractSocketEngine::setError ( QAbstractSocket::SocketError  error,
const QString errorString 
) const [protected]

Definition at line 103 of file qabstractsocketengine.cpp.

References d, and errorString().

Referenced by QSocks5SocketEngine::bind(), QSocks5SocketEngine::connectToHost(), QSocks5SocketEngine::read(), QSocks5SocketEngine::waitForRead(), QSocks5SocketEngine::write(), and QSocks5SocketEngine::writeDatagram().

00104 {
00105     Q_D(const QAbstractSocketEngine);
00106     d->socketError = error;
00107     d->socketErrorString = errorString;
00108 }

Here is the call graph for this function:

void QAbstractSocketEngine::setState ( QAbstractSocket::SocketState  state  )  [protected]

Definition at line 115 of file qabstractsocketengine.cpp.

Referenced by QSocks5SocketEngine::bind(), QSocks5SocketEngine::connectToHost(), and QSocks5SocketEngine::read().

00116 {
00117     d_func()->socketState = state;
00118 }

void QAbstractSocketEngine::setSocketType ( QAbstractSocket::SocketType  socketType  )  [protected]

Definition at line 125 of file qabstractsocketengine.cpp.

00126 {
00127     d_func()->socketType = socketType;
00128 }

void QAbstractSocketEngine::setProtocol ( QAbstractSocket::NetworkLayerProtocol  protocol  )  [protected]

Definition at line 135 of file qabstractsocketengine.cpp.

00136 {
00137     d_func()->socketProtocol = protocol;
00138 }

void QAbstractSocketEngine::setLocalAddress ( const QHostAddress address  )  [protected]

Definition at line 145 of file qabstractsocketengine.cpp.

00146 {
00147     d_func()->localAddress = address;
00148 }

void QAbstractSocketEngine::setLocalPort ( quint16  port  )  [protected]

Definition at line 155 of file qabstractsocketengine.cpp.

00156 {
00157     d_func()->localPort = port;
00158 }

void QAbstractSocketEngine::setPeerAddress ( const QHostAddress address  )  [protected]

Definition at line 165 of file qabstractsocketengine.cpp.

Referenced by QSocks5SocketEngine::connectToHost().

00166 {
00167    d_func()->peerAddress = address;
00168 }

void QAbstractSocketEngine::setPeerPort ( quint16  port  )  [protected]

Definition at line 175 of file qabstractsocketengine.cpp.

Referenced by QSocks5SocketEngine::connectToHost().

00176 {
00177     d_func()->peerPort = port;
00178 }


The documentation for this class was generated from the following files:
Generated on Thu Mar 15 16:43:53 2007 for Qt 4.2 User's Guide by  doxygen 1.5.1