SoEngine(3IV)

NAME
SoEngine — base class for all engines

INHERITS FROM
SoBase > SoFieldContainer > SoEngine

SYNOPSIS
#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 = 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
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 windmill).

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.

METHODS
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.

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

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