Provided by: inventor-doc_2.1.6+ds-2_all bug

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

                                                                                           SoSeparatorKit(3IV)()