ROOT logo
ROOT » CINT » REFLEX » Reflex::Scope

class Reflex::Scope

Function Members (Methods)

public:
~Scope()
static Reflex::Scope&__NIRVANA__()
voidAddBase(const Reflex::Base& b) const
voidAddBase(const Reflex::Type& bas, Reflex::OffsetFunction offsFP, unsigned int modifiers = 0) const
voidAddDataMember(const Reflex::Member& dm) const
Reflex::MemberAddDataMember(const char* name, const Reflex::Type& type, size_t offset, unsigned int modifiers = 0, char* interpreterOffset = 0) const
voidAddFunctionMember(const Reflex::Member& fm) const
Reflex::MemberAddFunctionMember(const char* name, const Reflex::Type& type, Reflex::StubFunction stubFP, void* stubCtx = 0, const char* params = 0, unsigned int modifiers = 0) const
voidAddMemberTemplate(const Reflex::MemberTemplate& mt) const
voidAddSubScope(const Reflex::Scope& sc) const
voidAddSubScope(const char* scope, Reflex::TYPE scopeType = NAMESPACE) const
voidAddSubType(const Reflex::Type& ty) const
voidAddSubType(const char* type, size_t size, Reflex::TYPE typeType, const type_info& typeInfo, unsigned int modifiers = 0) const
voidAddSubTypeTemplate(const Reflex::TypeTemplate& mt) const
voidAddUsingDirective(const Reflex::Scope& ud) const
Reflex::Base_IteratorBase_Begin() const
Reflex::Base_IteratorBase_End() const
Reflex::Reverse_Base_IteratorBase_RBegin() const
Reflex::Reverse_Base_IteratorBase_REnd() const
Reflex::BaseBaseAt(size_t nth) const
size_tBaseSize() const
static Reflex::ScopeByName(const string& name)
Reflex::Member_IteratorDataMember_Begin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Member_IteratorDataMember_End(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Reverse_Member_IteratorDataMember_RBegin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Reverse_Member_IteratorDataMember_REnd(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::MemberDataMemberAt(size_t nth, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::MemberDataMemberByName(const string& name, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
size_tDataMemberSize(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::ScopeDeclaringScope() const
Reflex::Member_IteratorFunctionMember_Begin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Member_IteratorFunctionMember_End(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Reverse_Member_IteratorFunctionMember_RBegin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Reverse_Member_IteratorFunctionMember_REnd(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::MemberFunctionMemberAt(size_t nth, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::MemberFunctionMemberByName(const string& name, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT, Reflex::EDELAYEDLOADSETTING allowDelayedLoad = DELAYEDLOAD_ON) const
Reflex::MemberFunctionMemberByName(const string& name, const Reflex::Type& signature, unsigned int modifers_mask = 0, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT, Reflex::EDELAYEDLOADSETTING allowDelayedLoad = DELAYEDLOAD_ON) const
Reflex::MemberFunctionMemberByNameAndSignature(const string& name, const Reflex::Type& signature, unsigned int modifers_mask = 0, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT, Reflex::EDELAYEDLOADSETTING allowDelayedLoad = DELAYEDLOAD_ON) const
size_tFunctionMemberSize(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
voidGenerateDict(Reflex::DictionaryGenerator& generator) const
static Reflex::ScopeGlobalScope()
boolHasBase(const Reflex::Type& cl) const
void*Id() const
boolIsClass() const
boolIsEnum() const
boolIsNamespace() const
boolIsPrivate() const
boolIsProtected() const
boolIsPublic() const
boolIsTemplateInstance() const
boolIsTopScope() const
boolIsUnion() const
Reflex::MemberLookupMember(const string& nam) const
Reflex::ScopeLookupScope(const string& nam) const
Reflex::TypeLookupType(const string& nam) const
Reflex::Member_IteratorMember_Begin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Member_IteratorMember_End(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Reverse_Member_IteratorMember_RBegin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::Reverse_Member_IteratorMember_REnd(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::MemberMemberAt(size_t nth, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::MemberMemberByName(const string& name, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::MemberMemberByName(const string& name, const Reflex::Type& signature, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
size_tMemberSize(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
Reflex::MemberTemplate_IteratorMemberTemplate_Begin() const
Reflex::MemberTemplate_IteratorMemberTemplate_End() const
Reflex::Reverse_MemberTemplate_IteratorMemberTemplate_RBegin() const
Reflex::Reverse_MemberTemplate_IteratorMemberTemplate_REnd() const
Reflex::MemberTemplateMemberTemplateAt(size_t nth) const
Reflex::MemberTemplateMemberTemplateByName(const string& nam) const
size_tMemberTemplateSize() const
stringName(unsigned int mod = 0) const
const char*Name_c_str() const
booloperator bool() const
Reflex::Typeoperator Reflex::Type() const
booloperator!=(const Reflex::Scope& rh) const
Reflex::PropertyListProperties() const
voidRemoveDataMember(const Reflex::Member& dm) const
voidRemoveFunctionMember(const Reflex::Member& fm) const
voidRemoveMemberTemplate(const Reflex::MemberTemplate& mt) const
voidRemoveSubScope(const Reflex::Scope& sc) const
voidRemoveSubType(const Reflex::Type& ty) const
voidRemoveSubTypeTemplate(const Reflex::TypeTemplate& tt) const
voidRemoveUsingDirective(const Reflex::Scope& ud) const
Reflex::ScopeScope(const Reflex::ScopeName* scopeName = 0)
Reflex::ScopeScope(const Reflex::Scope& rh)
static Reflex::Scope_IteratorScope_Begin()
static Reflex::Scope_IteratorScope_End()
static Reflex::Reverse_Scope_IteratorScope_RBegin()
static Reflex::Reverse_Scope_IteratorScope_REnd()
static Reflex::ScopeScopeAt(size_t nth)
static size_tScopeSize()
Reflex::TYPEScopeType() const
stringScopeTypeAsString() const
Reflex::Scope_IteratorSubScope_Begin() const
Reflex::Scope_IteratorSubScope_End() const
Reflex::Reverse_Scope_IteratorSubScope_RBegin() const
Reflex::Reverse_Scope_IteratorSubScope_REnd() const
Reflex::ScopeSubScopeAt(size_t nth) const
Reflex::ScopeSubScopeByName(const string& nam) const
size_tSubScopeLevel() const
size_tSubScopeSize() const
Reflex::Type_IteratorSubType_Begin() const
Reflex::Type_IteratorSubType_End() const
Reflex::Reverse_Type_IteratorSubType_RBegin() const
Reflex::Reverse_Type_IteratorSubType_REnd() const
Reflex::TypeSubTypeAt(size_t nth) const
Reflex::TypeSubTypeByName(const string& nam) const
size_tSubTypeSize() const
Reflex::TypeTemplate_IteratorSubTypeTemplate_Begin() const
Reflex::TypeTemplate_IteratorSubTypeTemplate_End() const
Reflex::Reverse_TypeTemplate_IteratorSubTypeTemplate_RBegin() const
Reflex::Reverse_TypeTemplate_IteratorSubTypeTemplate_REnd() const
Reflex::TypeTemplateSubTypeTemplateAt(size_t nth) const
Reflex::TypeTemplateSubTypeTemplateByName(const string& nam) const
size_tSubTypeTemplateSize() const
Reflex::Type_IteratorTemplateArgument_Begin() const
Reflex::Type_IteratorTemplateArgument_End() const
Reflex::Reverse_Type_IteratorTemplateArgument_RBegin() const
Reflex::Reverse_Type_IteratorTemplateArgument_REnd() const
Reflex::TypeTemplateArgumentAt(size_t nth) const
size_tTemplateArgumentSize() const
Reflex::TypeTemplateTemplateFamily() const
const Reflex::ScopeBase*ToScopeBase() const
voidUnload() const
voidUpdateMembers() const
Reflex::Scope_IteratorUsingDirective_Begin() const
Reflex::Scope_IteratorUsingDirective_End() const
Reflex::Reverse_Scope_IteratorUsingDirective_RBegin() const
Reflex::Reverse_Scope_IteratorUsingDirective_REnd() const
Reflex::ScopeUsingDirectiveAt(size_t nth) const
size_tUsingDirectiveSize() const

Data Members

private:
const Reflex::ScopeName*fScopeName

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

inline Scope(const ScopeName* scopeName)
inline Scope(const Scope& rh)
inline ~Scope()
operator bool() const
Base_Begin() const
Base_End() const
Base_RBegin() const
Base_REnd() const
DataMember_Begin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
DataMember_End(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
DataMember_RBegin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
DataMember_REnd(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
DeclaringScope() const
FunctionMember_Begin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
FunctionMember_End(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
FunctionMember_RBegin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
FunctionMember_REnd(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
GlobalScope()
Id() const
IsClass() const
IsEnum() const
IsNamespace() const
IsTemplateInstance() const
IsTopScope() const
IsUnion() const
MemberSize(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
MemberTemplate_Begin() const
MemberTemplate_End() const
MemberTemplate_RBegin() const
MemberTemplate_REnd() const
Name_c_str() const
Properties() const
ScopeType() const
ScopeTypeAsString() const
Scope_Begin()
Scope_End()
Scope_RBegin()
Scope_REnd()
SubScopeAt(size_t nth) const
SubScopeLevel() const
SubScopeSize() const
SubScopeByName(const string& nam) const
SubScope_Begin() const
SubScope_End() const
SubScope_RBegin() const
SubScope_REnd() const
SubType_Begin() const
SubType_End() const
SubType_RBegin() const
SubType_REnd() const
ToScopeBase() const
SubTypeTemplate_Begin() const
SubTypeTemplate_End() const
SubTypeTemplate_RBegin() const
SubTypeTemplate_REnd() const
UsingDirectiveAt(size_t nth) const
UsingDirectiveSize() const
UsingDirective_Begin() const
UsingDirective_End() const
UsingDirective_RBegin() const
UsingDirective_REnd() const
AddBase(const Reflex::Type& bas, Reflex::OffsetFunction offsFP, unsigned int modifiers = 0) const
AddBase(const Reflex::Base& b) const
AddSubScope(const Reflex::Scope& sc) const
AddSubScope(const char* scope, Reflex::TYPE scopeType = NAMESPACE) const
RemoveSubScope(const Reflex::Scope& sc) const
AddUsingDirective(const Reflex::Scope& ud) const
RemoveUsingDirective(const Reflex::Scope& ud) const
Base BaseAt(size_t nth) const
    * BaseAt will return the nth base class information
    * @param  nth base class
    * @return pointer to base class information

size_t BaseSize() const
    * BaseSize will return the number of base classes
    * @return number of base classes

Scope ByName(const string& name)
    * ByName will return reflection information of the scope passed as argument
    * @param  name fully qualified name of the scope
    * @return reflection information of the scope

Member DataMemberAt(size_t nth, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * DataMemberAt will return the nth data member of the type
    * @param  nth the nth data member
    * @return nth data member

size_t DataMemberSize(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * DataMemberByName will lookup a data member by name
    * @param  name of data member
    * @return data member


    * DataMemberSize will return the number of data members of this type
    * @return number of data members

Member FunctionMemberAt(size_t nth, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * FunctionMemberAt will return the nth function member of the type
    * @param  nth function member
    * @return reflection information of nth function member

Member FunctionMemberByName(const string& name, const Reflex::Type& signature, unsigned int modifers_mask = 0, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT, Reflex::EDELAYEDLOADSETTING allowDelayedLoad = DELAYEDLOAD_ON) const
    * FunctionMemberByName will return the member with the name,
    * optionally the signature of the function may be given as a type
    * @param  name of function member
    * @return reflection information of the function member


    * FunctionMemberByName will return the member with the name,
    * optionally the signature of the function may be given as a type
    * @param  name of function member
    * @param  signature of the member function
    * @modifiers_mask When matching, do not compare the listed modifiers
    * @return reflection information of the function member

 this overloading is unfortunate but I can't include Type.h here
size_t FunctionMemberSize(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * FunctionMemberByNameAndSignature will return the member with the name,
    * optionally the signature of the function may be given as a type
    * @param  name of function member
    * @param  signature of the member function
    * @modifiers_mask When matching, do not compare the listed modifiers
    * @return reflection information of the function member

 this overloading is unfortunate but I can't include Type.h here

    * FunctionMemberSize will return the number of function members of
    * this type
    * @return number of function members

void GenerateDict(Reflex::DictionaryGenerator& generator) const
    * GenerateDict will produce the dictionary information of this type
    * @param generator a reference to the dictionary generator instance

bool HasBase(const Reflex::Type& cl) const
    * HasBase will check whether this class has a base class given
    * as argument
    * @param  cl the base-class to check for
    * @return the Base info if it is found, an empty base otherwise (can be tested for bool)

bool IsPrivate() const
    * IsPrivate will check if the scope access is private
    * @return true if scope access is private

bool IsProtected() const
    * IsProtected will check if the scope access is protected
    * @return true if scope access is protected

bool IsPublic() const
    * IsPublic will check if the scope access is public
    * @return true if scope access is public

Member LookupMember(const string& nam) const
    * LookupMember will lookup a member in the current scope
    * @param nam the string representation of the member to lookup
    * @return if a matching member is found return it, otherwise return empty member

Type LookupType(const string& nam) const
    * LookupType will lookup a type in the current scope
    * @param nam the string representation of the type to lookup
    * @return if a matching type is found return it, otherwise return empty type

Scope LookupScope(const string& nam) const
    * LookupScope will lookup a scope in the current scope
    * @param nam the string representation of the scope to lookup
    * @return if a matching scope is found return it, otherwise return empty scope

Member MemberAt(size_t nth, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * MemberAt will return the nth member of the type
    * @param  nth member
    * @return reflection information nth member

Member MemberByName(const string& name, const Reflex::Type& signature, Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * MemberByName will return the first member with a given Name
    * @param  member name
    * @return reflection information of the member


    * MemberByName will return the first member with a given Name
    * @param  member name
    * @param  signature of the (function) member
    * @return reflection information of the member

 this overloading is unfortunate but I can't include Type.h here
Member_Iterator Member_Begin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * MemberSize will return the number of members
    * @return number of members


    * Member_Begin returns the begin of the container of members
    * @return begin of container of members

Member_Iterator Member_End(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * Member_End returns the end of the container of members
    * @return end of container of members

Reverse_Member_Iterator Member_RBegin(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * Member_RBegin returns the reverse begin of the container of members
    * @return reverse begin of container of members

Reverse_Member_Iterator Member_REnd(Reflex::EMEMBERQUERY inh = INHERITEDMEMBERS_DEFAULT) const
    * Member_REnd returns the reverse end of the container of members
    * @return reverse end of container of members

MemberTemplate MemberTemplateAt(size_t nth) const
    * MemberTemplateAt will return the nth member template of this type
    * @param nth member template
    * @return nth member template

size_t MemberTemplateSize() const
    * MemberTemplateSize will return the number of member templates in this scope
    * @return number of defined member templates

MemberTemplate MemberTemplateByName(const string& nam) const
    * MemberTemplateByName will return the member template representation in this
    * scope
    * @param string representing the member template to look for
    * @return member template representation of the looked up member

std::string Name(unsigned int mod = 0) const
    * Name returns the name of the type
    * @param  mod qualifiers can be or'ed
    *   FINAL     - resolve typedefs
    *   SCOPED    - fully scoped name
    *   QUALIFIED - cv, reference qualification
    * @return name of the type

Scope ScopeAt(size_t nth)
    * ScopeAt will return the nth scope defined in the system
    * @param  nth scope defined in the system
    * @return nth scope defined in the system

size_t ScopeSize()
    * ScopeSize will return the number of currently defined scopes
    * @return number of currently defined scopes

Type SubTypeAt(size_t nth) const
    * SubTypeAt will return the nth sub type
    * @param  nth sub type
    * @return reflection information of nth sub type

size_t SubTypeSize() const
    * SubTypeSize will return he number of sub types
    * @return number of sub types

Type SubTypeByName(const string& nam) const
    * SubTypeByName will return the Type representing the sub type
    * @param string of the unscoped sub type to look for
    * @return Type representation of the sub type

TypeTemplate SubTypeTemplateAt(size_t nth) const
    * SubTypeTemplateAt will return the nth type template of this type
    * @param nth type template
    * @return nth type template

size_t SubTypeTemplateSize() const
    * SubTypeTemplateSize will return the number of type templates in this scope
    * @return number of defined type templates

TypeTemplate SubTypeTemplateByName(const string& nam) const
    * SubTypeTemplateByName will return a type template defined in this scope looked up by
    * it's unscoped name
    * @param unscoped name of the type template to look for
    * @return TypeTemplate representation of the sub type template

Type TemplateArgumentAt(size_t nth) const
    * TemplateArgumentAt will return a pointer to the nth template argument
    * @param  nth nth template argument
    * @return reflection information of nth template argument

size_t TemplateArgumentSize() const
    * TemplateArgumentSize will return the number of template arguments
    * @return number of template arguments

Type_Iterator TemplateArgument_Begin() const
    * TemplateArgument_Begin returns the begin of the container of template arguments
    * @return begin of container of template arguments

Type_Iterator TemplateArgument_End() const
    * TemplateArgument_End returns the end of the container of template arguments
    * @return end of container of template arguments

Reverse_Type_Iterator TemplateArgument_RBegin() const
    * TemplateArgument_RBegin returns the reverse begin of the container of template arguments
    * @return reverse begin of container of template arguments

Reverse_Type_Iterator TemplateArgument_REnd() const
    * TemplateArgument_REnd returns the reverse end of the container of template arguments
    * @return reverse end of container of template arguments

TypeTemplate TemplateFamily() const
    * TemplateFamily returns the corresponding TypeTemplate if any
    * @return corresponding TypeTemplate

void Unload() const
    * Unload will unload the dictionary information of a scope

void UpdateMembers() const
    * UpdateMembers will update the list of Function/Data/Members with all
    * members of base classes currently availabe in the system, switching
    * INHERITEDMEMBERS_DEFAULT to INHERITEDMEMBERS_ALSO.

void AddDataMember(const Reflex::Member& dm) const
    * AddDataMember will add the information about a data member
    * @param dm data member to add

Member AddDataMember(const char* name, const Reflex::Type& type, size_t offset, unsigned int modifiers = 0, char* interpreterOffset = 0) const
    * AddDataMember will add the information about a data member
    * @param nam the name of the data member
    * @param typ the type of the data member
    * @param offs the offset of the data member relative to the beginning of the scope
    * @param modifiers of the data member

Member AddFunctionMember(const char* name, const Reflex::Type& type, Reflex::StubFunction stubFP, void* stubCtx = 0, const char* params = 0, unsigned int modifiers = 0) const
    * AddFunctionMember will add the information about a function member
    * @param fm function member to add


    * AddFunctionMember will add the information about a function member
    * @param nam the name of the function member
    * @param typ the type of the function member
    * @param stubFP a pointer to the stub function
    * @param stubCtx a pointer to the context of the function member
    * @param params a semi colon separated list of parameters
    * @param modifiers of the function member

void AddSubType(const Reflex::Type& ty) const
    * AddSubType will add a sub type to this type
    * @param ty sub type to add

void AddSubType(const char* type, size_t size, Reflex::TYPE typeType, const type_info& typeInfo, unsigned int modifiers = 0) const
    * AddSubType will add a sub type to this type
    * @param typ the name of the sub type
    * @param size the sizeof of the sub type
    * @param typeType the enum specifying the sub type
    * @param ti the type_info of the sub type
    * @param modifiers of the sub type

void RemoveDataMember(const Reflex::Member& dm) const
    * RemoveDataMember will remove the information about a data member
    * @param dm data member to remove

void RemoveFunctionMember(const Reflex::Member& fm) const
    * RemoveFunctionMember will remove the information about a function member
    * @param fm function member to remove

void RemoveMemberTemplate(const Reflex::MemberTemplate& mt) const
    * RemoveMemberTemplate will remove a member template from this scope
    * @param mt member template to remove

void RemoveSubType(const Reflex::Type& ty) const
    * RemoveSubType will remove a sub type from this type
    * @param sc sub type to remove

void RemoveSubTypeTemplate(const Reflex::TypeTemplate& tt) const
    * RemoveSubTypeTemplate will remove a sub type template from this scope
    * @param tt sub type template to remove

Scope& __NIRVANA__()
    * @label __NIRVANA__
    * @link association