.TH "SoReplacedElement" 3 "Thu May 29 2014" "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 "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\&.