SoPathSwitch(3IV)NAMESoPathSwitch (SoPathSwitch) - group node that traverses only when
traversed along a given path
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoGroup > SoPathSwitchSYNOPSIS
#include <Inventor_c/nodes/SoPathSwitch.h>
Fields from class SoPathSwitch:
SoSFPath path
Functions from class SoPathSwitch:
SoPathSwitch * SoPathSwitchCreate()SoPathSwitch * SoPathSwitchCreateN(int nChildren)
SoType SoPathSwitchGetClassTypeId()
Functions from class SoGroup:
void SoPathSwitchAddChild(SoPathSwitch *this, SoNode
*child)
void SoPathSwitchInsertChild(SoPathSwitch *this, SoNode
*child, int newChildIndex)
SoNode * SoPathSwitchGetChild(const SoPathSwitch *this, int
index)
int SoPathSwitchFindChild(const SoPathSwitch *this, const
SoNode *child)
int SoPathSwitchGetNumChildren(const SoPathSwitch *this)
void SoPathSwitchRemoveChild(SoPathSwitch *this, int
index)
void SoPathSwitchRemoveChildNode(SoPathSwitch *this,
SoNode *child)
void SoPathSwitchRemoveAllChildren(SoPathSwitch *this)
void SoPathSwitchReplaceChild(SoPathSwitch *this, int
index, SoNode *newChild)
void SoPathSwitchReplaceChildNode(SoPathSwitch *this,
SoNode *oldChild, SoNode *newChild)
Functions from class SoNode:
void SoPathSwitchSetOverride(SoPathSwitch *this, SbBool
state)
SbBool SoPathSwitchIsOverride(const SoPathSwitch *this)
SoNode * SoPathSwitchCopy(const SoPathSwitch *this, SbBool
copyConnections = FALSE)
SbBool SoPathSwitchAffectsState(const SoPathSwitch *this)
SoNode * SoPathSwitchGetByName(const char *name)
int SoPathSwitchGetByNameList(const char *name,
SoNodeList *list)
Page 1SoPathSwitch(3IV)
Functions from class SoFieldContainer:
void SoPathSwitchSetToDflts(SoPathSwitch *this)
SbBool SoPathSwitchHasDfltVals(const SoPathSwitch *this)
SbBool SoPathSwitchFldsAreEq(const SoPathSwitch *this, const
SoFieldContainer *fc)
void SoPathSwitchCopyFieldVals(SoPathSwitch *this, const
SoFieldContainer *fc, SbBool copyConnections =
FALSE)
SbBool SoPathSwitchSet(SoPathSwitch *this, const char
*fieldDataString)
void SoPathSwitchGet(SoPathSwitch *this, SbString
*fieldDataString)
int SoPathSwitchGetFields(const SoPathSwitch *this,
SoFieldList *resultList)
SoField * SoPathSwitchGetField(const SoPathSwitch *this, const
char *fieldName)
SbBool SoPathSwitchGetFieldName(const SoPathSwitch *this,
const SoField *field, SbName *fieldName)
SbBool SoPathSwitchIsNotifyEnabled(const SoPathSwitch *this)
SbBool SoPathSwitchEnableNotify(SoPathSwitch *this, SbBool
flag)
Functions from class SoBase:
void SoPathSwitchRef(SoPathSwitch *this)
void SoPathSwitchUnref(const SoPathSwitch *this)
void SoPathSwitchUnrefNoDelete(const SoPathSwitch *this)
void SoPathSwitchTouch(SoPathSwitch *this)
SoType SoPathSwitchGetTypeId(const SoPathSwitch *this)
SbBool SoPathSwitchIsOfType(const SoPathSwitch *this, SoType
type)
void SoPathSwitchSetName(SoPathSwitch *this, const char
*name)
SbName SoPathSwitchGetName(const SoPathSwitch *this)
DESCRIPTIONSoPathSwitch is a group node that traverses its children only if the
current traversal path matches the SoPath in the path field. This can be
used, for example, to affect only one instance of a subgraph. The path
field contains the path up to (but not including) the SoPathSwitch. The
path need not go all the way back to the root; if it does not, then only
the number of ancestors that are in the path are compared to see if the
children should be traversed. A NULL path means that the children are
never traversed.
FIELDS
SoSFPath path
The path that must match the current traversal path.
Page 2SoPathSwitch(3IV)FUNCTIONSSoPathSwitch * SoPathSwitchCreate()
Creates a path switch node with default settings.
SoPathSwitch * SoPathSwitchCreateN(int nChildren)
Constructor that takes approximate number of children.
SoType SoPathSwitchGetClassTypeId()
Returns type identifier for this class.
ACTION BEHAVIOR
SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction,
SoRayPickAction, SoHandleEventAction
Traverses the children if the paths match.
FILE FORMAT/DEFAULTS
PathSwitch {
path NULL
}
SEE ALSO
SoPath, SoSwitch
Page 3