ROOT logo
ROOT » CINT » REFLEX » Reflex::ClassBuilderImpl

class Reflex::ClassBuilderImpl

Function Members (Methods)

public:
virtual~ClassBuilderImpl()
voidAddBase(const Reflex::Type& bas, Reflex::OffsetFunction offsFP, unsigned int modifiers = 0)
voidAddDataMember(const char* nam, const Reflex::Type& typ, size_t offs, unsigned int modifiers = 0)
voidAddEnum(const char* nam, const char* values, const type_info* ti, unsigned int modifiers = 0)
voidAddFunctionMember(const char* nam, const Reflex::Type& typ, Reflex::StubFunction stubFP, void* stubCtx = 0, const char* params = 0, unsigned int modifiers = 0)
voidAddProperty(const char* key, Reflex::Any value)
voidAddProperty(const char* key, const char* value)
voidAddTypedef(const Reflex::Type& typ, const char* def)
Reflex::ClassBuilderImplClassBuilderImpl(const Reflex::ClassBuilderImpl&)
Reflex::ClassBuilderImplClassBuilderImpl(const char* nam, const type_info& ti, size_t size, unsigned int modifiers = 0, Reflex::TYPE typ = CLASS)
Reflex::ClassBuilderImpl&operator=(const Reflex::ClassBuilderImpl&)
voidSetSizeOf(size_t size)
Reflex::TypeToType()
protected:
voidEnableCallback(bool enable = true)

Data Members

private:
boolfCallbackEnabled
Reflex::Class*fClass
Reflex::MemberfLastMember
boolfNewClass

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

ClassBuilderImpl(const char* nam, const type_info& ti, size_t size, unsigned int modifiers = 0, Reflex::TYPE typ = CLASS)
 constructor 
virtual ~ClassBuilderImpl()
 destructor 
void AddBase(const Reflex::Type& bas, Reflex::OffsetFunction offsFP, unsigned int modifiers = 0)
      * AddBase will add the information about one BaseAt class
      * @param  Name of the BaseAt class
      * @param  OffsetFP function pointer for Offset calculation
      * @param  modifiers the modifiers of the class

void AddDataMember(const char* nam, const Reflex::Type& typ, size_t offs, unsigned int modifiers = 0)
 AddDataMember will add the information about one data
      * MemberAt of the class
      *
      * @param  Name of the data MemberAt
      * @param  At of the data MemberAt
      * @param  Offset of the data MemberAt
      * @param  modifiers the modifiers of the data MemberAt

void AddFunctionMember(const char* nam, const Reflex::Type& typ, Reflex::StubFunction stubFP, void* stubCtx = 0, const char* params = 0, unsigned int modifiers = 0)
 AddFunctionMember will add the information about one
      * function MemberAt of the class
      *
      * @param  Name of the function MemberAt
      * @param  At of the function MemberAt
      * @param  stubFP Stub function pointer for the function
      * @param  stubCxt Stub user context for the stub function
      * @param  params parameter names and default values (semi-colon separated)
      * @param  modifiers the modifiers of the function MemberAt

void AddTypedef(const Reflex::Type& typ, const char* def)
void AddEnum(const char* nam, const char* values, const type_info* ti, unsigned int modifiers = 0)
void AddProperty(const char* key, Any value)
 This is for anonymous union support.
void addUnion(const char* nam, const char* values, const std::type_info& ti, unsigned int modifiers = 0);
 AddProperty will add a PropertyNth to the PropertyNth stack
      * which will be emtpied with the next call of a builder
      * class and attached to the item built with this call
      *
      * @param  key the PropertyNth key
      * @param  value the value of the PropertyNth

void AddProperty(const char* key, const char* value)
void SetSizeOf(size_t size)
 SetSizeOf will set the SizeOf property for this class.
      * It currently ignore all actual content.
      * @size Size of the class

Type ToType()
      * ToType will return the currently produced Type (class)
      * @return the type currently being built

void EnableCallback(bool enable = true)
       * EnableCallback Enable or disable the callback call in the destructor
       * @param  enable true to enable callback call, false to disable callback call