.TH "SoReplacedElement" 3 "Sat Oct 12 2013" "Version 4.0.0a" "Coin" \" -*- nroff -*- .ad l .nh .SH NAME SoReplacedElement \- .PP The \fBSoReplacedElement\fP class is an abstract element superclass\&. .PP This is the superclass of all elements where the new element data \fIreplaces\fP the old data, and where the data the element stores is not just a simple float or integer value\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBSoElement\fP\&. .PP Inherited by \fBSoAmbientColorElement\fP, \fBSoBumpMapCoordinateElement\fP, SoBumpMapElement, \fBSoCoordinateElement\fP, \fBSoDiffuseColorElement\fP, \fBSoEmissiveColorElement\fP, \fBSoEnvironmentElement\fP, \fBSoFontNameElement\fP, \fBSoGeoElement\fP, \fBSoGLColorIndexElement\fP, \fBSoLightAttenuationElement\fP, \fBSoListenerDopplerElement\fP, \fBSoListenerOrientationElement\fP, \fBSoListenerPositionElement\fP, \fBSoNormalElement\fP, \fBSoPolygonOffsetElement\fP, \fBSoProfileCoordinateElement\fP, SoProjectionMatrixElement, \fBSoShininessElement\fP, \fBSoSoundElement\fP, \fBSoSpecularColorElement\fP, \fBSoTransparencyElement\fP, \fBSoViewingMatrixElement\fP, and \fBSoViewVolumeElement\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "virtual void \fBinit\fP (\fBSoState\fP *state)" .br .ti -1c .RI "virtual SbBool \fBmatches\fP (const \fBSoElement\fP *element) const " .br .ti -1c .RI "virtual \fBSoElement\fP * \fBcopyMatchInfo\fP () const " .br .ti -1c .RI "uint32_t \fBgetNodeId\fP () const " .br .ti -1c .RI "virtual void \fBprint\fP (FILE *file) const " .br .in -1c .SS "Static Public Member Functions" .in +1c .ti -1c .RI "static \fBSoType\fP \fBgetClassTypeId\fP (void)" .br .ti -1c .RI "static int \fBgetClassStackIndex\fP (void)" .br .ti -1c .RI "static void \fBinitClass\fP (void)" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "virtual \fB~SoReplacedElement\fP ()" .br .in -1c .SS "Static Protected Member Functions" .in +1c .ti -1c .RI "static \fBSoElement\fP * \fBgetElement\fP (\fBSoState\fP *const state, const int \fBstackIndex\fP, \fBSoNode\fP *const node)" .br .in -1c .SS "Protected Attributes" .in +1c .ti -1c .RI "uint32_t \fBnodeId\fP" .br .in -1c .SS "Additional Inherited Members" .SH "Detailed Description" .PP The \fBSoReplacedElement\fP class is an abstract element superclass\&. .PP This is the superclass of all elements where the new element data \fIreplaces\fP the old data, and where the data the element stores is not just a simple float or integer value\&. Apart from this conceptual difference from its superclass, the \fBSoReplacedElement\fP class also overloads the default \fBgetElement()\fP method to include a node reference\&. This reference is used to fetch the unique node identification number of the node that last changed the element\&. .PP The identifier values of nodes in the scenegraph is updated upon \fIany\fP kind of change to a node, so this technique plays an important role in the construction, validation and destruction of internal scenegraph caches\&. .PP \fBSee Also:\fP .RS 4 \fBSoAccumulatedElement\fP .RE .PP .SH "Constructor & Destructor Documentation" .PP .SS "SoReplacedElement::~SoReplacedElement (void)\fC [protected]\fP, \fC [virtual]\fP" Destructor\&. .SH "Member Function Documentation" .PP .SS "\fBSoType\fP SoReplacedElement::getClassTypeId (void)\fC [static]\fP" This static method returns the class type\&. .PP Reimplemented from \fBSoElement\fP\&. .PP Reimplemented in \fBSoProfileCoordinateElement\fP, \fBSoDiffuseColorElement\fP, \fBSoGeoElement\fP, \fBSoAmbientColorElement\fP, \fBSoCoordinateElement\fP, \fBSoEmissiveColorElement\fP, \fBSoNormalElement\fP, \fBSoSpecularColorElement\fP, \fBSoBumpMapCoordinateElement\fP, \fBSoEnvironmentElement\fP, \fBSoFontNameElement\fP, \fBSoLightAttenuationElement\fP, \fBSoListenerDopplerElement\fP, \fBSoListenerOrientationElement\fP, \fBSoListenerPositionElement\fP, \fBSoTransparencyElement\fP, \fBSoViewingMatrixElement\fP, \fBSoViewVolumeElement\fP, \fBSoGLColorIndexElement\fP, \fBSoGLCoordinateElement\fP, \fBSoGLEnvironmentElement\fP, \fBSoGLNormalElement\fP, \fBSoGLPolygonOffsetElement\fP, \fBSoGLProjectionMatrixElement\fP, \fBSoGLViewingMatrixElement\fP, \fBSoPolygonOffsetElement\fP, \fBSoShininessElement\fP, and \fBSoSoundElement\fP\&. .SS "int SoReplacedElement::getClassStackIndex (void)\fC [static]\fP" This static method returns the state stack index for the class\&. .PP Reimplemented from \fBSoElement\fP\&. .PP Reimplemented in \fBSoProfileCoordinateElement\fP, \fBSoDiffuseColorElement\fP, \fBSoGeoElement\fP, \fBSoAmbientColorElement\fP, \fBSoCoordinateElement\fP, \fBSoEmissiveColorElement\fP, \fBSoNormalElement\fP, \fBSoSpecularColorElement\fP, \fBSoBumpMapCoordinateElement\fP, \fBSoEnvironmentElement\fP, \fBSoFontNameElement\fP, \fBSoLightAttenuationElement\fP, \fBSoListenerDopplerElement\fP, \fBSoListenerOrientationElement\fP, \fBSoListenerPositionElement\fP, \fBSoTransparencyElement\fP, \fBSoViewingMatrixElement\fP, \fBSoViewVolumeElement\fP, \fBSoGLColorIndexElement\fP, \fBSoGLCoordinateElement\fP, \fBSoGLEnvironmentElement\fP, \fBSoGLNormalElement\fP, \fBSoGLPolygonOffsetElement\fP, \fBSoGLProjectionMatrixElement\fP, \fBSoGLViewingMatrixElement\fP, \fBSoPolygonOffsetElement\fP, \fBSoShininessElement\fP, and \fBSoSoundElement\fP\&. .SS "void SoReplacedElement::initClass (void)\fC [static]\fP" Initialize relevant common data for all instances, like the type system\&. .PP Reimplemented from \fBSoElement\fP\&. .PP Reimplemented in \fBSoProfileCoordinateElement\fP, \fBSoDiffuseColorElement\fP, \fBSoGeoElement\fP, \fBSoAmbientColorElement\fP, \fBSoCoordinateElement\fP, \fBSoEmissiveColorElement\fP, \fBSoNormalElement\fP, \fBSoSpecularColorElement\fP, \fBSoBumpMapCoordinateElement\fP, \fBSoEnvironmentElement\fP, \fBSoFontNameElement\fP, \fBSoLightAttenuationElement\fP, \fBSoListenerDopplerElement\fP, \fBSoListenerOrientationElement\fP, \fBSoListenerPositionElement\fP, \fBSoTransparencyElement\fP, \fBSoViewingMatrixElement\fP, \fBSoViewVolumeElement\fP, \fBSoGLColorIndexElement\fP, \fBSoGLCoordinateElement\fP, \fBSoGLEnvironmentElement\fP, \fBSoGLNormalElement\fP, \fBSoGLPolygonOffsetElement\fP, \fBSoGLProjectionMatrixElement\fP, \fBSoGLViewingMatrixElement\fP, \fBSoPolygonOffsetElement\fP, \fBSoShininessElement\fP, and \fBSoSoundElement\fP\&. .SS "void SoReplacedElement::init (\fBSoState\fP *state)\fC [virtual]\fP" This function initializes the element type in the given \fBSoState\fP\&. It is called for the first element of each enabled element type in \fBSoState\fP objects\&. .PP Reimplemented from \fBSoElement\fP\&. .PP Reimplemented in \fBSoEnvironmentElement\fP, \fBSoProfileCoordinateElement\fP, \fBSoPolygonOffsetElement\fP, \fBSoGeoElement\fP, \fBSoDiffuseColorElement\fP, \fBSoAmbientColorElement\fP, \fBSoCoordinateElement\fP, \fBSoEmissiveColorElement\fP, \fBSoGLColorIndexElement\fP, \fBSoNormalElement\fP, \fBSoSpecularColorElement\fP, \fBSoBumpMapCoordinateElement\fP, \fBSoFontNameElement\fP, \fBSoLightAttenuationElement\fP, \fBSoListenerDopplerElement\fP, \fBSoListenerOrientationElement\fP, \fBSoListenerPositionElement\fP, \fBSoTransparencyElement\fP, \fBSoViewingMatrixElement\fP, \fBSoViewVolumeElement\fP, \fBSoGLEnvironmentElement\fP, \fBSoGLNormalElement\fP, \fBSoGLPolygonOffsetElement\fP, \fBSoGLViewingMatrixElement\fP, \fBSoShininessElement\fP, and \fBSoSoundElement\fP\&. .SS "SbBool SoReplacedElement::matches (const \fBSoElement\fP *element) const\fC [virtual]\fP" This function returns \fCTRUE\fP is the element matches another element (of the same class), with respect to cache validity\&. .PP If the application programmer's extension element has a \fBmatches()\fP function, it should also have a \fBcopyMatchInfo()\fP function\&. .PP Implements \fBSoElement\fP\&. .PP Reimplemented in \fBSoFontNameElement\fP, and \fBSoLightAttenuationElement\fP\&. .SS "\fBSoElement\fP * SoReplacedElement::copyMatchInfo (void) const\fC [virtual]\fP" This function creates a copy of the element that contains enough information to enable the \fBmatches()\fP function to work\&. .PP Used to help with scenegraph traversal caching operations\&. .PP Implements \fBSoElement\fP\&. .PP Reimplemented in \fBSoFontNameElement\fP, and \fBSoLightAttenuationElement\fP\&. .SS "uint32_t SoReplacedElement::getNodeId (void) const" Returns the node identifier for the node that previously updated the \fBSoReplacedElement\fP\&. .SS "void SoReplacedElement::print (FILE *file) const\fC [virtual]\fP" This function is for printing element information, and is used mostly for debugging purposes\&. .PP Reimplemented from \fBSoElement\fP\&. .PP Reimplemented in \fBSoEnvironmentElement\fP, \fBSoSoundElement\fP, \fBSoCoordinateElement\fP, \fBSoFontNameElement\fP, \fBSoLightAttenuationElement\fP, \fBSoListenerDopplerElement\fP, \fBSoListenerOrientationElement\fP, and \fBSoListenerPositionElement\fP\&. .SS "\fBSoElement\fP * SoReplacedElement::getElement (\fBSoState\fP *conststate, const intstackIndex, \fBSoNode\fP *constnode)\fC [static]\fP, \fC [protected]\fP" This function overloads \fBSoElement::getElement()\fP with an extra \fInode\fP parameter, to let us set the \fBSoReplacedElement::nodeId\fP in the element instance before returning\&. .PP \fBSoReplacedElement\fP subclasses should use this method to get writable instances\&. .PP The identifier values of nodes in the scenegraph is updated upon \fIany\fP kind of change to a node, so this technique plays an important role in the construction, validation and destruction of internal scenegraph caches\&. .PP \fBSee Also:\fP .RS 4 \fBSoElement::getElement()\fP .RE .PP .SH "Member Data Documentation" .PP .SS "uint32_t SoReplacedElement::nodeId\fC [protected]\fP" \fIThis API member is considered internal to the library, as it is not likely to be of interest to the application programmer\&.\fP .SH "Author" .PP Generated automatically by Doxygen for Coin from the source code\&.