PTLib
Version 2.14.3
|
#include <ptlib.h>
#include <ptlib/ipsock.h>
#include <ptlib/sockets.h>
#include <ptlib/safecoll.h>
#include <ptclib/pnat.h>
#include <map>
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 |
#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" |