bearbecueLe 28/01/2011 à 12:03
const HellHeaven::HBO::CClassDefinition *__classname::GetClassDefinition() const \
{ \
HH_ONLY_IN_DEBUG(HH_ASSERT(TBaseObjectConstructor<__classname>::EveryBaseObjectMustInheritFrom_TBaseObjectConstructor() == 0xB000B1E5));/*HH_STATIC_ASSERT(TBaseObjectConstructor<__classname>::EveryBaseObjectMustInheritFrom_TBaseObjectConstructor == 0xB000B1E5);*/ \
HH_ASSERT_MESSAGE(_LocalDefinition != null, HBO_BUILD_REGISTRATION_ERROR_STRING_AND_ARGS(__classname)); \
return _LocalDefinition; \
} \
hh_u32 __classname::_GetFieldLeafID_FromLocalList(const char *name) \
{ \
HH_ASSERT(__classname::_LocalDefinition != null); \
CGuid id = HellHeaven::HBO::_InternalGetFieldLeafID(name, __classname::_LocalDefinition->m_Fields); \
HH_ASSERT(id.Valid()); \
return id + _LocalDefinition->m_FirstLocalFieldInFlattenedList; \
} \
HellHeaven::HBO::CClassDefinition *__classname::_SetupClassDefinition() \
{ \
HellHeaven::HBO::CClassDefinition *localDefinition = HH_NEW(HellHeaven::HBO::CClassDefinition); \
localDefinition->m_Sizeof = sizeof(__classname); \
localDefinition->m_Name = STRINGIFY(__classname); \
(*localDefinition)
//----------------------------------------------------------------------------
// class definition end tag