#include <MetaClass.h>

Public Member Functions | |
| template<typename T > | |
| T * | Create (const MetaArguments &rArgs=MetaArguments::Empty()) const |
| template<typename T > | |
| void | Destroy (const T *pObject) const |
| const MetaClass & | GetBase (kt_size_t index) const |
| kt_size_t | GetBaseSize () const |
| const karto::String & | GetName () const |
| kt_bool | operator!= (const MetaClass &rOther) const |
| kt_bool | operator== (const MetaClass &rOther) const |
Static Public Member Functions | |
| template<typename T > | |
| static MetaClassHelper< T > | Register (const karto::String &rName) |
Private Member Functions | |
| MetaClass (const karto::String &rName) | |
| ~MetaClass () | |
Private Attributes | |
| List< const MetaClass * > | m_BaseClasses |
| List< const MetaConstructor * > | m_Constructors |
| karto::String | m_Name |
Friends | |
| class | MetaClassHelper |
| class | MetaClassManager |
The MetaClass contains information about a C++ class with constructors, attributes, base classes
Definition at line 262 of file MetaClass.h.
| karto::MetaClass::MetaClass | ( | const karto::String & | rName | ) | [private] |
Definition at line 99 of file MetaClass.cpp.
| karto::MetaClass::~MetaClass | ( | ) | [private] |
Definition at line 104 of file MetaClass.cpp.
| T* karto::MetaClass::Create | ( | const MetaArguments & | rArgs = MetaArguments::Empty() | ) | const [inline] |
Creates a new instance of the C++ class described by the MetaClass
| rArgs | arguments for constructor |
Definition at line 304 of file MetaClass.h.
| void karto::MetaClass::Destroy | ( | const T * | pObject | ) | const [inline] |
Destroys an instance of the C++ class described by the MetaClass
Definition at line 330 of file MetaClass.h.
| const MetaClass & karto::MetaClass::GetBase | ( | kt_size_t | index | ) | const |
| kt_size_t karto::MetaClass::GetBaseSize | ( | ) | const |
Gets the number of base classes
Definition at line 113 of file MetaClass.cpp.
| const karto::String & karto::MetaClass::GetName | ( | ) | const |
Gets the name of the MetaClass
Definition at line 108 of file MetaClass.cpp.
| bool karto::MetaClass::operator!= | ( | const MetaClass & | rOther | ) | const |
Inequality operator checks inequality between two MetaClasses
| rOther |
Definition at line 134 of file MetaClass.cpp.
| bool karto::MetaClass::operator== | ( | const MetaClass & | rOther | ) | const |
Equality operator checks equality between two MetaClasses.
| rOther |
Definition at line 129 of file MetaClass.cpp.
| static MetaClassHelper<T> karto::MetaClass::Register | ( | const karto::String & | rName | ) | [inline, static] |
Registers a new MetaClass by name.
| rName | Name of new MetaClass |
Definition at line 271 of file MetaClass.h.
friend class MetaClassHelper [friend] |
Reimplemented from karto::MetaAttribute.
Definition at line 355 of file MetaClass.h.
friend class MetaClassManager [friend] |
Definition at line 356 of file MetaClass.h.
List<const MetaClass*> karto::MetaClass::m_BaseClasses [private] |
Definition at line 359 of file MetaClass.h.
List<const MetaConstructor*> karto::MetaClass::m_Constructors [private] |
Definition at line 361 of file MetaClass.h.
karto::String karto::MetaClass::m_Name [private] |
Definition at line 358 of file MetaClass.h.