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

NAME

       SoGate — selectively copies its input to its output

INHERITS FROM

       SoBase > SoFieldContainer > SoEngine > SoGate

SYNOPSIS

       #include <Inventor/engines/SoGate.h>

          Inputs from class SoGate:

     SoSFBool            enable
     SoSFTrigger         trigger
     <inputType>         input

          Outputs from class SoGate:

     (<outputType>)      output

          Methods from class SoGate:

                         SoGate(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  selectively copies its input to its output. The type of the input field can be any subclass
       of  SoMField.  The  type  is  specified  when  an  instance  of  the  class  is  created.  For   example,
       SoGate(SoMFFloat::getClassTypeId())  creates an engine that copies floating-point values.

       The  enable  input  controls  continous  flow-through  of values. While enable is TRUE, the input will be
       copied to the output. Alternatively, by touching the trigger input, you can copy a single value from  the
       input to the output.

       Note that unlike most other engine fields, input and output are pointers. Note also that by default input
       does not contain any values.

INPUTS

     SoSFBool            enable
          Enable continous flow-through.

     SoSFTrigger         trigger
          Copy a single value.

     <inputType>         input
          The value that is copied to the output when the gate is open.

OUTPUTS

     (<outputType>)      output
          Contains a copy of the input value if the gate is open.

METHODS

                         SoGate(SoType inputType)
          Constructor. The argument specifies the type of the input field.

FILE FORMAT/DEFAULTS

       Gate {
          type     <inputType>
          input    []
          enable   FALSE
          trigger
     }

SEE ALSO

       SoEngineOutput, SoConcatenate, SoSelectOne

                                                                                                   SoGate(3IV)()