// Purpose: wxSocketImpl nd related declarations
// Authors: Guilhem Lavaux, Vadim Zeitlin
// Created: April 1997
-// RCS-ID: $Id$
+// RCS-ID: $Id: socket.h 56994 2008-11-28 12:47:07Z VZ $
// Copyright: (c) 1997 Guilhem Lavaux
// (c) 2008 Vadim Zeitlin
// Licence: wxWindows licence
- wxSocketImpl is actually just an abstract base class having only code
common to all platforms, the concrete implementation classes derive from
- it and are created by wxSocketManager::CreateSocket().
+ it and are created by wxSocketImpl::Create().
- Some socket operations have different implementations in console-mode and
GUI applications. wxSocketManager class exists to abstract this in such
virtual void OnExit() = 0;
- // create a concrete socket implementation associated with the given
- // wxSocket object
- //
- // the returned object must be deleted by the caller
- virtual wxSocketImpl *CreateSocket(wxSocketBase& wxsocket) = 0;
-
-
-
// these functions enable or disable monitoring of the given socket for the
// specified events inside the currently running event loop (but notice
// that both BSD and Winsock implementations actually use socket->m_server
BSD and Winsock sockets.
Objects of this class are not created directly but only via its static
- Create() method which in turn forwards to wxSocketManager::CreateSocket().
+ Create() method which is implemented in port-specific code.
*/
class wxSocketImpl
{
// named) OnRequest() method
void NotifyOnStateChange(wxSocketNotify event);
- // FIXME: making these functions virtual is a hack necessary to make the
- // wxBase library link without requiring wxNet under Unix where
- // wxSocketSelectManager (part of wxBase) uses them, they don't
- // really need to be virtual at all
- virtual void Detected_Read() { }
- virtual void Detected_Write() { }
+ // FIXME: this one probably isn't needed here at all
virtual void Notify(bool WXUNUSED(notify)) { }
// TODO: make these fields protected and provide accessors for those of