QServerSocket Class Reference
[network module]
The QServerSocket class provides a TCP-based server.
More...
#include <qserversocket.h>
Inherits QObject.
List of all member functions.
Public Members
QServerSocket ( Q_UINT16 port, int backlog = 0, QObject * parent = 0, const char * name = 0 )
QServerSocket ( const QHostAddress & address, Q_UINT16 port, int backlog = 0, QObject * parent = 0, const char * name = 0 )
Protected Members
Detailed Description
The QServerSocket class provides a TCP-based server.
This class is a convenience class for accepting incoming TCP
connections. You can specify port or have QSocketServer pick one,
and listen on just one address or on all the addresses of the
machine.
The API is very simple: Subclass it, call the constructor of your
choice, and implement newConnection() to handle new incoming
connections. There is nothing more to do.
(Note that due to lack of support in the underlying APIs,
QServerSocket cannot accept or reject connections conditionally.)
See also QSocket, QSocketDevice, QHostAddress and QSocketNotifier.
Member Function Documentation
QServerSocket::QServerSocket ( Q_UINT16 port, int backlog = 0, QObject * parent = 0, const char * name = 0 )
Creates a server socket object, that will serve the given port on
all the addresses of this host. If port is 0, QServerSocket
picks a suitable port in in a system-dependent manner. With backlog you
can specify how many pending connections a server can have.
The parent and name arguments are passed on as usual
to the QObject constructor.
QServerSocket::QServerSocket ( const QHostAddress & address, Q_UINT16 port, int backlog = 0, QObject * parent = 0, const char * name = 0 )
Creates a server socket object, that will serve the given port
on just address. With backlog you can specify how many pending
connections a server can have.
The parent and name arguments are passed on as usual
to the QObject constructor.
QServerSocket::QServerSocket ( QObject * parent = 0, const char * name = 0 )
Construct an empty server socket.
This constructor in combination with setSocket() allows one to use the
QServerSocket class as a wrapper for other socket types (e.g. Unix Domain
Sockets under Unix).
The parent and name arguments are passed on as usual
to the QObject constructor.
See also setSocket().
QServerSocket::~QServerSocket () [virtual]
Destroys the socket.
This brutally severes any backlogged connections (connections that
have reached the host, but not yet been completely set up by calling
QSocketDevice::accept()).
Existing connections continue to exist; this only affects acceptance
of new connections.
QHostAddress QServerSocket::address () const
Returns the address on which this object listens, or 0.0.0.0 if
this object listens on more than one address. ok() must be TRUE before
calling this function.
See also port() and QSocketDevice::address().
void QServerSocket::newConnection ( int socket ) [virtual]
This pure virtual function is responsible for setting up a new
incoming connection. socket is the fd of the newly accepted
connection.
bool QServerSocket::ok () const
Tests that the construction succeeded.
Q_UINT16 QServerSocket::port () const
Returns the port number on which this object listens. This is
always non-zero; if you specify 0 in the constructor, QServerSocket
picks a port itself and port() returns its number. ok() must be TRUE before
calling this function.
See also address() and QSocketDevice::port().
Example: network/httpd/httpd.cpp.
void QServerSocket::setSocket ( int socket ) [virtual]
Sets the socket to use socket. bind() and listen() should already be
called For this socket.
This allows one to use the QServerSocket class as a wrapper for other socket
types (e.g. Unix Domain Sockets under Unix).
int QServerSocket::socket () const
Returns the operating system socket.
QSocketDevice * QServerSocket::socketDevice () [protected]
Returns a pointer to the internal socket device. The returned pointer is
null if there is no connection or pending connection.
There is normally no need to manipulate the socket device directly since this
class does all the necessary setup for most client or server socket
applications.
Search the documentation, FAQ, qt-interest archive and more (uses
www.trolltech.com):
This file is part of the Qt toolkit,
copyright © 1995-2001
Trolltech, all rights reserved.
Copyright © 2001 Trolltech | Trademarks
| Qt version 3.0.0-beta1-beta1
|