PTLib  Version 2.12.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
notifier_ext.h File Reference
#include <list>
Include dependency graph for notifier_ext.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  PValidatedNotifierTarget
 Validated PNotifier class. More...
 
class  PValidatedNotifierFunction< ParamType >
 This is an abstract class for which a descendent is declared for every function that may be called. More...
 
struct  PAsyncNotifierCallback
 
class  PAsyncNotifierTarget
 Asynchronous PNotifier class. More...
 
class  PAsyncNotifierFunction< ParamType >
 This is an abstract class for which a descendent is declared for every function that may be called. More...
 
class  PAsyncNotifierFunction< ParamType >::TypedCallback< Target >
 
class  PNotifierListTemplate< ParamType >
 Maintain a list of notifiers to be called all at once. More...
 
class  PNotifierListTemplate< ParamType >::IsObj
 

Macros

#define PDECLARE_VALIDATED_NOTIFIER2(notifier, notifiee, func, ParamType)   PDECLARE_NOTIFIER_COMMON(notifier, notifiee, func, ParamType, PValidatedNotifierFunction<ParamType>)
 Declare a validated notifier object class. More...
 
#define PDECLARE_VALIDATED_NOTIFIER(notifier, notifiee, func)   PDECLARE_VALIDATED_NOTIFIER2(notifier, notifiee, func, P_INT_PTR)
 Declare validated PNotifier derived class with INT parameter. Uses PDECLARE_VALIDATED_NOTIFIER2 macro. More...
 
#define PDECLARE_ASYNC_NOTIFIER2(notifier, notifiee, func, ParamType)
 Declare an asynchronous notifier object class. More...
 
#define PDECLARE_ASYNC_NOTIFIER(notifier, notifiee, func)   PDECLARE_ASYNC_NOTIFIER2(notifier, notifiee, func, P_INT_PTR)
 Declare an asynchronous PNotifier derived class with P_INT_PTR parameter. Uses PDECLARE_ASYNC_NOTIFIER2 macro. More...
 

Typedefs

typedef unsigned long PNotifierIdentifer
 
typedef PNotifierListTemplate
< P_INT_PTR
PNotifierList
 

Macro Definition Documentation

#define PDECLARE_ASYNC_NOTIFIER (   notifier,
  notifiee,
  func 
)    PDECLARE_ASYNC_NOTIFIER2(notifier, notifiee, func, P_INT_PTR)

Declare an asynchronous PNotifier derived class with P_INT_PTR parameter. Uses PDECLARE_ASYNC_NOTIFIER2 macro.

#define PDECLARE_ASYNC_NOTIFIER2 (   notifier,
  notifiee,
  func,
  ParamType 
)
Value:
PDECLARE_NOTIFIER_COMMON1(notifier, notifiee, func, ParamType, PAsyncNotifierFunction<ParamType>) \
{ PAsyncNotifierCallback::Queue(m_targetID, new TypedCallback<func##_PNotifier>(*this, note, extra)); } \
void AsyncCall(PObject & note, ParamType extra) const \
PDECLARE_NOTIFIER_COMMON2(notifier, notifiee, func, ParamType, PAsyncNotifierFunction<ParamType>) \

Declare an asynchronous notifier object class.

See PDECLARE_NOTIFIER2 for more information.

#define PDECLARE_VALIDATED_NOTIFIER (   notifier,
  notifiee,
  func 
)    PDECLARE_VALIDATED_NOTIFIER2(notifier, notifiee, func, P_INT_PTR)

Declare validated PNotifier derived class with INT parameter. Uses PDECLARE_VALIDATED_NOTIFIER2 macro.

#define PDECLARE_VALIDATED_NOTIFIER2 (   notifier,
  notifiee,
  func,
  ParamType 
)    PDECLARE_NOTIFIER_COMMON(notifier, notifiee, func, ParamType, PValidatedNotifierFunction<ParamType>)

Declare a validated notifier object class.

See PDECLARE_NOTIFIER2 for more information.

Typedef Documentation

typedef unsigned long PNotifierIdentifer