Open Inventor Release 2024.1.2
No Matches
SoElement Class Referenceabstract

Abstract base class for all state elements. More...

#include <Inventor/elements/SoElement.h>

+ Inheritance diagram for SoElement:

Public Member Functions

virtual void push (SoState *state)
 Pushes element.
virtual void pop (SoState *state, const SoElement *prevTopElement)
 Pops element.
virtual void print (FILE *fp) const
 Prints element (for debugging).
virtual SoType getTypeId () const
 Returns type identifier for element instance.
- Public Member Functions inherited from SoTypedObject
SbBool isOfType (const SoType &type) const
 Returns TRUE if this object is of the type specified in type or is derived from that type.
template<typename TypedObjectClass >
SbBool isOfType () const
 Returns TRUE if this object is of the type of class TypedObjectClass or is derived from that class.

Static Public Member Functions

static SoType getClassTypeId ()
 Returns type identifier for SoElement class.
- Static Public Member Functions inherited from SoTypedObject
static SoType getClassTypeId ()
 Returns the type identifier for this class.


class SoState
class SoCache
class SoBoundingBoxCache
class inventor::impl::SoGLCacheListImpl
class SoGLViewingMatrixElement

Detailed Description

Abstract base class for all state elements.

This is the abstract base class for all state elements. This class defines the following features for all of its derived classes:

<B> Type identifiers: </B> Each class of element has a unique (static)
SoType identifier. The correct type id is also stored in each
instance for easy access.

<B> Copying: </B> Elements are copied into the list of elements used
in an SoCache. Performing any operation other than matches()
on a copied element is not guaranteed to work (and will not
work for things like Coordinates, if the coordinate they were
pointing to has been deleted).

<B> Stack indices: </B> Since a subclass of an element class needs to
be in the same state stack as the class from which it is
derived, stack indices are inherited.

<B> Capturing: </B> Each time an element's value is accessed, that
element is added to the elements-used list of all currently
open caches.


Definition at line 102 of file SoElement.h.

Member Function Documentation

◆ getClassTypeId()

static SoType SoElement::getClassTypeId ( )

Returns type identifier for SoElement class.

◆ getTypeId()

virtual SoType SoElement::getTypeId ( ) const

Returns type identifier for element instance.

Implements SoTypedObject.

Definition at line 131 of file SoElement.h.

◆ pop()

◆ print()

virtual void SoElement::print ( FILE *  fp) const

Prints element (for debugging).

Reimplemented in SoAccumulatedElement, SoBBoxTypeElement, SoBevelPropertyElement, SoBlendElement, SoClipPlaneElement, SoComplexityTypeElement, SoCoordinateElement, SoCreaseAngleElement, SoDecimationTypeElement, SoDepthBufferElement, SoDrawBufferElement, SoDrawStyleElement, SoEdgeFlagElement, SoFloatElement, SoFontNameElement, SoFontRenderStyleElement, SoGeoOriginElement, SoGeoRenderElement, SoInt32Element, SoLazyElement, SoLightAttenuationElement, SoLinePatternElement, SoLocalBBoxMatrixElement, SoLogicalViewportElement, SoLogicOperationElement, SoMaterialBindingElement, SoModelMatrixElement, SoModifyLogicalViewportElement, SoNeighborToleranceElement, SoNormalBindingElement, SoNormalElement, SoOverrideElement, SoPickMethodElement, SoPickRayElement, SoPickStyleElement, SoProfileCoordinateElement, SoProfileElement, SoProjectionMatrixElement, SoReplacedElement, SoReplacedTextureElement, SoShapeHintsElement, SoShapeStyleElement, SoTangentBindingElement, SoTangentElement, SoTextAliasingFactorElement, SoTextAlignmentHElement, SoTextAlignmentVElement, SoTextBackFrameLineWidthElement, SoTextMarginElement, SoTextOrientationElement, SoTextureCoordinate3Element, SoTextureCoordinateBindingElement, SoTextureCoordinateElement, SoTextureImageElementBase, SoTextureMatrixElement, SoTextureNameElement, SoTextureOverrideElement, SoUnitsElement, SoUpdateAreaElement, SoVertexFlagElement, SoViewingMatrixElement, SoViewportRegionElement, SoViewVolumeElement, MoCellFilterElement, MoColorMappingElement, MoCombineColorMappingElement, MoDataBindingElement, MoDrawStyleElement, MoMaterialElement, MoMeshElement, and MoTessellatorElement.

◆ push()

Friends And Related Symbol Documentation

◆ inventor::impl::SoGLCacheListImpl

friend class inventor::impl::SoGLCacheListImpl

Definition at line 409 of file SoElement.h.

◆ SoBoundingBoxCache

friend class SoBoundingBoxCache

Definition at line 408 of file SoElement.h.

◆ SoCache

friend class SoCache

Definition at line 407 of file SoElement.h.

◆ SoGLViewingMatrixElement

friend class SoGLViewingMatrixElement

Definition at line 410 of file SoElement.h.

◆ SoState

friend class SoState

Definition at line 406 of file SoElement.h.

The documentation for this class was generated from the following file: