|
http://www.sim.no/ http://www.coin3d.org/ |
#include <Inventor/misc/SoBase.h>
Inheritance diagram for SoBase:

SoBase provides the basic interfaces and methods for doing reference counting, type identification and import/export. All classes in Coin which uses these mechanisms are descendent from this class.
One important issue with SoBase-derived classes is that they should not be statically allocated, neither in static module memory nor on function's stack-frames. SoBase-derived classes must always be allocated dynamically from the memory heap with the new operator.
This is so because SoBase-derived instances are reference counted, and will self-destruct on the approriate time. For this to work, they must be explicitly allocated in heap-memory. See the class documentation of SoNode for more information.
Public Member Functions | |
| void | ref (void) const |
| void | unref (void) const |
| void | unrefNoDelete (void) const |
| int32_t | getRefCount (void) const |
| void | touch (void) |
| virtual SoType | getTypeId (void) const =0 |
| SbBool | isOfType (SoType type) const |
| virtual SbName | getName (void) const |
| virtual void | setName (const SbName &newname) |
| virtual void | startNotify (void) |
| virtual void | notify (SoNotList *l) |
| void | addAuditor (void *const auditor, const SoNotRec::Type type) |
| void | removeAuditor (void *const auditor, const SoNotRec::Type type) |
| const SoAuditorList & | getAuditors (void) const |
| virtual void | addWriteReference (SoOutput *out, SbBool isfromfield=0) |
| SbBool | shouldWrite (void) |
| void | assertAlive (void) const |
Static Public Member Functions | |
| static void | initClass (void) |
| static SoType | getClassTypeId (void) |
| static void | addName (SoBase *const base, const char *const name) |
| static void | removeName (SoBase *const base, const char *const name) |
| static void | incrementCurrentWriteCounter (void) |
| static void | decrementCurrentWriteCounter (void) |
| static SoBase * | getNamedBase (const SbName &name, SoType type) |
| static int | getNamedBases (const SbName &name, SoBaseList &baselist, SoType type) |
| static SbBool | read (SoInput *in, SoBase *&base, SoType expectedtype) |
| static void | setInstancePrefix (const SbString &c) |
| static void | setTraceRefs (SbBool trace) |
| static SbBool | getTraceRefs (void) |
| static SbBool | connectRoute (SoInput *in, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname) |
| static SbBool | readRoute (SoInput *in) |
Protected Types | |
| IS_ENGINE = 0x01 | |
| IS_GROUP = 0x02 | |
| enum | BaseFlags { IS_ENGINE = 0x01, IS_GROUP = 0x02 } |
Protected Member Functions | |
| SoBase (void) | |
| virtual | ~SoBase () |
| virtual void | destroy (void) |
| SbBool | hasMultipleWriteRefs (void) const |
| SbBool | writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const |
| void | writeFooter (SoOutput *out) const |
| virtual const char * | getFileFormatName (void) const |
| virtual SbBool | readInstance (SoInput *in, unsigned short flags)=0 |
Static Protected Member Functions | |
| static uint32_t | getCurrentWriteCounter (void) |
| static void | staticDataLock (void) |
| static void | staticDataUnlock (void) |
enum SoBase::BaseFlags [protected] |
This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.
| SoBase::SoBase | ( | void | ) | [protected] |
Constructor. The initial reference count will be set to zero.
| SoBase::~SoBase | ( | ) | [protected, virtual] |
Destructor. There should not be any normal circumstance where you need to explicitly delete an object derived from the SoBase class, as the reference counting should take care of deallocating unused objects.
| void SoBase::initClass | ( | void | ) | [static] |
Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
Reimplemented in SoPath, SoCenterballDragger, SoDirectionalLightDragger, SoDragPointDragger, SoDragger, SoHandleBoxDragger, SoJackDragger, SoPointLightDragger, SoRotateCylindricalDragger, SoRotateDiscDragger, SoRotateSphericalDragger, SoScale1Dragger, SoScale2Dragger, SoScale2UniformDragger, SoScaleUniformDragger, SoSpotLightDragger, SoTabBoxDragger, SoTabPlaneDragger, SoTrackballDragger, SoTransformBoxDragger, SoTransformerDragger, SoTranslate1Dragger, SoTranslate2Dragger, SoBoolOperation, SoCalculator, SoComposeMatrix, SoComposeRotation, SoComposeRotationFromTo, SoComposeVec2f, SoComposeVec3f, SoComposeVec4f, SoComputeBoundingBox, SoConcatenate, SoCounter, SoDecomposeMatrix, SoDecomposeRotation, SoDecomposeVec2f, SoDecomposeVec3f, SoDecomposeVec4f, SoElapsedTime, SoEngine, SoFieldConverter, SoGate, SoInterpolate, SoInterpolateFloat, SoInterpolateRotation, SoInterpolateVec2f, SoInterpolateVec3f, SoInterpolateVec4f, SoOnOff, SoOneShot, SoSelectOne, SoTimeCounter, SoTransformVec3f, SoTriggerAny, SoNodeEngine, SoFieldContainer, SoCenterballManip, SoClipPlaneManip, SoDirectionalLightManip, SoHandleBoxManip, SoJackManip, SoPointLightManip, SoSpotLightManip, SoTabBoxManip, SoTrackballManip, SoTransformBoxManip, SoTransformManip, SoTransformerManip, SoAppearanceKit, SoBaseKit, SoCameraKit, SoInteractionKit, SoLightKit, SoNodeKitListPart, SoSceneKit, SoSeparatorKit, SoShapeKit, SoWrapperKit, SoAnnotation, SoAntiSquish, SoArray, SoAsciiText, SoBaseColor, SoBlinker, SoBumpMapCoordinate, SoBumpMapTransform, SoBumpMap, SoCallback, SoCamera, SoClipPlane, SoColorIndex, SoComplexity, SoCone, SoCoordinate3, SoCoordinate4, SoCube, SoCylinder, SoDirectionalLight, SoDrawStyle, SoEnvironment, SoEventCallback, SoExtSelection, SoFaceSet, SoFile, SoFont, SoFontStyle, SoGroup, SoImage, SoIndexedFaceSet, SoIndexedLineSet, SoIndexedNurbsCurve, SoIndexedNurbsSurface, SoIndexedShape, SoIndexedTriangleStripSet, SoInfo, SoLOD, SoLabel, SoLevelOfDetail, SoLight, SoLightModel, SoLineSet, SoLinearProfile, SoListener, SoLocateHighlight, SoMarkerSet, SoMaterial, SoMaterialBinding, SoMatrixTransform, SoMultipleCopy, SoNode, SoNonIndexedShape, SoNormal, SoNormalBinding, SoNurbsCurve, SoNurbsProfile, SoNurbsSurface, SoOrthographicCamera, SoPackedColor, SoPathSwitch, SoPendulum, SoPerspectiveCamera, SoPickStyle, SoPointLight, SoPointSet, SoPolygonOffset, SoProfile, SoProfileCoordinate2, SoProfileCoordinate3, SoQuadMesh, SoResetTransform, SoRotation, SoRotationXYZ, SoRotor, SoScale, SoSceneTexture2, SoSelection, SoSeparator, SoShape, SoShapeHints, SoShuttle, SoSphere, SoSpotLight, SoSurroundScale, SoSwitch, SoText2, SoText3, SoTexture2, SoTexture2Transform, SoTexture3, SoTexture3Transform, SoTextureCombine, SoTextureCoordinate2, SoTextureCoordinate3, SoTextureCoordinateBinding, SoTextureCoordinateCube, SoTextureCoordinateCylinder, SoTextureCoordinateDefault, SoTextureCoordinateEnvironment, SoTextureCoordinateFunction, SoTextureCoordinatePlane, SoTextureCoordinateSphere, SoTextureCubeMap, SoTextureScalePolicy, SoTextureUnit, SoTransform, SoTransformSeparator, SoTransformation, SoTranslation, SoTransparencyType, SoTriangleStripSet, SoUnits, SoVertexProperty, SoShaderProgram, SoShaderObject, SoVertexShader, SoFragmentShader, SoFrustumCamera, SoGeometryShader, SoShaderParameter, SoVertexShape, SoWWWAnchor, SoWWWInline, SoVRMLAnchor, SoVRMLAppearance, SoVRMLAudioClip, SoVRMLBackground, SoVRMLBillboard, SoVRMLBox, SoVRMLCollision, SoVRMLColor, SoVRMLColorInterpolator, SoVRMLCone, SoVRMLCoordinate, SoVRMLCoordinateInterpolator, SoVRMLCylinder, SoVRMLCylinderSensor, SoVRMLDirectionalLight, SoVRMLDragSensor, SoVRMLElevationGrid, SoVRMLExtrusion, SoVRMLFog, SoVRMLFontStyle, SoVRMLGeometry, SoVRMLGroup, SoVRMLImageTexture, SoVRMLIndexedFaceSet, SoVRMLIndexedLine, SoVRMLIndexedLineSet, SoVRMLIndexedShape, SoVRMLInline, SoVRMLInterpolator, SoVRMLLOD, SoVRMLLight, SoVRMLMaterial, SoVRMLMovieTexture, SoVRMLNavigationInfo, SoVRMLNormal, SoVRMLNormalInterpolator, SoVRMLOrientationInterpolator, SoVRMLParent, SoVRMLPixelTexture, SoVRMLPlaneSensor, SoVRMLPointLight, SoVRMLPointSet, SoVRMLPositionInterpolator, SoVRMLProximitySensor, SoVRMLScalarInterpolator, SoVRMLScript, SoVRMLSensor, SoVRMLShape, SoVRMLSound, SoVRMLSphere, SoVRMLSphereSensor, SoVRMLSpotLight, SoVRMLSwitch, SoVRMLText, SoVRMLTexture, SoVRMLTextureCoordinate, SoVRMLTextureTransform, SoVRMLTimeSensor, SoVRMLTouchSensor, SoVRMLTransform, SoVRMLVertexLine, SoVRMLVertexPoint, SoVRMLVertexShape, SoVRMLViewpoint, SoVRMLVisibilitySensor, SoVRMLWorldInfo, SoShadowGroup, SoShadowSpotLight, SoShadowStyle, SoShadowCulling, SoGeoOrigin, SoGeoSeparator, SoGeoLocation, and SoGeoCoordinate.
| void SoBase::ref | ( | void | ) | const |
Increase the reference count of the object. This might be necessary to do explicitly from user code for certain situations (chiefly to avoid premature deletion), but is usually called from other instances within the Coin library when objects are made dependent on each other.
See the class documentation of SoNode for more extensive information about reference counting.
| void SoBase::unref | ( | void | ) | const |
Decrease the reference count of an object. If the reference count reaches zero, the object will delete itself. Be careful when explicitly calling this method, beware that you usually need to match user level calls to ref() with calls to either unref() or unrefNoDelete() to avoid memory leaks.
| void SoBase::unrefNoDelete | ( | void | ) | const |
| int32_t SoBase::getRefCount | ( | void | ) | const |
Returns number of objects referring to this object.
| void SoBase::touch | ( | void | ) |
Force an update, in the sense that all objects connected to this object as an auditor will have to re-check the values of their inter-dependent data.
This is often used as an effective way of manually triggering a redraw by application programmers.
| SoType SoBase::getTypeId | ( | void | ) | const [pure virtual] |
Returns the type identification of an object derived from a class inheriting SoBase. This is used for run-time type checking and "downward" casting.
Usage example:
void foo(SoNode * node) { if (node->getTypeId() == SoFile::getClassTypeId()) { SoFile * filenode = (SoFile *)node; // safe downward cast, knows the type } else if (node->getTypeId().isOfType(SoGroup::getClassTypeId())) { SoGroup * group = (SoGroup *)node; // safe downward cast, knows the type } }
For application programmers wanting to extend the library with new nodes, engines, nodekits, draggers or others: this method needs to be overridden in all subclasses. This is typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the pre-defined macros available through for instance Inventor/nodes/SoSubNode.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes), Inventor/engines/SoSubEngine.h (for engine classes) and so on.
For more information on writing Coin extensions, see the class documentation of the toplevel superclasses for the various class groups.
Implemented in SoPath, SoCenterballDragger, SoDirectionalLightDragger, SoDragPointDragger, SoDragger, SoHandleBoxDragger, SoJackDragger, SoPointLightDragger, SoRotateCylindricalDragger, SoRotateDiscDragger, SoRotateSphericalDragger, SoScale1Dragger, SoScale2Dragger, SoScale2UniformDragger, SoScaleUniformDragger, SoSpotLightDragger, SoTabBoxDragger, SoTabPlaneDragger, SoTrackballDragger, SoTransformBoxDragger, SoTransformerDragger, SoTranslate1Dragger, SoTranslate2Dragger, SoBoolOperation, SoCalculator, SoComposeMatrix, SoComposeRotation, SoComposeRotationFromTo, SoComposeVec2f, SoComposeVec3f, SoComposeVec4f, SoComputeBoundingBox, SoConcatenate, SoCounter, SoDecomposeMatrix, SoDecomposeRotation, SoDecomposeVec2f, SoDecomposeVec3f, SoDecomposeVec4f, SoElapsedTime, SoFieldConverter, SoGate, SoInterpolate, SoInterpolateFloat, SoInterpolateRotation, SoInterpolateVec2f, SoInterpolateVec3f, SoInterpolateVec4f, SoOnOff, SoOneShot, SoSelectOne, SoTimeCounter, SoTransformVec3f, SoTriggerAny, SoCenterballManip, SoClipPlaneManip, SoDirectionalLightManip, SoHandleBoxManip, SoJackManip, SoPointLightManip, SoSpotLightManip, SoTabBoxManip, SoTrackballManip, SoTransformBoxManip, SoTransformManip, SoTransformerManip, SoAppearanceKit, SoBaseKit, SoCameraKit, SoInteractionKit, SoLightKit, SoNodeKitListPart, SoSceneKit, SoSeparatorKit, SoShapeKit, SoWrapperKit, SoAnnotation, SoAntiSquish, SoArray, SoAsciiText, SoBaseColor, SoBlinker, SoBumpMapCoordinate, SoBumpMapTransform, SoBumpMap, SoCallback, SoCamera, SoClipPlane, SoColorIndex, SoComplexity, SoCone, SoCoordinate3, SoCoordinate4, SoCube, SoCylinder, SoDirectionalLight, SoDrawStyle, SoEnvironment, SoEventCallback, SoExtSelection, SoFaceSet, SoFile, SoFont, SoFontStyle, SoGroup, SoImage, SoIndexedFaceSet, SoIndexedLineSet, SoIndexedNurbsCurve, SoIndexedNurbsSurface, SoIndexedShape, SoIndexedTriangleStripSet, SoInfo, SoLOD, SoLabel, SoLevelOfDetail, SoLight, SoLightModel, SoLineSet, SoLinearProfile, SoListener, SoLocateHighlight, SoMarkerSet, SoMaterial, SoMaterialBinding, SoMatrixTransform, SoMultipleCopy, SoNonIndexedShape, SoNormal, SoNormalBinding, SoNurbsCurve, SoNurbsProfile, SoNurbsSurface, SoOrthographicCamera, SoPackedColor, SoPathSwitch, SoPendulum, SoPerspectiveCamera, SoPickStyle, SoPointLight, SoPointSet, SoPolygonOffset, SoProfile, SoProfileCoordinate2, SoProfileCoordinate3, SoQuadMesh, SoResetTransform, SoRotation, SoRotationXYZ, SoRotor, SoScale, SoSceneTexture2, SoSelection, SoSeparator, SoShape, SoShapeHints, SoShuttle, SoSphere, SoSpotLight, SoSurroundScale, SoSwitch, SoText2, SoText3, SoTexture2, SoTexture2Transform, SoTexture3, SoTexture3Transform, SoTextureCombine, SoTextureCoordinate2, SoTextureCoordinate3, SoTextureCoordinateBinding, SoTextureCoordinateCube, SoTextureCoordinateCylinder, SoTextureCoordinateDefault, SoTextureCoordinateEnvironment, SoTextureCoordinateFunction, SoTextureCoordinatePlane, SoTextureCoordinateSphere, SoTextureCubeMap, SoTextureScalePolicy, SoTextureUnit, SoTransform, SoTransformSeparator, SoTransformation, SoTranslation, SoTransparencyType, SoTriangleStripSet, SoUnits, SoVertexProperty, SoShaderProgram, SoShaderObject, SoVertexShader, SoFragmentShader, SoFrustumCamera, SoGeometryShader, SoShaderParameter, SoVertexShape, SoWWWAnchor, SoWWWInline, SoVRMLAnchor, SoVRMLAppearance, SoVRMLAudioClip, SoVRMLBackground, SoVRMLBillboard, SoVRMLBox, SoVRMLCollision, SoVRMLColor, SoVRMLColorInterpolator, SoVRMLCone, SoVRMLCoordinate, SoVRMLCoordinateInterpolator, SoVRMLCylinder, SoVRMLCylinderSensor, SoVRMLDirectionalLight, SoVRMLDragSensor, SoVRMLElevationGrid, SoVRMLExtrusion, SoVRMLFog, SoVRMLFontStyle, SoVRMLGeometry, SoVRMLGroup, SoVRMLImageTexture, SoVRMLIndexedFaceSet, SoVRMLIndexedLine, SoVRMLIndexedLineSet, SoVRMLIndexedShape, SoVRMLInline, SoVRMLInterpolator, SoVRMLLOD, SoVRMLLight, SoVRMLMaterial, SoVRMLMovieTexture, SoVRMLNavigationInfo, SoVRMLNormal, SoVRMLNormalInterpolator, SoVRMLOrientationInterpolator, SoVRMLParent, SoVRMLPixelTexture, SoVRMLPlaneSensor, SoVRMLPointLight, SoVRMLPointSet, SoVRMLPositionInterpolator, SoVRMLProximitySensor, SoVRMLScalarInterpolator, SoVRMLScript, SoVRMLSensor, SoVRMLShape, SoVRMLSound, SoVRMLSphere, SoVRMLSphereSensor, SoVRMLSpotLight, SoVRMLSwitch, SoVRMLText, SoVRMLTexture, SoVRMLTextureCoordinate, SoVRMLTextureTransform, SoVRMLTimeSensor, SoVRMLTouchSensor, SoVRMLTransform, SoVRMLVertexLine, SoVRMLVertexPoint, SoVRMLVertexShape, SoVRMLViewpoint, SoVRMLVisibilitySensor, SoVRMLWorldInfo, SoShadowGroup, SoShadowSpotLight, SoShadowStyle, SoShadowCulling, SoGeoOrigin, SoGeoSeparator, SoGeoLocation, and SoGeoCoordinate.
| SbBool SoBase::isOfType | ( | SoType | type | ) | const |
Returns TRUE if the type of this object is either of the same type or inherited from type.
| SoType SoBase::getClassTypeId | ( | void | ) | [static] |
This static method returns the SoType object associated with objects of this class.
Reimplemented in SoPath, SoCenterballDragger, SoDirectionalLightDragger, SoDragPointDragger, SoDragger, SoHandleBoxDragger, SoJackDragger, SoPointLightDragger, SoRotateCylindricalDragger, SoRotateDiscDragger, SoRotateSphericalDragger, SoScale1Dragger, SoScale2Dragger, SoScale2UniformDragger, SoScaleUniformDragger, SoSpotLightDragger, SoTabBoxDragger, SoTabPlaneDragger, SoTrackballDragger, SoTransformBoxDragger, SoTransformerDragger, SoTranslate1Dragger, SoTranslate2Dragger, SoBoolOperation, SoCalculator, SoComposeMatrix, SoComposeRotation, SoComposeRotationFromTo, SoComposeVec2f, SoComposeVec3f, SoComposeVec4f, SoComputeBoundingBox, SoConcatenate, SoCounter, SoDecomposeMatrix, SoDecomposeRotation, SoDecomposeVec2f, SoDecomposeVec3f, SoDecomposeVec4f, SoElapsedTime, SoEngine, SoFieldConverter, SoGate, SoInterpolate, SoInterpolateFloat, SoInterpolateRotation, SoInterpolateVec2f, SoInterpolateVec3f, SoInterpolateVec4f, SoOnOff, SoOneShot, SoSelectOne, SoTimeCounter, SoTransformVec3f, SoTriggerAny, SoNodeEngine, SoFieldContainer, SoCenterballManip, SoClipPlaneManip, SoDirectionalLightManip, SoHandleBoxManip, SoJackManip, SoPointLightManip, SoSpotLightManip, SoTabBoxManip, SoTrackballManip, SoTransformBoxManip, SoTransformManip, SoTransformerManip, SoAppearanceKit, SoBaseKit, SoCameraKit, SoInteractionKit, SoLightKit, SoNodeKitListPart, SoSceneKit, SoSeparatorKit, SoShapeKit, SoWrapperKit, SoAnnotation, SoAntiSquish, SoArray, SoAsciiText, SoBaseColor, SoBlinker, SoBumpMapCoordinate, SoBumpMapTransform, SoBumpMap, SoCallback, SoCamera, SoClipPlane, SoColorIndex, SoComplexity, SoCone, SoCoordinate3, SoCoordinate4, SoCube, SoCylinder, SoDirectionalLight, SoDrawStyle, SoEnvironment, SoEventCallback, SoExtSelection, SoFaceSet, SoFile, SoFont, SoFontStyle, SoGroup, SoImage, SoIndexedFaceSet, SoIndexedLineSet, SoIndexedNurbsCurve, SoIndexedNurbsSurface, SoIndexedShape, SoIndexedTriangleStripSet, SoInfo, SoLOD, SoLabel, SoLevelOfDetail, SoLight, SoLightModel, SoLineSet, SoLinearProfile, SoListener, SoLocateHighlight, SoMarkerSet, SoMaterial, SoMaterialBinding, SoMatrixTransform, SoMultipleCopy, SoNode, SoNonIndexedShape, SoNormal, SoNormalBinding, SoNurbsCurve, SoNurbsProfile, SoNurbsSurface, SoOrthographicCamera, SoPackedColor, SoPathSwitch, SoPendulum, SoPerspectiveCamera, SoPickStyle, SoPointLight, SoPointSet, SoPolygonOffset, SoProfile, SoProfileCoordinate2, SoProfileCoordinate3, SoQuadMesh, SoResetTransform, SoRotation, SoRotationXYZ, SoRotor, SoScale, SoSceneTexture2, SoSelection, SoSeparator, SoShape, SoShapeHints, SoShuttle, SoSphere, SoSpotLight, SoSurroundScale, SoSwitch, SoText2, SoText3, SoTexture2, SoTexture2Transform, SoTexture3, SoTexture3Transform, SoTextureCombine, SoTextureCoordinate2, SoTextureCoordinate3, SoTextureCoordinateBinding, SoTextureCoordinateCube, SoTextureCoordinateCylinder, SoTextureCoordinateDefault, SoTextureCoordinateEnvironment, SoTextureCoordinateFunction, SoTextureCoordinatePlane, SoTextureCoordinateSphere, SoTextureCubeMap, SoTextureScalePolicy, SoTextureUnit, SoTransform, SoTransformSeparator, SoTransformation, SoTranslation, SoTransparencyType, SoTriangleStripSet, SoUnits, SoVertexProperty, SoShaderProgram, SoShaderObject, SoVertexShader, SoFragmentShader, SoFrustumCamera, SoGeometryShader, SoShaderParameter, SoVertexShape, SoWWWAnchor, SoWWWInline, SoVRMLAnchor, SoVRMLAppearance, SoVRMLAudioClip, SoVRMLBackground, SoVRMLBillboard, SoVRMLBox, SoVRMLCollision, SoVRMLColor, SoVRMLColorInterpolator, SoVRMLCone, SoVRMLCoordinate, SoVRMLCoordinateInterpolator, SoVRMLCylinder, SoVRMLCylinderSensor, SoVRMLDirectionalLight, SoVRMLDragSensor, SoVRMLElevationGrid, SoVRMLExtrusion, SoVRMLFog, SoVRMLFontStyle, SoVRMLGeometry, SoVRMLGroup, SoVRMLImageTexture, SoVRMLIndexedFaceSet, SoVRMLIndexedLine, SoVRMLIndexedLineSet, SoVRMLIndexedShape, SoVRMLInline, SoVRMLInterpolator, SoVRMLLOD, SoVRMLLight, SoVRMLMaterial, SoVRMLMovieTexture, SoVRMLNavigationInfo, SoVRMLNormal, SoVRMLNormalInterpolator, SoVRMLOrientationInterpolator, SoVRMLParent, SoVRMLPixelTexture, SoVRMLPlaneSensor, SoVRMLPointLight, SoVRMLPointSet, SoVRMLPositionInterpolator, SoVRMLProximitySensor, SoVRMLScalarInterpolator, SoVRMLScript, SoVRMLSensor, SoVRMLShape, SoVRMLSound, SoVRMLSphere, SoVRMLSphereSensor, SoVRMLSpotLight, SoVRMLSwitch, SoVRMLText, SoVRMLTexture, SoVRMLTextureCoordinate, SoVRMLTextureTransform, SoVRMLTimeSensor, SoVRMLTouchSensor, SoVRMLTransform, SoVRMLVertexLine, SoVRMLVertexPoint, SoVRMLVertexShape, SoVRMLViewpoint, SoVRMLVisibilitySensor, SoVRMLWorldInfo, SoShadowGroup, SoShadowSpotLight, SoShadowStyle, SoShadowCulling, SoGeoOrigin, SoGeoSeparator, SoGeoLocation, and SoGeoCoordinate.
| SbName SoBase::getName | ( | void | ) | const [virtual] |
Returns name of object. If no name has been given to this object, the returned SbName will contain the empty string.
| void SoBase::setName | ( | const SbName & | newname | ) | [virtual] |
Set the name of this object.
Some characters are invalid to use as parts of names for SoBase derived objects, as object names needs to be consistent with the syntax of Inventor and VRML files upon file export / import operations (so one must for instance avoid using special token characters).
Invalid characters will be automatically replaced by underscore characters. If the name starts with an invalid character, the new name will be preceded by an underscore character.
For the exact definitions of what constitutes legal and illegal characters for SoBase names, see the SbName functions listed below.
| void SoBase::addName | ( | SoBase *const | b, | |
| const char *const | name | |||
| ) | [static] |
Adds a name<->object mapping to the global dictionary.
| void SoBase::removeName | ( | SoBase *const | b, | |
| const char *const | name | |||
| ) | [static] |
Removes a name<->object mapping from the global dictionary.
| void SoBase::startNotify | ( | void | ) | [virtual] |
This is the method which starts the notification sequence after changes.
At the end of a notification sequence, all "immediate" sensors (i.e. sensors set up with a zero priority) are triggered.
Reimplemented in SoNode.
| void SoBase::notify | ( | SoNotList * | l | ) | [virtual] |
Notifies all auditors for this instance when changes are made.
Reimplemented in SoEngine, SoNodeEngine, SoFieldContainer, SoAsciiText, SoBlinker, SoBumpMap, SoImage, SoLOD, SoLevelOfDetail, SoMaterial,