PTLib  Version 2.18.8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
psockbun.h File Reference
#include <ptlib.h>
#include <ptlib/ipsock.h>
#include <ptlib/sockets.h>
#include <ptlib/safecoll.h>
#include <ptclib/pnat.h>
#include <map>
Include dependency graph for psockbun.h:

Go to the source code of this file.

Classes

class  PInterfaceFilter
 
class  PInterfaceMonitor
 This class is a singleton that will monitor the network interfaces on a machine and update a list aof clients on any changes to the number or addresses of the interfaces. More...
 
struct  PInterfaceMonitor::InterfaceChange
 Information on the interface change. More...
 
class  PMonitoredSockets
 This is a base class for UDP socket(s) that are monitored for interface changes. More...
 
struct  PMonitoredSockets::BundleParams
 
struct  PMonitoredSockets::SocketInfo
 
class  PMonitoredSocketChannel
 This class can be used to access the bundled/monitored UDP sockets using the PChannel API. More...
 
class  PMonitoredSocketBundle
 This concrete class bundles a set of UDP sockets which are dynamically adjusted as interfaces are added and removed from the system. More...
 
class  PSingleMonitoredSocket
 This concrete class monitors a single scoket bound to a specific interface or address. More...
 

Macros

#define PINTERFACE_MONITOR_FACTORY_NAME   "InterfaceMonitor"
 
#define PDECLARE_InterfaceNotifier(cls, fn)   PDECLARE_NOTIFIER2(PInterfaceMonitor, cls, fn, PInterfaceMonitor::InterfaceChange)
 Macro to declare correctly typed interface notifier. More...
 
#define PCREATE_InterfaceNotifier(fn)   PCREATE_NOTIFIER2(fn, PInterfaceMonitor::InterfaceChange)
 Macro to create correctly typed interface notifier. More...
 

Typedefs

typedef PSafePtr
< PMonitoredSockets
PMonitoredSocketsPtr
 

Macro Definition Documentation

#define PCREATE_InterfaceNotifier (   fn)    PCREATE_NOTIFIER2(fn, PInterfaceMonitor::InterfaceChange)

Macro to create correctly typed interface notifier.

#define PDECLARE_InterfaceNotifier (   cls,
  fn 
)    PDECLARE_NOTIFIER2(PInterfaceMonitor, cls, fn, PInterfaceMonitor::InterfaceChange)

Macro to declare correctly typed interface notifier.

#define PINTERFACE_MONITOR_FACTORY_NAME   "InterfaceMonitor"

Typedef Documentation