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)()