30 typedef void* (*Creator)();
31 typedef void* (*ArrayCreator)(
SizeT);
Nebula's runtime type information for one class.
Definition rtti.h:27
Creator creator
Definition rtti.h:74
void * AllocInstanceMemoryArray(size_t num)
allocate instance memory array block (called by class new operator)
Definition rtti.cc:196
Util::FourCC GetFourCC() const
get four character code of class
Definition rtti.h:109
void *(*) ArrayCreator(SizeT)
Definition rtti.h:31
void Construct(const char *className, Util::FourCC fcc, Creator creatorFunc, ArrayCreator arrayCreatorFunc, const Core::Rtti *parentClass, SizeT instSize)
constructor method, called from the various constructors
Definition rtti.cc:18
void *(*) Creator()
define a creation callback function prototype
Definition rtti.h:30
SizeT instanceSize
Definition rtti.h:73
Util::FourCC fourCC
Definition rtti.h:72
SizeT GetInstanceSize() const
get instance size in bytes
Definition rtti.h:127
const Core::Rtti * GetParent() const
get pointer to parent class
Definition rtti.h:118
bool IsDerivedFrom(const Rtti &other) const
return true if this rtti is equal or derived from to other rtti
Definition rtti.cc:135
Rtti(const char *className, Util::FourCC fcc, Creator creatorFunc, ArrayCreator arrayCreatorFunc, const Core::Rtti *parentClass, SizeT instSize)
constructor
Definition rtti.cc:84
void FreeInstanceMemory(void *ptr)
free instance memory block (called by class delete operator)
Definition rtti.cc:206
bool operator==(const Rtti &rhs) const
equality operator
Definition rtti.h:82
Util::String name
Definition rtti.h:70
const Util::String & GetName() const
get class name
Definition rtti.h:100
void * CreateArray(SizeT num) const
create an array of objects of this class
Definition rtti.cc:118
ArrayCreator arrayCreator
Definition rtti.h:75
bool operator!=(const Rtti &rhs) const
inequality operator
Definition rtti.h:91
const Core::Rtti * parent
Definition rtti.h:71
void * AllocInstanceMemory()
allocate instance memory block (called by class new operator)
Definition rtti.cc:186
void * Create() const
create an object of this class
Definition rtti.cc:101
A four-character-code is a quasi-human-readable 32-bit-id.
Definition fourcc.h:19
Definition coreserver.cc:11
This defines the macros for Nebula's RTTI mechanism (__DeclareClass, __ImplementClass,...
Nebula's universal string class.
Definition string.h:50
int SizeT
Definition types.h:49