SoSeparatorKit(3IV)

NAME
SoSeparatorKit — separator nodekit class

INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoBaseKit > SoSeparatorKit

SYNOPSIS
#include <Inventor/nodekits/SoSeparatorKit.h>

enum CacheEnabled {
SoSeparatorKit::OFF
Never build or use a cache
SoSeparatorKit::ON
Always try to build a cache
SoSeparatorKit::AUTO
Automatic caching
}

Fields from class SoSeparatorKit:

SoSFEnum
renderCaching
SoSFEnum
boundingBoxCaching
SoSFEnum
renderCulling
SoSFEnum
pickCulling

Parts from class SoSeparatorKit:

(SoPickStyle)
pickStyle
(SoAppearanceKit)
appearance
(SoUnits)
units
(SoTransform)
transform
(SoTexture2Transform)
texture2Transform
(SoNodeKitListPart)
childList

Parts from class SoBaseKit:

(SoNodeKitListPart)
callbackList

Methods from class SoSeparatorKit:

SoSeparatorKit()
static const SoNodekitCatalog *
getClassNodekitCatalog() const
static SoType
getClassTypeId()

Methods from class SoBaseKit:

virtual const SoNodekitCatalog *
getNodekitCatalog() const
virtual SoNode *
getPart(const SbName &partName, SbBool makeIfNeeded)
SbString
getPartString(const SoBase *part)
virtual SoNodeKitPath *
createPathToPart(const SbName &partName, SbBool makeIfNeeded, const SoPath *pathToExtend = NULL)
virtual SbBool
setPart(const SbName &partName, SoNode *newPart)
SbBool
set(char *partName, char *parameters)
SbBool
set(char *nameValuePairs)
static SbBool
isSearchingChildren()
static void
setSearchingChildren(SbBool newVal)

Methods from class SoNode:

void
setOverride(SbBool state)
SbBool
isOverride() const
SoNode *
copy(SbBool copyConnections = FALSE) const
virtual SbBool
affectsState() const
static SoNode *
getByName(const SbName &name)
static int
getByName(const SbName &name, SoNodeList &list)

Methods from class SoFieldContainer:

void
setToDefaults()
SbBool
hasDefaultValues() const
SbBool
fieldsAreEqual(const SoFieldContainer *fc) const
void
copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)
void
get(SbString &fieldDataString)
virtual int
getFields(SoFieldList &resultList) const
virtual SoField *
getField(const SbName &fieldName) const
SbBool
getFieldName(const SoField *field, SbName &fieldName) const
SbBool
isNotifyEnabled() const
SbBool
enableNotify(SbBool flag)

Methods from class SoBase:

void
ref()
void
unref() const
void
unrefNoDelete() const
void
touch()
virtual SoType
getTypeId() const
SbBool
isOfType(SoType type) const
virtual void
setName(const SbName &name)
virtual SbName
getName() const

Macros from class SoBaseKit:

SO_GET_PART(kit, partName, partClass)

SO_CHECK_PART(kit, partName, partClass)

DESCRIPTION
A nodekit that is used for creating nodekit hierarchies. SoSeparatorKit contains a transform part, a childList part, and a few others in its catalog. The transform part (an SoTransform node) affects all of the children in the childList. Each of these children must be an SoSeparatorKit or from a class that is derived from SoSeparatorKit (e.g., SoShapeKit and SoWrapperKit). Since all members of the childList are in turn SoSeparatorKits, and each contains a transform, these nested lists allow you to create a hierarchy of motion, in which each transform affects an entire subgraph of nodekits.

The other parts added to the catalog for the SoSeparatorKit are pickStyle, appearance, units and texture2Transform. Furthermore, since SoSeparator is derived from SoBaseKit, it inherits the callbackList part. This is a list of SoCallback and/or SoEventCallback nodes which enable the SoSeparatorKit to perform special callbacks whenever an action is applied to it.

By creating the pickStyle part, a user can alter the pick style for the entire nodekit hierarchy. The appearance part is an SoAppearanceKit nodekit. Note that all parts contained in the SoAppearanceKit catalog can be accessed as if they were part of the SoSeparatorKit. For example:

myMtl = mySepKit->getPart("material",TRUE)

  and

mySepKit->setPart("material",myMtl)

  See SoBaseKit for further explanation.

FIELDS
SoSFEnum
renderCaching
Set render caching mode. Default is AUTO.

SoSFEnum
boundingBoxCaching
Set bounding box caching mode. Default is ON. Setting this value to AUTO is equivalent to ON — automatic culling is not implemented.

SoSFEnum
renderCulling
Set render culling mode. Default is OFF. Setting this value to AUTO is equivalent to ON — automatic culling is not implemented.

SoSFEnum
pickCulling
Set pick culling mode. Default is AUTO.

PARTS
(SoPickStyle)
pickStyle
An SoPickStyle property node that can be used to set the picking style of its children. This part is NULL by default, but is created automatically if necessary.

(SoAppearanceKit)
appearance
An SoAppearanceKit nodekit which can be used to set the appearance properties of its children. This part is NULL by default, but is created automatically if necessary.

(SoUnits)
units
An SoUnits node which can be used to set the types of units, (e.g., feet), of its children. This part is NULL by default, but is created automatically if necessary.

(SoTransform)
transform
An SoTransform node which can be used to set the overall position, orientation, and scale of its children. This part is NULL by default, but is created automatically if necessary.

(SoTexture2Transform)
texture2Transform
An SoTexture2Transform node which can be used to apply a transformation to any textures used by its children. This part is NULL by default, but is created automatically if necessary.

(SoNodeKitListPart)
childList
This part contains the children nodekits of this SoSeparatorKit. This part is a list part and can have multiple children. This part is NULL by default, but is created automatically when the first child is added to the childList. Also, when asked to build a member of the childList, the separatorKit will build an SoShapeKit by default. So if the childList part is NULL, and you call: getPart("childList[0]", TRUE), the separator kit will create the childList and add an SoShapeKit as the new element in the list.

METHODS

SoSeparatorKit()
Constructor.

static const SoNodekitCatalog *
getClassNodekitCatalog() const
Returns an SoNodekitCatalog for the class SoSeparatorKit.

static SoType
getClassTypeId()
Returns type identifier for this class.

CATALOG PARTS
All parts
 |  |  | NULL by
Part Name | Part Type | Default Type | Default
callbackList | NodeKitListPart | -- | yes
pickStyle | PickStyle | -- | yes
appearance | AppearanceKit | -- | yes
units | Units | -- | yes
transform | Transform | -- | yes
texture2Transform | Texture2Transform | -- | yes
childList | NodeKitListPart | -- | yes
Extra information for list parts from above table
Part Name | Container Type | Permissible Types
callbackList | Separator | Callback, EventCallback
childList | Separator | ShapeKit, SeparatorKit

FILE FORMAT/DEFAULTS
SeparatorKit {
renderCaching	AUTO
boundingBoxCaching	AUTO
renderCulling	AUTO
pickCulling	AUTO
callbackList	NULL
pickStyle	NULL
appearance	NULL
units	NULL
transform	NULL
texture2Transform	NULL
childList	NULL
}

SEE ALSO
SoAppearanceKit, SoBaseKit, SoCameraKit, SoLightKit, SoNodeKit, SoNodeKitDetail, SoNodeKitListPart, SoNodeKitPath, SoNodekitCatalog, SoSceneKit, SoShapeKit, SoWrapperKit