#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 |
Public Member Functions inherited from karto::MetaAttribute | |
const Any & | GetAttribute (const karto::String &rId) const |
kt_bool | HasAttribute (const karto::String &rId) const |
virtual | ~MetaAttribute () |
Public Member Functions inherited from karto::Referenced | |
Referenced () | |
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 | |
template<typename T > | |
class | MetaClassHelper |
class | MetaClassManager |
Additional Inherited Members | |
Protected Member Functions inherited from karto::MetaAttribute | |
void | AddAttribute (const karto::String &rId, const Any &rValue) const |
MetaAttribute () | |
Protected Member Functions inherited from karto::Referenced | |
kt_int32s | GetReferenceCount () |
kt_int32s | Reference () const |
kt_int32s | Unreference () const |
kt_int32s | UnreferenceNoDelete () const |
////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////
template <typename t>=""> class MetaClassHelper;
////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////
class MetaConstructor;
/** The MetaClass contains information about a C++ class with constructors, attributes, base classes
Definition at line 262 of file MetaClass.h.
|
private |
Definition at line 99 of file MetaClass.cpp.
|
private |
Definition at line 104 of file MetaClass.cpp.
|
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.
|
inline |
Destroys an instance of the C++ class described by the MetaClass
Definition at line 330 of file MetaClass.h.
Gets the base MetaClass at index
index | Base class index |
Exception | if index is out of range |
Definition at line 118 of file MetaClass.cpp.
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.
|
inlinestatic |
Registers a new MetaClass by name.
rName | Name of new MetaClass |
Definition at line 271 of file MetaClass.h.
|
friend |
Definition at line 355 of file MetaClass.h.
|
friend |
Definition at line 356 of file MetaClass.h.
Definition at line 359 of file MetaClass.h.
|
private |
Definition at line 361 of file MetaClass.h.
|
private |
Definition at line 358 of file MetaClass.h.