Open Inventor Reference
SoSubDetail.h File Reference

Go to the source code of this file.

Macros

#define SO_DETAIL_HEADER(className)
 Macros to be called within the class definition header for a detail subclass:
 
#define SO__DETAIL_ID_VARS(className)    SoType className::classTypeId
 Macros to be called within the source file for a detail subclass:
 
#define SO__DETAIL_ID_METHODS(className)
 This implements the methods defined in SO_DETAIL_HEADER.
 
#define SO_DETAIL_SOURCE(className)
 This contains the definitions necessary at file scope.
 
#define SO_DETAIL_INIT_CLASS(className, parentClass)
 This initializes the type identifer variables defined in SO_DETAIL_HEADER.
 

Macro Definition Documentation

◆ SO__DETAIL_ID_METHODS

#define SO__DETAIL_ID_METHODS (   className)
Value:
\
SoType \
className::getTypeId() const \
{ \
return classTypeId; \
}

Definition at line 109 of file SoSubDetail.h.

◆ SO__DETAIL_ID_VARS

#define SO__DETAIL_ID_VARS (   className)     SoType className::classTypeId

This declares the static variables defined in SO_DETAIL_HEADER.

Definition at line 101 of file SoSubDetail.h.

◆ SO_DETAIL_HEADER

#define SO_DETAIL_HEADER (   className)
Value:
public: \
virtual SoType getTypeId() const; \
static SoType getClassTypeId() { return classTypeId; } \
private: \
static SoType classTypeId
SoType has no virtual functions to keep it small...
Definition SoType.h:103

This defines type-identifier variables and methods that all subclasses must support.

Definition at line 84 of file SoSubDetail.h.

◆ SO_DETAIL_INIT_CLASS

#define SO_DETAIL_INIT_CLASS (   className,
  parentClass 
)
Value:
classTypeId = SoType::createType(parentClass::getClassTypeId(), \
SO__QUOTE(className), NULL)
#define SO__QUOTE(str)
Handy macros.
Definition SoBasic.h:69
static SoType createType(SoType parent, SbName name, void *(*createMethod)()=NULL, short data=0)
Create a new type.

This macro should be called from within initClass().

Definition at line 132 of file SoSubDetail.h.

◆ SO_DETAIL_SOURCE

#define SO_DETAIL_SOURCE (   className)
Value:
SO__DETAIL_ID_VARS(className); \
SO__DETAIL_ID_METHODS(className)
#define SO__DETAIL_ID_VARS(className)
Macros to be called within the source file for a detail subclass:

Definition at line 121 of file SoSubDetail.h.