The IVariable graph node interface. More...
#include "murl_graph_i_variable.h"
Public Member Functions | |
virtual INode * | GetNodeInterface ()=0 |
Get the mutable Graph::INode interface. More... | |
virtual const INode * | GetNodeInterface () const =0 |
Get the constant Graph::INode interface. More... | |
virtual Bool | SetInputType (IEnums::VariableType type)=0 |
Set the data type for all constant input operands. More... | |
virtual IEnums::VariableType | GetInputType () const =0 |
Get the data type for all constant input operands. More... | |
virtual Bool | SetOutputType (IEnums::VariableType type)=0 |
Set the output data type. More... | |
virtual IEnums::VariableType | GetOutputType () const =0 |
Get the output data type. More... | |
virtual Bool | SetOperation (IEnums::AluOperation operation)=0 |
Set the arithmetic/logic operation to perform. More... | |
virtual IEnums::AluOperation | GetOperation () const =0 |
Get the arithmetic/logic operation performed. More... | |
virtual Bool | SetAutoResetEnabled (Bool enabled)=0 |
Enable/disable auto-resetting. More... | |
virtual Bool | IsAutoResetEnabled () const =0 |
Check if auto-resetting is enabled. More... | |
virtual IVariableNodeTarget * | GetVariableInputOperandNodeTarget ()=0 |
Get the mutable Graph::IVariableNodeTarget container referencing the input variables. More... | |
virtual const IVariableNodeTarget * | GetVariableInputOperandNodeTarget () const =0 |
Get the constant Graph::IVariableNodeTarget container referencing the input variables. More... | |
virtual IVariableNodeTarget * | GetVariableOutputOperandNodeTarget ()=0 |
Get the mutable Graph::IVariableNodeTarget container referencing the output variables. More... | |
virtual const IVariableNodeTarget * | GetVariableOutputOperandNodeTarget () const =0 |
Get the constant Graph::IVariableNodeTarget container referencing the output variables. More... | |
virtual Bool | SetConstantInputOperand (UInt32 index, const String &value)=0 |
Set a constant string input value at a given index. More... | |
virtual Bool | SetConstantInputOperand (UInt32 index, Bool value)=0 |
Set a constant boolean input value at a given index. More... | |
virtual Bool | SetConstantInputOperand (UInt32 index, Real value)=0 |
Set a constant floating-point input value at a given index. More... | |
virtual Bool | SetConstantInputOperand (UInt32 index, SInt32 value)=0 |
Set a constant integer input value at a given index. More... | |
virtual Bool | GetConstantInputOperand (UInt32 index, Bool &value) const =0 |
Get a constant boolean input value at a given index. More... | |
virtual Bool | GetConstantInputOperand (UInt32 index, Real &value) const =0 |
Get a constant floating-point input value at a given index. More... | |
virtual Bool | GetConstantInputOperand (UInt32 index, SInt32 &value) const =0 |
Get a constant integer input value at a given index. More... | |
virtual Bool | SetConstantOutputOperand (UInt32 index, const String &value)=0 |
Set a constant string output value at a given index. More... | |
virtual Bool | SetConstantOutputOperand (UInt32 index, Bool value)=0 |
Set a constant boolean output value at a given index. More... | |
virtual Bool | SetConstantOutputOperand (UInt32 index, Real value)=0 |
Set a constant floating-point output value at a given index. More... | |
virtual Bool | SetConstantOutputOperand (UInt32 index, SInt32 value)=0 |
Set a constant integer output value at a given index. More... | |
virtual Bool | GetConstantOutputOperand (UInt32 index, Bool &value) const =0 |
Get a constant boolean output value at a given index. More... | |
virtual Bool | GetConstantOutputOperand (UInt32 index, Real &value) const =0 |
Get a constant floating-point output value at a given index. More... | |
virtual Bool | GetConstantOutputOperand (UInt32 index, SInt32 &value) const =0 |
Get a constant integer output value at a given index. More... | |
virtual Bool | GetValue (Bool &value) const =0 |
Try to get the result as a boolean value. More... | |
virtual Bool | GetValue (Real &value) const =0 |
Try to get the result as a floating-point value. More... | |
virtual Bool | GetValue (SInt32 &value) const =0 |
Try to get the result as a integer value. More... | |
Detailed Description
The IVariable graph node interface.
Variable nodes provide a generic bridge between user logic code and certain scene graph nodes as well as a means for simple arithmetic operations within the scene graph. Variable nodes serve as input for e.g. controllers that implement the Graph::IVariableController interface, or Graph::IClipTransition nodes.
Depending on the actual operation given (IEnums::ALU_OPERATION_*), certain constraints apply to the given input and output data types (inType and outType: IEnums::VARIABLE_TYPE_*) as well as number of constant and variable inputs and outputs (numIn and numOut):
- COPY and REPLACE: numIn==1, numOut==0, inType==outType Result equals input operand #0.
- ADD, SUBTRACT, SUBTRACT_REVERSE, MULTIPLY, DIVIDE, DIVIDE_REVERSE: numIn>=2, numOut==0, inType==outType, inType==SINT32||REAL Result is the combined operation over all input operands.
- MAP, MAP_CLAMPED: numIn>=3, numIn==numOut, inType==REAL Input operands 1..N represent an either strictly ascending or descending sequence of values that map input operand 0 linearly to their corresponding output values (not necessarily in strict order). MAP_CLAMPED clamps the result to the given first or last output operand, if input #0 is outside the range of inputs 1..N. Output #0 is ignored.
- LESS, LESS_OR_EQUAL, GREATER, GREATER_OR_EQUAL: numIn==2, numOut==0, outType==BOOL, inType==SINT32||REAL Result is boolean true or false depending on comparison outcome.
- EQUAL, NOT_EQUAL: numIn==2, numOut==0, outType==BOOL, inType==SINT32||REAL||BOOL Result is boolean true or false depending on comparison outcome.
- NEGATE: numIn==1, numOut==0, inType==outType, inType==SINT32||REAL Result is the negated input #0 (-value).
- INVERT: numIn==1, numOut==0, inType==outType, inType==SINT32||BOOL Result is bitwise (SINT32) or logically (BOOL) inverted.
- AND, OR, XOR: numIn>=2, numOut==0, inType==outType, inType==SINT32||BOOL Result is the bitwise (SINT32) or logical (BOOL) outcome of operation.
Member Function Documentation
◆ GetNodeInterface() [1/2]
|
pure virtual |
Get the mutable Graph::INode interface.
This method returns a mutable pointer to the node's Graph::INode interface, to be able to query or modify common node properties such as active state, visibility or ID.
- Returns
- The mutable Graph::INode interface, or null if not available
◆ GetNodeInterface() [2/2]
|
pure virtual |
Get the constant Graph::INode interface.
This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.
- Returns
- The constant Graph::INode interface, or null if not available
◆ SetInputType()
|
pure virtual |
Set the data type for all constant input operands.
- Parameters
-
type The data type.
- Returns
- true if successful.
◆ GetInputType()
|
pure virtual |
Get the data type for all constant input operands.
- Returns
- The data type.
◆ SetOutputType()
|
pure virtual |
Set the output data type.
- Parameters
-
type The data type.
- Returns
- true if successful.
◆ GetOutputType()
|
pure virtual |
Get the output data type.
- Returns
- The data type.
◆ SetOperation()
|
pure virtual |
Set the arithmetic/logic operation to perform.
- Parameters
-
operation The operation.
- Returns
- true if successful.
◆ GetOperation()
|
pure virtual |
Get the arithmetic/logic operation performed.
- Returns
- The operation.
◆ SetAutoResetEnabled()
Enable/disable auto-resetting.
- Parameters
-
enabled If true, auto-resetting is enabled.
- Returns
- true if successful.
◆ IsAutoResetEnabled()
|
pure virtual |
Check if auto-resetting is enabled.
- Returns
- true if auto-resetting is enabled.
◆ GetVariableInputOperandNodeTarget() [1/2]
|
pure virtual |
Get the mutable Graph::IVariableNodeTarget container referencing the input variables.
This method returns a mutable pointer to the node's Graph::IVariableNodeTarget container, which allows to set or query references to the input variables.
- Returns
- The mutable Graph::IVariableNodeTarget container, or null if not available.
◆ GetVariableInputOperandNodeTarget() [2/2]
|
pure virtual |
Get the constant Graph::IVariableNodeTarget container referencing the input variables.
This method returns a constant pointer to the node's Graph::IVariableNodeTarget container, which allows to query references to the input variables.
- Returns
- The constant Graph::IVariableNodeTarget container, or null if not available.
◆ GetVariableOutputOperandNodeTarget() [1/2]
|
pure virtual |
Get the mutable Graph::IVariableNodeTarget container referencing the output variables.
This method returns a mutable pointer to the node's Graph::IVariableNodeTarget container, which allows to set or query references to the output variables.
- Returns
- The mutable Graph::IVariableNodeTarget container, or null if not available.
◆ GetVariableOutputOperandNodeTarget() [2/2]
|
pure virtual |
Get the constant Graph::IVariableNodeTarget container referencing the output variables.
This method returns a constant pointer to the node's Graph::IVariableNodeTarget container, which allows to query references to the output variables.
- Returns
- The constant Graph::IVariableNodeTarget container, or null if not available.
◆ SetConstantInputOperand() [1/4]
|
pure virtual |
Set a constant string input value at a given index.
See class description.
- Parameters
-
index The input operand index. value The value to apply.
- Returns
- true if successful.
◆ SetConstantInputOperand() [2/4]
|
pure virtual |
Set a constant boolean input value at a given index.
See class description.
- Parameters
-
index The input operand index. value The value to apply.
- Returns
- true if successful.
◆ SetConstantInputOperand() [3/4]
|
pure virtual |
Set a constant floating-point input value at a given index.
See class description.
- Parameters
-
index The input operand index. value The value to apply.
- Returns
- true if successful.
◆ SetConstantInputOperand() [4/4]
|
pure virtual |
Set a constant integer input value at a given index.
See class description.
- Parameters
-
index The input operand index. value The value to apply.
- Returns
- true if successful.
◆ GetConstantInputOperand() [1/3]
|
pure virtual |
Get a constant boolean input value at a given index.
See class description.
- Parameters
-
index The input operand index. value The return value to retrieve.
- Returns
- true if successful.
◆ GetConstantInputOperand() [2/3]
|
pure virtual |
Get a constant floating-point input value at a given index.
See class description.
- Parameters
-
index The input operand index. value The return value to retrieve.
- Returns
- true if successful.
◆ GetConstantInputOperand() [3/3]
|
pure virtual |
Get a constant integer input value at a given index.
See class description.
- Parameters
-
index The input operand index. value The return value to retrieve.
- Returns
- true if successful.
◆ SetConstantOutputOperand() [1/4]
|
pure virtual |
Set a constant string output value at a given index.
See class description.
- Parameters
-
index The output operand index. value The value to apply.
- Returns
- true if successful.
◆ SetConstantOutputOperand() [2/4]
|
pure virtual |
Set a constant boolean output value at a given index.
See class description.
- Parameters
-
index The output operand index. value The value to apply.
- Returns
- true if successful.
◆ SetConstantOutputOperand() [3/4]
|
pure virtual |
Set a constant floating-point output value at a given index.
See class description.
- Parameters
-
index The output operand index. value The value to apply.
- Returns
- true if successful.
◆ SetConstantOutputOperand() [4/4]
|
pure virtual |
Set a constant integer output value at a given index.
See class description.
- Parameters
-
index The output operand index. value The value to apply.
- Returns
- true if successful.
◆ GetConstantOutputOperand() [1/3]
|
pure virtual |
Get a constant boolean output value at a given index.
See class description.
- Parameters
-
index The output operand index. value The return value to retrieve.
- Returns
- true if successful.
◆ GetConstantOutputOperand() [2/3]
|
pure virtual |
Get a constant floating-point output value at a given index.
See class description.
- Parameters
-
index The output operand index. value The return value to retrieve.
- Returns
- true if successful.
◆ GetConstantOutputOperand() [3/3]
|
pure virtual |
Get a constant integer output value at a given index.
See class description.
- Parameters
-
index The output operand index. value The return value to retrieve.
- Returns
- true if successful.
◆ GetValue() [1/3]
Try to get the result as a boolean value.
- Parameters
-
value A reference to a boolean variable to receive the result.
- Returns
- true if successful.
◆ GetValue() [2/3]
Try to get the result as a floating-point value.
- Parameters
-
value A reference to a floating-point variable to receive the result.
- Returns
- true if successful.
◆ GetValue() [3/3]
Try to get the result as a integer value.
- Parameters
-
value A reference to a integer variable to receive the result.
- Returns
- true if successful.
The documentation for this interface was generated from the following file:
- murl_graph_i_variable.h