Reference

SoSFNode(3iv)

field containing a pointer to a node

NAME

SoSFNode — field containing a pointer to a node

INHERITS FROM

SoField > SoSField > SoSFNode

SYNOPSIS

#include <Inventor/fields/SoSFNode.h>

Methods from class SoSFNode:

static SoType getClassTypeId()
virtual void getTypeId() const
SoNode * getValue() const
SoNode * operator =(SoNode * newValue)
void setValue(SoNode * newValue)
int operator ==(const SoSFNode &f) const
int operator !=(const SoSFNode &f) const

Methods from class SoField:

void setIgnored(SbBool ignore)
SbBool isIgnored() const
SbBool isDefault() const
virtual SbBool isOfType(SoType type) const
SbBool set(const char *valueString)
void get(SbString &valueString)
void touch()
SbBool connectFrom(SoField *fromField)
SbBool connectFrom(SoEngineOutput *fromEngine)
void disconnect()
SbBool isConnected() const
SbBool isConnectedFromField() const
SbBool getConnectedField(SoField *&writingField) const
SbBool isConnectedFromEngine() const
SbBool getConnectedEngine(SoEngineOutput *&engineOutput) const
void enableConnection(SbBool flag)
SbBool isConnectionEnabled() const
int getForwardConnections(SoFieldList &list) const
SoFieldContainer * getContainer() const

DESCRIPTION

This field maintains a pointer to an SoNode instance, correctly maintaining its reference count.

SoSFNodes are written to file as the node they are pointing to. For example:

mySoSFNodeField Cube {}

is an SoSFNode field named 'mySoSFNodeField', pointing to an SoCube node. If the node is used elsewhere, the regular DEF/USE instancing mechanism applies:

anotherSoSFNodeField USE topSeparator

is an SoSFNode field that points to a node named 'topSeparator' that was DEF'ed earlier in the scene.

METHODS

static SoType getClassTypeId()
virtual void getTypeId() const
Returns the type for this class or a particular object of this class.

SoNode * getValue() const
Returns this field's value.

SoNode * operator =(SoNode * newValue)
void setValue(SoNode * newValue)
Sets this field to newValue.

int operator ==(const SoSFNode &f) const
int operator !=(const SoSFNode &f) const
Returns TRUE if f is of the same type and has the same value as this field.

SEE ALSO

SoField, SoSField, SoMFNode, SoNode