Public Member Functions |
void | ref () const |
| Adds and removes a reference to an instance.
|
void | unref () const |
void | unrefNoDelete () const |
void | touch () |
| Marks an instance as modified, simulating a change to it.
|
virtual SoType | getTypeId () const =0 |
| Returns the type identifier for a specific instance.
|
SbBool | isOfType (SoType type) const |
| Returns TRUE if this object is of the type specified in type or is derived from that type.
|
virtual SbName | getName () const |
| Returns the name of an instance.
|
virtual void | setName (const SbName &name) |
| Sets the name of an instance.
|
virtual void | startNotify () |
| Initiates notification from an instance.
|
virtual void | notify (SoNotList *list) |
| Propagates modification notification through an instance.
|
void | addAuditor (void *auditor, SoNotRec::Type type) |
| Adds/removes an auditor to/from list.
|
void | removeAuditor (void *auditor, SoNotRec::Type type) |
const SoAuditorList & | getAuditors () |
| Returns auditor list-- used by SoField and SoEngineOutput to trace forward connections.
|
int | getRefCount () const |
| Returns current reference count.
|
virtual void | addWriteReference (SoOutput *out, SbBool isFromField=FALSE) |
| Adds a reference to the instance when writing.
|
SbBool | shouldWrite () |
| Returns TRUE if the instance should be written, based on the write-reference info already accumulated.
|
Static Public Member Functions |
static SoType | getClassTypeId () |
| Returns type identifier for this class.
|
static void | initClass () |
| Setup type information.
|
static void | incrementCurrentWriteCounter () |
| Increments the current write counter at the start of a write operation.
|
static void | decrementCurrentWriteCounter () |
| Decrements the current write counter after a write operation, in some rare cases.
|
static void | addName (SoBase *, const char *) |
| Internal methods used to maintain the global name dictionary.
|
static void | removeName (SoBase *, const char *) |
static SoBase * | getNamedBase (const SbName &, SoType) |
| Helper routines used to get stuff out of nameDict.
|
static int | getNamedBases (const SbName &, SoBaseList &, SoType) |
static SbBool | read (SoInput *in, SoBase *&base, SoType expectedType) |
| Reads one instance of some subclass of SoBase.
|
static void | setInstancePrefix (const SbString &c) |
| This defaults to "+" and is used when naming nodes that are DEF's and USE'd.
|
Static Public Attributes |
static SbBool | traceRefs |
| Turns on/off reference count tracing (for debugging)
|
Protected Types |
enum | BaseFlags { IS_ENGINE = 1,
IS_GROUP = 2
} |
| This set of enums is used when reading and writing the base. More...
|
Protected Member Functions |
| SoBase () |
| Constructor is protected - this is an abstract class.
|
virtual | ~SoBase () |
| Virtual destructor so that subclasses are deleted properly.
|
virtual void | destroy () |
| Actually deletes an instance.
|
SbBool | hasMultipleWriteRefs () const |
| Returns TRUE if the instance has multiple write references.
|
SbBool | writeHeader (SoOutput *out, SbBool isGroup, SbBool isEngine) const |
| Writes a header (name, open brace) or footer (close brace) to file defined by SoOutput.
|
void | writeFooter (SoOutput *out) const |
virtual const char * | getFileFormatName () const |
| Unknown nodes and engines write a different name for themselves than their typeId; this virtual method lets them do that (by default the typeId name is returned)
|
virtual SbBool | readInstance (SoInput *in, unsigned short flags)=0 |
| Reads stuff into instance of subclass.
|
Static Protected Member Functions |
static uint32_t | getCurrentWriteCounter () |
| Returns current write counter.
|
Abstract base class for Inventor node, path, and engine classes. This class handles reference counting, notification, and naming.
- See Also
- SoFieldContainer, SoNode, SoPath, SoEngine, SoDB
Definition at line 89 of file SoBase.h.
static void SoBase::initClass |
( |
| ) |
[static] |
Reimplemented in SoBoolOperation, SoCalculator, SoComputeBoundingBox, SoConcatenate, SoCounter, SoElapsedTime, SoEngine, SoFieldConverter, SoGate, SoInterpolate, SoOneShot, SoOnOff, SoSelectOne, SoTimeCounter, SoTransformVec3f, SoTriggerAny, SoFieldContainer, SoUpgrader, SoV1CustomNode, SoAnnotation, SoArray, SoAsciiText, SoBaseColor, SoBlinker, SoCallback, SoCamera, SoClipPlane, SoColorIndex, SoComplexity, SoCone, SoCoordinate3, SoCoordinate4, SoCube, SoCylinder, SoDirectionalLight, SoDrawStyle, SoEnvironment, SoEventCallback, SoFaceSet, SoFile, SoFont, SoFontStyle, SoGroup, SoIndexedFaceSet, SoIndexedLineSet, SoIndexedNurbsCurve, SoIndexedNurbsSurface, SoIndexedShape, SoIndexedTriangleSet, SoIndexedTriangleStripSet, SoInfo, SoLabel, SoLevelOfDetail, SoLight, SoLightModel, SoLinearProfile, SoLineSet, SoLocateHighlight, SoLOD, SoMaterial, SoMaterialBinding, SoMatrixTransform, SoMultipleCopy, SoNode, SoNonIndexedShape, SoNormal, SoNormalBinding, SoNurbsCurve, SoNurbsProfile, SoNurbsSurface, SoOrthographicCamera, SoPackedColor, SoPathSwitch, SoPendulum, SoPerspectiveCamera, SoPickStyle, SoPointLight, SoPointSet, SoProfile, SoProfileCoordinate2, SoProfileCoordinate3, SoQuadMesh, SoResetTransform, SoRotation, SoRotationXYZ, SoRotor, SoScale, SoSeparator, SoShape, SoShapeHints, SoShuttle, SoSphere, SoSpotLight, SoSwitch, SoText2, SoText3, SoTexture2, SoTexture2Transform, SoTextureCoordinate2, SoTextureCoordinateBinding, SoTextureCoordinateDefault, SoTextureCoordinateEnvironment, SoTextureCoordinateFunction, SoTextureCoordinatePlane, SoTransform, SoTransformation, SoTransformSeparator, SoTranslation, SoTriangleStripSet, SoUnits, SoVertexProperty, SoVertexShape, SoWWWAnchor, SoWWWInline, SoPath, SoUnknownEngine, SoUnknownNode, SoCenterballDragger, SoDirectionalLightDragger, SoDragger, SoDragPointDragger, SoHandleBoxDragger, SoJackDragger, SoPointLightDragger, SoRotateCylindricalDragger, SoRotateDiscDragger, SoRotateSphericalDragger, SoScale1Dragger, SoScale2Dragger, SoScale2UniformDragger, SoScaleUniformDragger, SoSpotLightDragger, SoTabBoxDragger, SoTabPlaneDragger, SoTrackballDragger, SoTransformBoxDragger, SoTransformerDragger, SoTranslate1Dragger, SoTranslate2Dragger, SoCenterballManip, SoDirectionalLightManip, SoHandleBoxManip, SoJackManip, SoPointLightManip, SoSpotLightManip, SoTabBoxManip, SoTrackballManip, SoTransformBoxManip, SoTransformerManip, SoTransformManip, SoInteractionKit, SoAntiSquish, SoSelection, SoSurroundScale, SoPolygonOffset, SoAppearanceKit, SoBaseKit, SoCameraKit, SoLightKit, SoNodeKitListPart, SoSceneKit, SoSeparatorKit, SoShapeKit, and SoWrapperKit.