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


       SoEngine — base class for all engines


       SoBase > SoFieldContainer > SoEngine


       #include <Inventor/engines/SoEngine.h>

          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 =
     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


       SoEngine is the abstract base  class  for  all  engines.  Engines  are  objects  used  for
       animation and behavior. They are lightweight objects that are connected between nodes, the
       clock, and other engines  to  form  interesting  behaviorial  objects  (e.g.,  a  spinning

       Engines  are  used  to animate parts of a scene and/or to constrain one part of a scene in
       relation to some other part of the scene. An engine receives a  number  of  input  values,
       performs  some  operation  on  them,  and  then copies the results into one or more output
       fields. Both the inputs and the outputs can be connected to other fields or engines in the
       scene  graph.   When  an  engine's  output values change, those new values are sent to any
       fields or engines connected to them.


     static SoType       getClassTypeId()
          Returns the type identifier for the SoEngine class.

     virtual int         getOutputs(SoEngineOutputList &list) const
          Returns a list of outputs in this engine. Use getOutputName to get  the  names  of  the
          outputs, and use SoEngineOutput::getConnectionType  to determine their types.

     SoEngineOutput *    getOutput(const SbName &outputName) const
          Returns  a  pointer to the engine output with the given name. If no such output exists,
          NULL is returned.

     SbBool              getOutputName(const SoEngineOutput *output, SbName &outputName) const
          Returns (in outputName) the name of the engine output (output). Returns  FALSE  if  the
          engine output is not contained within the engine instance.

     SoEngine *          copy() const
          Creates  and  returns an exact copy of the engine. All connections to inputs are copied
          as is (without copying what's at the other end).

     static SoEngine *   getByName(const SbName &name)
     static int          getByName(const SbName &name, SoEngineList &list)
          Look up engine(s) by name.


       This is an abstract class. See the reference page of a derived class for  the  format  and
       default values.


       SoBoolOperation,         SoCalculator,         SoComposeMatrix,         SoComposeRotation,
       SoComposeRotationFromTo,       SoComposeVec2f,       SoComposeVec3f,       SoComposeVec4f,
       SoComputeBoundingBox,  SoConcatenate,  SoCounter,  SoDecomposeMatrix, SoDecomposeRotation,
       SoDecomposeVec2f,    SoDecomposeVec3f,    SoDecomposeVec4f,     SoElapsedTime,     SoGate,
       SoInterpolate,   SoOnOff,   SoOneShot,   SoSelectOne,   SoTimeCounter,   SoTransformVec3f,