#include <Reflex/Builder/ClassBuilder.h>
Public Member Functions | |
| ClassBuilder (const char *nam, const std::type_info &ti, size_t size, unsigned int modifiers=0, TYPE typ=CLASS) | |
| ClassBuilder (Class *cl) | |
| virtual | ~ClassBuilder () | 
| template<class C, class B> | |
| ClassBuilder & | AddBase (unsigned int modifiers=0) | 
| ClassBuilder & | AddBase (const Type &bas, OffsetFunction offsFP, unsigned int modifiers=0) | 
| template<class T> | |
| ClassBuilder & | AddDataMember (const char *nam, size_t offs, unsigned int modifiers=0) | 
| ClassBuilder & | AddDataMember (const Type &typ, const char *nam, size_t offs, unsigned int modifiers=0) | 
| template<class F> | |
| ClassBuilder & | AddFunctionMember (const char *nam, StubFunction stubFP, void *stubCtx=0, const char *params=0, unsigned int modifiers=0) | 
| ClassBuilder & | AddFunctionMember (const Type &typ, const char *nam, StubFunction stubFP, void *stubCtx=0, const char *params=0, unsigned int modifiers=0) | 
| template<typename TD> | |
| ClassBuilder & | AddTypedef (const char *def) | 
| ClassBuilder & | AddTypedef (const Type &typ, const char *def) | 
| ClassBuilder & | AddTypedef (const char *typ, const char *def) | 
| template<typename E> | |
| ClassBuilder & | AddEnum (const char *values, unsigned int modifiers=0) | 
| ClassBuilder & | AddEnum (const char *nam, const char *values, const std::type_info *ti=0, unsigned int modifiers=0) | 
| template<typename P> | |
| ClassBuilder & | AddProperty (const char *key, P value) | 
| ClassBuilder & | AddOnDemandDataMemberBuilder (OnDemandBuilderForScope *odb) | 
| ClassBuilder & | AddOnDemandFunctionMemberBuilder (OnDemandBuilderForScope *odb) | 
| ClassBuilder & | SetSizeOf (size_t size) | 
| Type | ToType () | 
Protected Member Functions | |
| ClassBuilder & | EnableCallback (bool enable=true) | 
Private Attributes | |
| ClassBuilderImpl | fClassBuilderImpl | 
Definition at line 169 of file ClassBuilder.h.
| Reflex::ClassBuilder::ClassBuilder | ( | const char * | nam, | |
| const std::type_info & | ti, | |||
| size_t | size, | |||
| unsigned int |  modifiers = 0,  | 
        |||
| TYPE |  typ = CLASS | |||
| ) | 
constructor
| Reflex::ClassBuilder::ClassBuilder | ( | Class * | cl | ) | 
| virtual Reflex::ClassBuilder::~ClassBuilder | ( | ) |  [virtual] | 
        
destructor
| Reflex::ClassBuilder & Reflex::ClassBuilder::AddBase | ( | unsigned int |  modifiers = 0           | 
          ) |  [inline] | 
        
AddBase will add the information about one BaseAt class
| Name | of the BaseAt class | |
| OffsetFP | function pointer for Offset calculation | |
| modifiers | the modifiers of the class | 
Definition at line 442 of file ClassBuilder.h.
References Reflex::ClassBuilderImpl::AddBase(), and fClassBuilderImpl.
| ClassBuilder& Reflex::ClassBuilder::AddBase | ( | const Type & | bas, | |
| OffsetFunction | offsFP, | |||
| unsigned int |  modifiers = 0 | |||
| ) | 
| Reflex::ClassBuilder & Reflex::ClassBuilder::AddDataMember | ( | const char * | nam, | |
| size_t | offs, | |||
| unsigned int |  modifiers = 0 | |||
| ) |  [inline] | 
        
AddDataMember will add the information about one data MemberAt of the class
| Name | of the data MemberAt | |
| Offset | of data MemberAt | |
| modifiers | the modifiers of the data MemberAt | 
Definition at line 450 of file ClassBuilder.h.
References Reflex::ClassBuilderImpl::AddDataMember(), and fClassBuilderImpl.
| ClassBuilder& Reflex::ClassBuilder::AddDataMember | ( | const Type & | typ, | |
| const char * | nam, | |||
| size_t | offs, | |||
| unsigned int |  modifiers = 0 | |||
| ) | 
| Reflex::ClassBuilder & Reflex::ClassBuilder::AddFunctionMember | ( | const char * | nam, | |
| StubFunction | stubFP, | |||
| void * |  stubCtx = 0,  | 
        |||
| const char * |  params = 0,  | 
        |||
| unsigned int |  modifiers = 0 | |||
| ) |  [inline] | 
        
AddFunctionMember will add the information about one function MemberAt of the class
| Name | of the function MemberAt | |
| function | templated function MemberAt to extract At information | |
| stubFP | Stub function pointer for the function | |
| stubCxt | Stub user context for the stub function | |
| params | pamater names and default values (semi-colon separated) | |
| modifiers | the modifiers of the data MemberAt | 
Definition at line 460 of file ClassBuilder.h.
References Reflex::ClassBuilderImpl::AddFunctionMember(), and fClassBuilderImpl.
| ClassBuilder& Reflex::ClassBuilder::AddFunctionMember | ( | const Type & | typ, | |
| const char * | nam, | |||
| StubFunction | stubFP, | |||
| void * |  stubCtx = 0,  | 
        |||
| const char * |  params = 0,  | 
        |||
| unsigned int |  modifiers = 0 | |||
| ) | 
| Reflex::ClassBuilder & Reflex::ClassBuilder::AddTypedef | ( | const char * | def | ) |  [inline] | 
        
Definition at line 472 of file ClassBuilder.h.
References Reflex::ClassBuilderImpl::AddTypedef(), and fClassBuilderImpl.
| ClassBuilder& Reflex::ClassBuilder::AddTypedef | ( | const Type & | typ, | |
| const char * | def | |||
| ) | 
| ClassBuilder& Reflex::ClassBuilder::AddTypedef | ( | const char * | typ, | |
| const char * | def | |||
| ) | 
| Reflex::ClassBuilder & Reflex::ClassBuilder::AddEnum | ( | const char * | values, | |
| unsigned int |  modifiers = 0 | |||
| ) |  [inline] | 
        
Definition at line 480 of file ClassBuilder.h.
References Reflex::ClassBuilderImpl::AddEnum(), Reflex::Tools::Demangle(), E, and fClassBuilderImpl.
| ClassBuilder& Reflex::ClassBuilder::AddEnum | ( | const char * | nam, | |
| const char * | values, | |||
| const std::type_info * |  ti = 0,  | 
        |||
| unsigned int |  modifiers = 0 | |||
| ) | 
| Reflex::ClassBuilder & Reflex::ClassBuilder::AddProperty | ( | const char * | key, | |
| P | value | |||
| ) |  [inline] | 
        
AddProperty will add a PropertyNth to the last defined data MemberAt, method or class.
| key | the PropertyNth key | |
| value | the value of the PropertyNth | 
Definition at line 489 of file ClassBuilder.h.
References Reflex::ClassBuilderImpl::AddProperty(), and fClassBuilderImpl.
| ClassBuilder& Reflex::ClassBuilder::AddOnDemandDataMemberBuilder | ( | OnDemandBuilderForScope * | odb | ) | 
Register an on demand data member builder with this class.
| ClassBuilder& Reflex::ClassBuilder::AddOnDemandFunctionMemberBuilder | ( | OnDemandBuilderForScope * | odb | ) | 
Register an on demand function member builder with this class.
| ClassBuilder& Reflex::ClassBuilder::SetSizeOf | ( | size_t | size | ) | 
SetSizeOf will set the SizeOf property for this class. It currently ignore all actual content. Size of the class
| Type Reflex::ClassBuilder::ToType | ( | ) | 
| ClassBuilder& Reflex::ClassBuilder::EnableCallback | ( | bool |  enable = true           | 
          ) |  [protected] | 
        
EnableCallback Enable or disable the callback call in the destructor
| enable | true to enable callback call, false to disable callback call | 
Definition at line 291 of file ClassBuilder.h.
Referenced by AddBase(), AddDataMember(), AddEnum(), AddFunctionMember(), AddProperty(), and AddTypedef().
 1.5.1