Provided by: inventor-doc_2.1.5-10-18_all bug

NAME

       SoSelectOne — selects one value from a multiple-value field.

INHERITS FROM

       SoBase > SoFieldContainer > SoEngine > SoSelectOne

SYNOPSIS

       #include <Inventor/engines/SoSelectOne.h>

          Inputs from class SoSelectOne:

     SoSFInt32           index
     <inputType>         input

          Outputs from class SoSelectOne:

     (<outputType>)      output

          Methods from class SoSelectOne:

                         SoSelectOne(SoType inputType)

          Methods from class SoEngine:

     static SoType       getClassTypeId()
     virtual int         getOutputs(SoEngineOutputList &list) const
     SoEngineOutput *    getOutput(const SbName &outputName) const
     SbBool              getOutputName(const SoEngineOutput *output, SbName &outputName) const
     SoEngine *          copy() const
     static SoEngine *   getByName(const SbName &name)
     static int          getByName(const SbName &name, SoEngineList &list)

          Methods from class SoFieldContainer:

     void                setToDefaults()
     SbBool              hasDefaultValues() const
     SbBool              fieldsAreEqual(const SoFieldContainer *fc) const
     void                copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)
     SbBool              set(const char *fieldDataString)
     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

DESCRIPTION

       This  engine selects a single value from a multiple-value field, based on the input field index. The type
       of the input field can be any subclass of SoMField, and the type  of  the  output  is  the  corresponding
       subclass  of  SoSField.   For example, if the input type is SoMFVec3f, the output type will be SoSFVec3f.
       The   type   is   specified   when   an   instance   of   the   class   is    created.    For    example,
       SoSelectOne(SoMFFloat::getClassTypeId())  creates an engine that selects one floating-point value.

       Note  that  unlike  most  other engine fields, the input field and output are pointers. Note also that by
       default input does not contain any values, and no value is output from the engine.

INPUTS

     SoSFInt32           index
          Index of the value to select from the multiple-value field.

     <inputType>         input
          The multiple-value field from which the value will be selected.

OUTPUTS

     (<outputType>)      output
          The single value selected.

METHODS

                         SoSelectOne(SoType inputType)
          Constructor. The argument specifies the type of the multiple-value input field.

FILE FORMAT/DEFAULTS

       SelectOne {
          type   <inputType>
          input  []
          index  0
     }

SEE ALSO

       SoEngineOutput, SoConcatenate, SoGate

                                                                                              SoSelectOne(3IV)()