Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

notifier_ext.h File Reference

Go to the source code of this file.

Compounds

class  PNotifierList
class  PSmartNotifieeRegistrar
class  PSmartNotifierFunction

Defines

#define PDECLARE_SMART_NOTIFIEE   PSmartNotifieeRegistrar m_Registrar; \
#define PCREATE_SMART_NOTIFIEE   m_Registrar.Init(this)
#define PDECLARE_SMART_NOTIFIER(notifier, notifiee, func)
#define PCREATE_SMART_NOTIFIER(func)   PNotifier(new func##_PSmartNotifier(m_Registrar.GetID()))


Define Documentation

#define PCREATE_SMART_NOTIFIEE   m_Registrar.Init(this)
 

#define PCREATE_SMART_NOTIFIER func       PNotifier(new func##_PSmartNotifier(m_Registrar.GetID()))
 

#define PDECLARE_SMART_NOTIFIEE   PSmartNotifieeRegistrar m_Registrar; \
 

#define PDECLARE_SMART_NOTIFIER notifier,
notifiee,
func   
 

Value:

class func##_PSmartNotifier : public PSmartNotifierFunction { \
    public: \
      func##_PSmartNotifier(unsigned id) : PSmartNotifierFunction(id) { } \
      virtual void Call(PObject & note, INT extra) const \
      { \
          void * obj = GetNotifiee(); \
          if (obj) \
            ((notifiee*)obj)->func((notifier &)note, extra); \
          else \
                  PTRACE(2, "Invalid notifiee"); \
      } \
  }; \
  friend class func##_PSmartNotifier; \
  virtual void func(notifier & note, INT extra)


Generated on Wed Mar 2 19:54:33 2005 for PWLib by doxygen1.2.18