class Core::Platform::PosixSocket
#include <coresocket.posix.h> class PosixSocket: public Core::Platform::ISocket { public: // construction PosixSocket(SocketID socket); PosixSocket( Sockets::AddressFamily addressFamily, Sockets::SocketType type, Sockets::ProtocolType protocol ); // methods virtual SocketID getDescriptor() const; virtual bool connect(const Sockets::SocketAddress& address); virtual bool disconnect(); virtual bool isConnected() const; virtual bool bind(const Sockets::SocketAddress& address); virtual bool listen(int maxConnections); virtual SocketID accept(); virtual bool getPeerAddress(Sockets::SocketAddress& address) const; virtual bool getLocalAddress(Sockets::SocketAddress& address) const; virtual bool setOption(int option, int value); virtual bool getOption(int& value, int option) const; virtual bool joinMulticastGroup( const Sockets::IPAddress& groupAddress, const Sockets::IPAddress& adapterAddress ); virtual bool leaveMulticastGroup( const Sockets::IPAddress& groupAddress, const Sockets::IPAddress& adapterAddress ); virtual bool isReadable(int timeout) const; virtual bool isWritable(int timeout) const; virtual bool isAnyError(int timeout) const; virtual int send(const void* buffer, int size, int flags); virtual int sendAll(const void* buffer, int size, int flags); virtual int receive(void* buffer, int size, int flags); virtual int getBytesAvailable(int& bytesAvailable); virtual int sendTo( const void* buffer, int size, const Sockets::SocketAddress& address, int flags ); virtual int receiveFrom( void* buffer, int size, Sockets::SocketAddress& address, int flags ); virtual int getErrorCode() const; virtual bool wouldBlockOperation(bool writeDirection) const; }; // direct descendants class AndroidSocket; class CocoaSocket; class LwIPSocket; class TI32Socket; class Win32Socket;
Inherited Members
public: // methods virtual SocketID getDescriptor() const = 0; virtual bool connect(const Sockets::SocketAddress& address) = 0; virtual bool disconnect() = 0; virtual bool isConnected() const = 0; virtual bool bind(const Sockets::SocketAddress& address) = 0; virtual bool listen(int maxConnections) = 0; virtual SocketID accept() = 0; virtual bool getPeerAddress(Sockets::SocketAddress& address) const = 0; virtual bool getLocalAddress(Sockets::SocketAddress& address) const = 0; virtual bool setOption(int option, int value) = 0; virtual bool getOption(int& value, int option) const = 0; virtual bool joinMulticastGroup( const Sockets::IPAddress& groupAddress, const Sockets::IPAddress& adapterAddress ) = 0; virtual bool leaveMulticastGroup( const Sockets::IPAddress& groupAddress, const Sockets::IPAddress& adapterAddress ) = 0; virtual bool isReadable(int timeout = 0) const = 0; virtual bool isWritable(int timeout = 0) const = 0; virtual bool isAnyError(int timeout = 0) const = 0; virtual int send(const void* buffer, int size, int flags = 0) = 0; virtual int sendAll(const void* buffer, int size, int flags = 0) = 0; virtual int receive(void* buffer, int size, int flags = 0) = 0; virtual int getBytesAvailable(int& bytesAvailable) = 0; virtual int sendTo( const void* buffer, int size, const Sockets::SocketAddress& address, int flags = 0 ) = 0; virtual int receiveFrom( void* buffer, int size, Sockets::SocketAddress& address, int flags = 0 ) = 0; virtual int getErrorCode() const = 0; virtual bool wouldBlockOperation(bool writeDirection) const = 0;