Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

rtti.H File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define IS(N)   (N == static_name())
#define ISA(O)   ((O) && (O)->is_of_type(static_name()))
#define ISOF(N, PAR)   (IS(N) || PAR::is_of_type(N))
#define ISOF2(N, PAR1, PAR2)   (IS(N) || PAR1::is_of_type(N) || PAR2::is_of_type(N))
#define STAT_STR_RET   Cstr_ptr &
#define DEFINE_RTTI_METHODS_BASE(CLASS_NAME, BASECLASS_PTR)
#define DEFINE_RTTI_METHODS2(CLASS_NAME, CLASS_PAR, BASECLASS_PTR)
#define DEFINE_RTTI_METHODS(CLASS_NAME, CLASS_PAR, BASECLASS_PTR)   DEFINE_RTTI_METHODS2(CLASS_NAME, CLASS_PAR, BASECLASS_PTR &)
#define DEFINE_UPCAST(CLASS_PTR, BASECLASS_PTR)
#define DEFINE_RTTI_METHODS3(CLASS_NAME, CLASS_PTR, CLASS_PAR, BASECLASS_PTR)


Define Documentation

#define DEFINE_RTTI_METHODS CLASS_NAME,
CLASS_PAR,
BASECLASS_PTR   )     DEFINE_RTTI_METHODS2(CLASS_NAME, CLASS_PAR, BASECLASS_PTR &)
 

Definition at line 41 of file rtti.H.

#define DEFINE_RTTI_METHODS2 CLASS_NAME,
CLASS_PAR,
BASECLASS_PTR   ) 
 

Value:

static  STAT_STR_RET static_name()         { RET_STAT_STR(CLASS_NAME);} \
   virtual STAT_STR_RET class_name () const   { return static_name(); } \
   virtual int  is_of_type(Cstr_ptr &n)const  { return ISOF(n,CLASS_PAR);} \
   static  int  isa       (BASECLASS_PTR o)   { return ISA (o); }

Definition at line 35 of file rtti.H.

#define DEFINE_RTTI_METHODS3 CLASS_NAME,
CLASS_PTR,
CLASS_PAR,
BASECLASS_PTR   ) 
 

Value:

DEFINE_RTTI_METHODS2(CLASS_NAME, CLASS_PAR, BASECLASS_PTR) \
   DEFINE_UPCAST(CLASS_PTR, BASECLASS_PTR)

Definition at line 55 of file rtti.H.

#define DEFINE_RTTI_METHODS_BASE CLASS_NAME,
BASECLASS_PTR   ) 
 

Value:

static  STAT_STR_RET static_name()         { RET_STAT_STR(CLASS_NAME); } \
   virtual STAT_STR_RET class_name () const   { return static_name(); } \
   virtual int  is_of_type(Cstr_ptr &n)const  { return n == static_name(); } \
   static  int  isa       (BASECLASS_PTR o)   { return ISA (o); }

Definition at line 26 of file rtti.H.

#define DEFINE_UPCAST CLASS_PTR,
BASECLASS_PTR   ) 
 

Value:

static CLASS_PTR upcast(BASECLASS_PTR p) { \
      return isa(p) ? (CLASS_PTR)p : 0; \
   }

Definition at line 47 of file rtti.H.

#define IS  )     (N == static_name())
 

Definition at line 10 of file rtti.H.

Referenced by RAYhit::is_of_type(), SCHEDULER::is_of_type(), and DATA_ITEM::is_of_type().

#define ISA  )     ((O) && (O)->is_of_type(static_name()))
 

Definition at line 11 of file rtti.H.

Referenced by RAYhit::isa(), SCHEDULER::isa(), and BMESHray::isa().

#define ISOF N,
PAR   )     (IS(N) || PAR::is_of_type(N))
 

Definition at line 12 of file rtti.H.

#define ISOF2 N,
PAR1,
PAR2   )     (IS(N) || PAR1::is_of_type(N) || PAR2::is_of_type(N))
 

Definition at line 14 of file rtti.H.

#define STAT_STR_RET   Cstr_ptr &
 

Definition at line 20 of file rtti.H.


Generated on Mon Sep 18 11:43:06 2006 for jot by  doxygen 1.4.4