#include <string>
#include <atomic>
#include <map>
Go to the source code of this file.
◆ _STR
◆ DECLARE_CLASS
#define DECLARE_CLASS |
( |
|
name | ) |
|
Value:public: \
static const ClassInfo* ms_classinfo; \
public: \
virtual const ClassInfo* getClassInfo() const; \
static Object* createObject();
Definition at line 65 of file Object.h.
◆ DECLARE_TCLASS
#define DECLARE_TCLASS |
( |
|
name, |
|
|
|
T1 |
|
) |
| |
Value:public: \
static const ClassInfo ms_classinfo; \
public: \
virtual const ClassInfo* getClassInfo() const; \
static Object* createObject();
Definition at line 87 of file Object.h.
◆ DEFINE_CLASS
#define DEFINE_CLASS |
( |
|
name | ) |
template class name<DataType3d>; |
◆ DEFINE_UNIQUE_CLASS
#define DEFINE_UNIQUE_CLASS |
( |
|
name, |
|
|
|
type |
|
) |
| template class name<type>; |
◆ IMPLEMENT_CLASS
#define IMPLEMENT_CLASS |
( |
|
name | ) |
|
Value:
Object* name::createObject() \
{ return new name;}
#define IMPLEMENT_CLASS_COMMON(name, func)
Definition at line 79 of file Object.h.
◆ IMPLEMENT_CLASS_COMMON
#define IMPLEMENT_CLASS_COMMON |
( |
|
name, |
|
|
|
func |
|
) |
| |
Value:
\
const ClassInfo* name::getClassInfo() const \
{return name::ms_classinfo;}
Object *(* ObjectConstructorFn)(void)
Definition at line 73 of file Object.h.
◆ IMPLEMENT_CLASS_COMMON_1
#define IMPLEMENT_CLASS_COMMON_1 |
( |
|
name, |
|
|
|
T1, |
|
|
|
func |
|
) |
| |
Value:template<typename T1> \
const ClassInfo name<T1>::ms_classinfo(std::string(
_STR(name))+std::string(
"<")+T1::getName()+std::string(
">"), \
\
template<typename T1> \
const ClassInfo* name<T1>::getClassInfo() const \
{return &name<T1>::ms_classinfo;}
Definition at line 94 of file Object.h.
◆ IMPLEMENT_TCLASS
#define IMPLEMENT_TCLASS |
( |
|
name, |
|
|
|
T1 |
|
) |
| |
Value:
\
template<typename T1> \
Object* name<T1>::createObject() \
{ return new name<T1>;}
#define IMPLEMENT_CLASS_COMMON_1(name, T1, func)
Definition at line 103 of file Object.h.