Inventor/elements/SoSubElement.h File Reference
#include <Inventor/elements/SoElement.h>
Go to the source code of this file.
Define Documentation
#define SO__ELEMENT_ABSTRACT_METHODS |
( |
className |
|
) |
|
#define SO__ELEMENT_ABSTRACT_VARS |
( |
className |
|
) |
|
Value:SoType className::classTypeId; \
int className::classStackIndex = 0; \
SoElement::SoElementKeyType className::s_classElementKey = SoElement::badElementKey();
#define SO_ELEMENT_ABSTRACT_HEADER |
( |
className |
|
) |
|
Value:public: \
\
static SoType getClassTypeId(); \
\
static int getClassStackIndex(); \
private: \
\
static SoElement::SoElementKeyType getClassElementKey(); \
virtual SoElement::SoElementKeyType getElementKey() const; \
virtual int getClassStackIndexInternal() const; \
private: \
className(); \
private: \
static int classStackIndex; \
static SoType classTypeId; \
static SoElement::SoElementKeyType s_classElementKey;
#define SO_ELEMENT_ABSTRACT_SOURCE |
( |
className |
|
) |
|
Value:
Returns the type identifier for this class.
Returns the stack id for this element. \ Returns the stack id for this element.
#define SO_ELEMENT_INIT_ABSTRACT_CLASS |
( |
className, |
|
|
parentClass |
|
) |
SO_ELEMENT_INIT_ABSTRACT_CLASS_INTERNAL(className, parentClass); |
#define SO_ELEMENT_INIT_ABSTRACT_CLASS_INTERNAL |
( |
className, |
|
|
parentClass |
|
) |
|
#define SO_ELEMENT_INIT_CLASS |
( |
className, |
|
|
parentClass |
|
) |
SO_ELEMENT_INIT_CLASS_INTERNAL(className, parentClass); |
#define SO_ELEMENT_INIT_CLASS_CHECK_PARENT |
( |
className, |
|
|
parentClass |
|
) |
|
Value:if (parentClass::getClassTypeId().isBad()) \
parentClass::initClass()
#define SO_ELEMENT_INIT_CLASS_INTERNAL |
( |
className, |
|
|
parentClass |
|
) |
|
Value:SO_ELEMENT_INIT_CLASS_CHECK_PARENT(className, parentClass); \
classTypeId = SoType::createType( parentClass::getClassTypeId(), \
SO__QUOTE(className), \
&className::createInstance); \
if (classStackIndex == 0) \
{ \
if (parentClass::getClassStackIndex() < 0) \
classStackIndex = createStackIndex(classTypeId); \
else \
classStackIndex = parentClass::getClassStackIndex(); \
} \
if(s_classElementKey == SoElement::badElementKey()) \
s_classElementKey = createElementKey();