Open Inventor Release 2024.1.2
 
Loading...
Searching...
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.
 

Friends

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.

SEE ALSO

Definition at line 102 of file SoElement.h.

Member Function Documentation

◆ getClassTypeId()

static SoType SoElement::getClassTypeId ( )
static

Returns type identifier for SoElement class.

◆ getTypeId()

virtual SoType SoElement::getTypeId ( ) const
inlinevirtual

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
virtual

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
friend

Definition at line 409 of file SoElement.h.

◆ SoBoundingBoxCache

friend class SoBoundingBoxCache
friend

Definition at line 408 of file SoElement.h.

◆ SoCache

friend class SoCache
friend

Definition at line 407 of file SoElement.h.

◆ SoGLViewingMatrixElement

friend class SoGLViewingMatrixElement
friend

Definition at line 410 of file SoElement.h.

◆ SoState

friend class SoState
friend

Definition at line 406 of file SoElement.h.


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