ROOT logo
ROOT » CINT » REFLEX » Reflex::UnionBuilderImpl

class Reflex::UnionBuilderImpl

Function Members (Methods)

public:
virtual~UnionBuilderImpl()
voidAddDataMember(const char* nam, const Reflex::Type& typ, size_t offs, 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)
voidAddItem(const char* nam, const Reflex::Type& typ)
voidAddProperty(const char* key, Reflex::Any value)
voidAddProperty(const char* key, const char* value)
Reflex::UnionBuilderImpl&operator=(const Reflex::UnionBuilderImpl&)
voidSetSizeOf(size_t size)
Reflex::TypeToType()
Reflex::UnionBuilderImplUnionBuilderImpl(const Reflex::UnionBuilderImpl&)
Reflex::UnionBuilderImplUnionBuilderImpl(const char* nam, size_t size, const type_info& ti, unsigned int modifiers = 0, Reflex::TYPE typ = UNION)
protected:
voidEnableCallback(const bool enable = true)

Data Members

private:
boolfCallbackEnabled
Reflex::MemberfLastMember
Reflex::Union*fUnion

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

UnionBuilderImpl(const char* nam, size_t size, const type_info& ti, unsigned int modifiers = 0, Reflex::TYPE typ = UNION)
 constructor 
virtual ~UnionBuilderImpl()
 destructor 
void AddItem(const char* nam, const Reflex::Type& typ)
   * AddItem will add one union item
   * @param Name the Name of the union item
   * @param At the At of the union item

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 union
   *
   * @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 union
   *
   * @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 AddProperty(const char* key, Any value)
   * AddProperty will add a PropertyNth to the PropertyNth stack
   * which will be emtpied with the next build of a union
   * or union item
   * @param  key the PropertyNth key
   * @param  value the value of the PropertyNth
   * @return a reference to the building class

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

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

void EnableCallback(const 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