VideoTools
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
GNet Namespace Reference

Network classes. More...

Classes

class  Address
 The GNet::Address class encapsulates a TCP/UDP transport address. More...
 
class  AddressStorage
 and hiding the definition of sockaddr_storage. More...
 
class  Address4
 A 'sockaddr' wrapper class for IPv4 addresses. More...
 
class  Address6
 A 'sockaddr' wrapper class for IPv6 addresses. More...
 
class  AddressStorageImp
 A pimple-pattern implementation class used by GNet::AddressStorage. More...
 
class  BufferedServerPeer
 A ServerPeer that does line-buffering on input. More...
 
class  Client
 A HeapClient class that adds slot/signal signalling, connection/response timeouts, and input line buffering. More...
 
class  ClientPtr
 A smart pointer class for GNet::HeapClient that keeps track of when the contained instance deletes itself. More...
 
class  Connection
 An interface which provides address information for a network connection. More...
 
class  Descriptor
 A class that encapsulates a network file descriptor and hides knowledge of its o/s-spefific error value. More...
 
class  EventExceptionHandler
 An abstract interface for handling exceptions thrown out of event-loop callbacks (socket events and timer events). More...
 
class  EventHandler
 A base class for classes that handle asynchronous events from the event loop. More...
 
class  EventHandlerList
 A class that maps from a file descriptor to an event handler, used in the implemention of classes derived from GNet::EventLoop. More...
 
class  EventLoop
 An abstract base class for a singleton that keeps track of open sockets and their associated handlers. More...
 
class  FdSet
 An "fd_set" wrapper class used by GNet::EventLoopImp. More...
 
class  FutureEvent
 An object that hooks into the event loop and calls back to the client code with a small unsigned integer payload. More...
 
class  FutureEventHandler
 A callback interface for GNet::FutureEvent. More...
 
class  FutureEventImp
 A pimple-pattern implementation class used by GNet::FutureEvent. More...
 
class  HeapClient
 A SimpleClient class for client objects that manage their own lifetime on the heap. More...
 
class  HttpClientParser
 A parser for HTTP responses received from a remote server. More...
 
class  HttpClientProtocol
 A protocol driver for an http client. More...
 
class  LineBuffer
 A class which does line buffering. More...
 
class  LineBufferIterator
 An iterator class for GNet::LineBuffer that extracts complete lines. More...
 
class  Local
 A static class for getting information about the local machine's network name and address. More...
 
class  Location
 A class that holds a host/service name pair and the preferred address family (if any), and also the results of a name-to-address lookup, ie. More...
 
class  MonitorImp
 A pimple-pattern implementation class for GNet::Monitor. More...
 
class  Monitor
 A singleton for monitoring GNet::SimpleClient and GNet::ServerPeer connections and for storing their TLS certificates. More...
 
class  Request
 A base class for making asynchronous DNS requests under Windows. More...
 
class  HostRequest
 A derivation of GNet::Request used for hostname lookup requests. More...
 
class  ServiceRequest
 A derivation of GNet::Request used for service (port) lookup requests. More...
 
class  ResolverFuture
 Address a = f.get().first ;. More...
 
class  ResolverImp
 A private "pimple" implementation class used by GNet::Resolver to do asynchronous name resolution. More...
 
class  Resolver
 A class for synchronous or asynchronous network name to address resolution. More...
 
class  ServerPeerHandle
 A structure used in the implementation of GNet::Server. More...
 
class  Server
 A network server class which listens on a specific port and spins off ServerPeer objects for each incoming connection. More...
 
class  ServerPeer
 An abstract base class for the GNet::Server's connection to a remote client. More...
 
class  SimpleClient
 A class for making an outgoing connection to a remote server, with support for socket-level protocols such as TLS/SSL and SOCKS 4a. More...
 
class  Socket
 The Socket class encapsulates a non-blocking Unix socket file descriptor or a Windows 'SOCKET' handle. More...
 
class  AcceptPair
 A class which is used to return a new()ed socket to calling code, together with associated information. More...
 
class  StreamSocket
 A derivation of GNet::Socket for a stream socket. More...
 
class  DatagramSocket
 A derivation of GNet::Socket for a datagram socket. More...
 
class  SocketProtocolImp
 A pimple-pattern implementation class used by GNet::SocketProtocol. More...
 
class  SocketProtocol
 An interface for implementing a low-level TLS/SSL protocol layer on top of a connected non-blocking socket. More...
 
class  SocketProtocolSink
 to deliver data from a socket. More...
 
class  TimerBase
 An interface used by GNet::TimerList to keep track of pending timeouts and to deliver timeout events. More...
 
class  Timer
 A timer class template in which the timeout is delivered to the specified method. More...
 
class  TimerList
 A singleton which maintains a list of all Timer objects, and interfaces to the event loop on their behalf. More...
 
class  EventLoopImp
 A concrete implementation of GNet::EventLoop using select() in its implementation. More...
 

Functions

int inet_pton_imp (int f, const char *p, void *result)
 
const char * inet_ntop_imp (int f, void *ap, char *buffer, size_t n)
 
std::ostream & operator<< (std::ostream &stream, const Descriptor &d)
 
std::ostream & operator<< (std::ostream &stream, const SocketProtocolImp::Position &pos)
 
std::ostream & operator<< (std::ostream &stream, const SocketProtocolImp::Segment &segment)
 
std::ostream & operator<< (std::ostream &stream, const SocketProtocolImp::Segments &segments)
 

Detailed Description

Network classes.

Key classes are: