Murl::Logic::GraphNodeT< NodeType > Class Template Reference

A template class for safe access of basic graph node properties and for easy use of the GraphObservableNode object in combination with a INodeObserver. More...

#include "murl_logic_graph_node.h"

Public Types

using ValueType = NodeType
 Type definition of the value type.
 
using ObservableNodeT = GraphObservableNode< NodeType >
 Type definition of the observable node.
 

Public Member Functions

 GraphNodeT ()
 The default constructor. More...
 
 GraphNodeT (Graph::INode *node)
 The constructor including a graph node. More...
 
template<class NodeType2 >
 GraphNodeT (const GraphNodeT< NodeType2 > &graphNode)
 The constructor including a graph node object. More...
 
 GraphNodeT (const Graph::IRoot *root, const String &nodeIdPath)
 The constructor including the graph root node and path. More...
 
 GraphNodeT (Graph::INamespace *namespaceNode, const String &nodeIdPath)
 The constructor including a graph namespace node and path. More...
 
 GraphNodeT (const NamespaceNode &namespaceNode, const String &nodeIdPath)
 The constructor including a graph namespace node and path. More...
 
virtual ~GraphNodeT ()
 The destructor. More...
 
Bool IsValid () const
 Check if the graph node is valid. More...
 
Bool RemoveReference ()
 Remove the reference from the graph node. More...
 
Bool CanReference (Graph::INode *node) const
 Check if a graph node can be referenced by this template's node type. More...
 
template<class NodeType2 >
Bool CanReference (const GraphNodeT< NodeType2 > &graphNode) const
 Check if a graph node object can be referenced by this template's node type. More...
 
Bool CanResolveReference (Graph::INode *node) const
 Check if a graph node can be referenced by this template's node type by resolving a Graph::IReference node. More...
 
template<class NodeType2 >
Bool CanResolveReference (const GraphNodeT< NodeType2 > &graphNode) const
 Check if a graph node object can be referenced by this template's node type by resolving a Logic::ReferenceNode. More...
 
IObservableNodePtr GetReference (Graph::INode *node)
 Get a reference to a graph node of this template's node type. More...
 
template<class NodeType2 >
IObservableNodePtr GetReference (const GraphNodeT< NodeType2 > &graphNode)
 Get a reference to a graph node object of this template's node type. More...
 
IObservableNodePtr GetReference (const Graph::IRoot *root, const String &nodeIdPath)
 Get a reference to a graph node by identifier. More...
 
IObservableNodePtr GetReference (Graph::INamespace *namespaceNode, const String &nodeIdPath)
 Get a reference to a graph node by identifier relative to a namespace. More...
 
IObservableNodePtr GetReference (const NamespaceNode &namespaceNode, const String &nodeIdPath)
 Get a reference to a graph node by identifier relative to a namespace. More...
 
IObservableNodePtr ResolveReference (Graph::INode *node)
 Get a reference to a graph node by resolving a Graph::IReference node. More...
 
template<class NodeType2 >
IObservableNodePtr ResolveReference (const GraphNodeT< NodeType2 > &graphNode)
 Get a reference to a graph node by resolving a Logic::ReferenceNode. More...
 
IObservableNodePtr ResolveReference (const Graph::IRoot *root, const String &nodeIdPath)
 Get a reference to a graph node by resolving a Graph::IReference node by identifier. More...
 
IObservableNodePtr ResolveReference (Graph::INamespace *namespaceNode, const String &nodeIdPath)
 Get a reference to a graph node by resolving a Graph::IReference node by identifier relative to a namespace. More...
 
IObservableNodePtr ResolveReference (const NamespaceNode &namespaceNode, const String &nodeIdPath)
 Get a reference to a graph node by resolving a Graph::IReference node by identifier relative to a namespace. More...
 
 operator IObservableNodePtr () const
 Conversion operator. More...
 
NodeType * operator-> () const
 Dereference operator. More...
 
NodeType * GetNode () const
 Get the graph node interface. More...
 
Graph::INodeGetNodeInterface () const
 Get the graph Graph::INode interface. More...
 
const StringGetId () const
 Get the Graph::INode node identifier. More...
 
Bool SetActive (Bool isActive) const
 Enable/disable logic traversals. More...
 
Bool IsActive () const
 Check if logic traversals are enabled. More...
 
Bool SetVisible (Bool isVisible) const
 Enable/disable output traversals. More...
 
Bool IsVisible () const
 Check if output traversals are enabled. More...
 
Bool SetActiveAndVisible (Bool enabled) const
 Enable/disable both logic and output traversals. More...
 
Bool IsActiveAndVisible () const
 Check if both logic and output traversals are enabled. More...
 
Graph::INodeGetChild (UInt32 index=0) const
 Get the graph Graph::INode interface of a child by index. More...
 
Graph::INodeGetChild (const String &identifier) const
 Get the graph Graph::INode interface of a child by identifier. More...
 
UInt32 GetNumberOfChildren () const
 Return the number of the graph node's children. More...
 
Graph::INodeGetParent (UInt32 index=0) const
 Get the graph Graph::INode interface of a parent by index. More...
 
Graph::INodeGetParent (const String &identifier) const
 Get the graph Graph::INode interface of a parent by identifier. More...
 
UInt32 GetNumberOfParents () const
 Return the number of the graph node's parents. More...
 
Graph::IControllerGetController (UInt32 index=0) const
 Get the Graph::IController interface at a given index. More...
 
template<class ControllerType >
ControllerType * GetController (UInt32 index=0) const
 Get the graph controller interface of a specified type at a given index. More...
 
UInt32 GetNumberOfControllers () const
 Return the number of the graph node's controllers. More...
 
Graph::ILinkControllerGetLinkController (UInt32 index=0) const
 Get the Graph::ILinkController interface at a given index. More...
 
Graph::ILogicControllerGetLogicController (UInt32 index=0) const
 Get the Graph::ILogicController interface at a given index. More...
 
Graph::INodeLinkControllerGetNodeLinkController (UInt32 index=0) const
 Get the Graph::INodeLinkController interface at a given index. More...
 
Graph::IScriptLogicControllerGetScriptLogicController (UInt32 index=0) const
 Get the Graph::IScriptLogicController interface at a given index. More...
 
Graph::ITimeControllerGetTimeController (UInt32 index=0) const
 Get the Graph::ITimeController interface at a given index. More...
 
Graph::IAnimationTimeControllerGetAnimationTimeController (UInt32 index=0) const
 Get the Graph::IAnimationTimeController interface at a given index. More...
 
Graph::IUniformTimeControllerGetUniformTimeController (UInt32 index=0) const
 Get the Graph::IUniformTimeController interface at a given index. More...
 
Graph::IWaveUniformTimeControllerGetWaveUniformTimeController (UInt32 index=0) const
 Get the Graph::IWaveUniformTimeController interface at a given index. More...
 
Graph::IVariableControllerGetVariableController (UInt32 index=0) const
 Get the Graph::IVariableController interface at a given index. More...
 
Graph::ITimelineVariableControllerGetTimelineVariableController (UInt32 index=0) const
 Get the Graph::ITimelineVariableController interface at a given index. More...
 

Detailed Description

template<class NodeType>
class Murl::Logic::GraphNodeT< NodeType >

A template class for safe access of basic graph node properties and for easy use of the GraphObservableNode object in combination with a INodeObserver.

See GraphNodeTypes for predefined types.

Constructor & Destructor Documentation

◆ GraphNodeT() [1/6]

template<class NodeType >
Murl::Logic::GraphNodeT< NodeType >::GraphNodeT ( )
inline

The default constructor.

Creates a GraphObservableNode object.

◆ GraphNodeT() [2/6]

template<class NodeType >
Murl::Logic::GraphNodeT< NodeType >::GraphNodeT ( Graph::INode node)
inline

The constructor including a graph node.

Creates a GraphObservableNode object.

Parameters
nodeThe graph node.

◆ GraphNodeT() [3/6]

template<class NodeType >
template<class NodeType2 >
Murl::Logic::GraphNodeT< NodeType >::GraphNodeT ( const GraphNodeT< NodeType2 > &  graphNode)
inline

The constructor including a graph node object.

Creates a GraphObservableNode object.

Parameters
graphNodeThe graph node object.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface().

◆ GraphNodeT() [4/6]

template<class NodeType >
Murl::Logic::GraphNodeT< NodeType >::GraphNodeT ( const Graph::IRoot root,
const String nodeIdPath 
)
inline

The constructor including the graph root node and path.

Creates a GraphObservableNode object.

Parameters
rootThe graph root node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.

References Murl::Graph::IRoot::GetRootNamespace().

◆ GraphNodeT() [5/6]

template<class NodeType >
Murl::Logic::GraphNodeT< NodeType >::GraphNodeT ( Graph::INamespace namespaceNode,
const String nodeIdPath 
)
inline

The constructor including a graph namespace node and path.

Creates a GraphObservableNode object.

Parameters
namespaceNodeThe graph namespace node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.

◆ GraphNodeT() [6/6]

template<class NodeType >
Murl::Logic::GraphNodeT< NodeType >::GraphNodeT ( const NamespaceNode namespaceNode,
const String nodeIdPath 
)
inline

The constructor including a graph namespace node and path.

Creates a GraphObservableNode object.

Parameters
namespaceNodeThe logic namespace node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.

References Murl::Logic::GraphNodeT< NodeType >::GetNode().

◆ ~GraphNodeT()

template<class NodeType >
virtual Murl::Logic::GraphNodeT< NodeType >::~GraphNodeT ( )
inlinevirtual

The destructor.

Destroys the GraphObservableNode object.

Member Function Documentation

◆ IsValid()

◆ RemoveReference()

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::RemoveReference ( )
inline

Remove the reference from the graph node.

Returns
true if successful or if the graph node is null.

◆ CanReference() [1/2]

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::CanReference ( Graph::INode node) const
inline

Check if a graph node can be referenced by this template's node type.

Parameters
nodeThe graph node to check.
Returns
true if the graph node has a compatible type, otherwise false.

Referenced by Murl::Logic::GraphNodeT< NodeType >::CanReference().

◆ CanReference() [2/2]

template<class NodeType >
template<class NodeType2 >
Bool Murl::Logic::GraphNodeT< NodeType >::CanReference ( const GraphNodeT< NodeType2 > &  graphNode) const
inline

Check if a graph node object can be referenced by this template's node type.

Parameters
graphNodeThe graph node object to check.
Returns
true if the graph node object has a compatible type, otherwise false.

References Murl::Logic::GraphNodeT< NodeType >::CanReference(), and Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface().

◆ CanResolveReference() [1/2]

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::CanResolveReference ( Graph::INode node) const
inline

Check if a graph node can be referenced by this template's node type by resolving a Graph::IReference node.

Parameters
nodeThe graph node to check.
Returns
true if the graph node has a compatible type, otherwise false.

Referenced by Murl::Logic::GraphNodeT< NodeType >::CanResolveReference().

◆ CanResolveReference() [2/2]

template<class NodeType >
template<class NodeType2 >
Bool Murl::Logic::GraphNodeT< NodeType >::CanResolveReference ( const GraphNodeT< NodeType2 > &  graphNode) const
inline

Check if a graph node object can be referenced by this template's node type by resolving a Logic::ReferenceNode.

Parameters
graphNodeThe graph node object to check.
Returns
true if the graph node object has a compatible type, otherwise false.

References Murl::Logic::GraphNodeT< NodeType >::CanResolveReference(), and Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface().

◆ GetReference() [1/5]

template<class NodeType >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::GetReference ( Graph::INode node)
inline

◆ GetReference() [2/5]

template<class NodeType >
template<class NodeType2 >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::GetReference ( const GraphNodeT< NodeType2 > &  graphNode)
inline

Get a reference to a graph node object of this template's node type.

Parameters
graphNodeThe graph node object.
Returns
The observable node.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Logic::GraphNodeT< NodeType >::GetReference().

◆ GetReference() [3/5]

template<class NodeType >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::GetReference ( const Graph::IRoot root,
const String nodeIdPath 
)
inline

Get a reference to a graph node by identifier.

Parameters
rootThe graph root node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.
Returns
The observable node.

References Murl::Graph::IRoot::GetRootNamespace().

◆ GetReference() [4/5]

template<class NodeType >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::GetReference ( Graph::INamespace namespaceNode,
const String nodeIdPath 
)
inline

Get a reference to a graph node by identifier relative to a namespace.

Parameters
namespaceNodeThe graph namespace node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.
Returns
The observable node.

◆ GetReference() [5/5]

template<class NodeType >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::GetReference ( const NamespaceNode namespaceNode,
const String nodeIdPath 
)
inline

Get a reference to a graph node by identifier relative to a namespace.

Parameters
namespaceNodeThe logic namespace node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.
Returns
The observable node.

References Murl::Logic::GraphNodeT< NodeType >::GetNode().

◆ ResolveReference() [1/5]

template<class NodeType >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::ResolveReference ( Graph::INode node)
inline

Get a reference to a graph node by resolving a Graph::IReference node.

Parameters
nodeThe Graph::IReference node to resolve.
Returns
The observable node.

Referenced by Murl::Logic::GraphNodeT< NodeType >::ResolveReference().

◆ ResolveReference() [2/5]

template<class NodeType >
template<class NodeType2 >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::ResolveReference ( const GraphNodeT< NodeType2 > &  graphNode)
inline

Get a reference to a graph node by resolving a Logic::ReferenceNode.

Parameters
graphNodeThe Logic::ReferenceNode node to resolve.
Returns
The observable node.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Logic::GraphNodeT< NodeType >::ResolveReference().

◆ ResolveReference() [3/5]

template<class NodeType >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::ResolveReference ( const Graph::IRoot root,
const String nodeIdPath 
)
inline

Get a reference to a graph node by resolving a Graph::IReference node by identifier.

Parameters
rootThe graph root node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.
Returns
The observable node.

References Murl::Graph::IRoot::GetRootNamespace().

◆ ResolveReference() [4/5]

template<class NodeType >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::ResolveReference ( Graph::INamespace namespaceNode,
const String nodeIdPath 
)
inline

Get a reference to a graph node by resolving a Graph::IReference node by identifier relative to a namespace.

Parameters
namespaceNodeThe graph namespace node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.
Returns
The observable node.

◆ ResolveReference() [5/5]

template<class NodeType >
IObservableNodePtr Murl::Logic::GraphNodeT< NodeType >::ResolveReference ( const NamespaceNode namespaceNode,
const String nodeIdPath 
)
inline

Get a reference to a graph node by resolving a Graph::IReference node by identifier relative to a namespace.

Parameters
namespaceNodeThe logic namespace node.
nodeIdPathThe node ID to find, with optional path specification when searching in sub-namespaces.
Returns
The observable node.

References Murl::Logic::GraphNodeT< NodeType >::GetNode().

◆ operator IObservableNodePtr()

template<class NodeType >
Murl::Logic::GraphNodeT< NodeType >::operator IObservableNodePtr ( ) const
inline

Conversion operator.

Returns
The IObservableNode interface shared pointer.

◆ operator->()

template<class NodeType >
NodeType* Murl::Logic::GraphNodeT< NodeType >::operator-> ( ) const
inline

Dereference operator.

Returns
A pointer to the graph node interface or null.

◆ GetNode()

◆ GetNodeInterface()

◆ GetId()

template<class NodeType >
const String& Murl::Logic::GraphNodeT< NodeType >::GetId ( ) const
inline

◆ SetActive()

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::SetActive ( Bool  isActive) const
inline

Enable/disable logic traversals.

Calls Graph::ITraversable::SetActive().

Parameters
isActiveIf true, logic traversals are enabled.
Returns
true if successful.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::ITraversable::SetActive().

Referenced by Murl::Logic::GraphInstanceObjects< InstanceObjectType >::OnSetEnabled().

◆ IsActive()

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::IsActive ( ) const
inline

Check if logic traversals are enabled.

Calls Graph::ITraversable::IsActive().

Returns
true if enabled.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::ITraversable::IsActive().

◆ SetVisible()

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::SetVisible ( Bool  isVisible) const
inline

Enable/disable output traversals.

Calls Graph::ITraversable::SetVisible().

Parameters
isVisibleIf true, output traversals are enabled.
Returns
true if successful.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::ITraversable::SetVisible().

◆ IsVisible()

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::IsVisible ( ) const
inline

Check if output traversals are enabled.

Calls Graph::ITraversable::IsVisible().

Returns
true if enabled.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::ITraversable::IsVisible().

◆ SetActiveAndVisible()

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::SetActiveAndVisible ( Bool  enabled) const
inline

Enable/disable both logic and output traversals.

Calls Graph::ITraversable::SetActiveAndVisible().

Parameters
enabledIf true, both logic and output traversals are enabled.
Returns
true if successful.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::ITraversable::SetActiveAndVisible().

Referenced by Murl::Logic::GraphPositionInstance::SetObtained(), and Murl::Logic::GraphSoundInstance::SetObtained().

◆ IsActiveAndVisible()

template<class NodeType >
Bool Murl::Logic::GraphNodeT< NodeType >::IsActiveAndVisible ( ) const
inline

Check if both logic and output traversals are enabled.

Calls Graph::ITraversable::IsActiveAndVisible().

Returns
true if both are enabled.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::ITraversable::IsActiveAndVisible().

◆ GetChild() [1/2]

template<class NodeType >
Graph::INode* Murl::Logic::GraphNodeT< NodeType >::GetChild ( UInt32  index = 0) const
inline

Get the graph Graph::INode interface of a child by index.

Parameters
indexThe zero-based index of the child.
Returns
A pointer to the Graph::INode interface or null.

References Murl::Graph::INode::GetChild(), and Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface().

◆ GetChild() [2/2]

template<class NodeType >
Graph::INode* Murl::Logic::GraphNodeT< NodeType >::GetChild ( const String identifier) const
inline

Get the graph Graph::INode interface of a child by identifier.

Parameters
identifierThe identifier of the child to search for.
Returns
A pointer to the Graph::INode interface or null.

References Murl::Graph::INode::GetChild(), and Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface().

◆ GetNumberOfChildren()

template<class NodeType >
UInt32 Murl::Logic::GraphNodeT< NodeType >::GetNumberOfChildren ( ) const
inline

Return the number of the graph node's children.

Returns
The number of children.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::INode::GetNumberOfChildren().

◆ GetParent() [1/2]

template<class NodeType >
Graph::INode* Murl::Logic::GraphNodeT< NodeType >::GetParent ( UInt32  index = 0) const
inline

Get the graph Graph::INode interface of a parent by index.

Parameters
indexThe zero-based index of the parent.
Returns
A pointer to the Graph::INode interface or null.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::INode::GetParent().

◆ GetParent() [2/2]

template<class NodeType >
Graph::INode* Murl::Logic::GraphNodeT< NodeType >::GetParent ( const String identifier) const
inline

Get the graph Graph::INode interface of a parent by identifier.

Parameters
identifierThe identifier of the parent to search for.
Returns
A pointer to the Graph::INode interface or null.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::INode::GetParent().

◆ GetNumberOfParents()

template<class NodeType >
UInt32 Murl::Logic::GraphNodeT< NodeType >::GetNumberOfParents ( ) const
inline

Return the number of the graph node's parents.

Returns
The number of parents.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::INode::GetNumberOfParents().

◆ GetController() [1/2]

template<class NodeType >
Graph::IController* Murl::Logic::GraphNodeT< NodeType >::GetController ( UInt32  index = 0) const
inline

Get the Graph::IController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::IController interface or null.

References Murl::Graph::INode::GetController(), and Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface().

Referenced by Murl::Logic::GraphNodeT< NodeType >::GetController().

◆ GetController() [2/2]

template<class NodeType >
template<class ControllerType >
ControllerType* Murl::Logic::GraphNodeT< NodeType >::GetController ( UInt32  index = 0) const
inline

Get the graph controller interface of a specified type at a given index.

Parameters
indexThe zero-based index of the controller.
Template Parameters
ControllerTypeThe controller interface class type.
Returns
A pointer to the ControllerType interface or null.

References Murl::Logic::GraphNodeT< NodeType >::GetController().

◆ GetNumberOfControllers()

template<class NodeType >
UInt32 Murl::Logic::GraphNodeT< NodeType >::GetNumberOfControllers ( ) const
inline

Return the number of the graph node's controllers.

Returns
The number of controllers.

References Murl::Logic::GraphNodeT< NodeType >::GetNodeInterface(), and Murl::Graph::INode::GetNumberOfControllers().

◆ GetLinkController()

template<class NodeType >
Graph::ILinkController* Murl::Logic::GraphNodeT< NodeType >::GetLinkController ( UInt32  index = 0) const
inline

Get the Graph::ILinkController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::ILinkController interface or null.

◆ GetLogicController()

template<class NodeType >
Graph::ILogicController* Murl::Logic::GraphNodeT< NodeType >::GetLogicController ( UInt32  index = 0) const
inline

Get the Graph::ILogicController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::ILogicController interface or null.

◆ GetNodeLinkController()

template<class NodeType >
Graph::INodeLinkController* Murl::Logic::GraphNodeT< NodeType >::GetNodeLinkController ( UInt32  index = 0) const
inline

Get the Graph::INodeLinkController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::INodeLinkController interface or null.

◆ GetScriptLogicController()

template<class NodeType >
Graph::IScriptLogicController* Murl::Logic::GraphNodeT< NodeType >::GetScriptLogicController ( UInt32  index = 0) const
inline

Get the Graph::IScriptLogicController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::IScriptLogicController interface or null.

◆ GetTimeController()

template<class NodeType >
Graph::ITimeController* Murl::Logic::GraphNodeT< NodeType >::GetTimeController ( UInt32  index = 0) const
inline

Get the Graph::ITimeController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::ITimeController interface or null.

◆ GetAnimationTimeController()

template<class NodeType >
Graph::IAnimationTimeController* Murl::Logic::GraphNodeT< NodeType >::GetAnimationTimeController ( UInt32  index = 0) const
inline

Get the Graph::IAnimationTimeController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::IAnimationTimeController interface or null.

◆ GetUniformTimeController()

template<class NodeType >
Graph::IUniformTimeController* Murl::Logic::GraphNodeT< NodeType >::GetUniformTimeController ( UInt32  index = 0) const
inline

Get the Graph::IUniformTimeController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::IUniformTimeController interface or null.

◆ GetWaveUniformTimeController()

template<class NodeType >
Graph::IWaveUniformTimeController* Murl::Logic::GraphNodeT< NodeType >::GetWaveUniformTimeController ( UInt32  index = 0) const
inline

Get the Graph::IWaveUniformTimeController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::IWaveUniformTimeController interface or null.

◆ GetVariableController()

template<class NodeType >
Graph::IVariableController* Murl::Logic::GraphNodeT< NodeType >::GetVariableController ( UInt32  index = 0) const
inline

Get the Graph::IVariableController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::IVariableController interface or null.

◆ GetTimelineVariableController()

template<class NodeType >
Graph::ITimelineVariableController* Murl::Logic::GraphNodeT< NodeType >::GetTimelineVariableController ( UInt32  index = 0) const
inline

Get the Graph::ITimelineVariableController interface at a given index.

Parameters
indexThe zero-based index of the controller.
Returns
A pointer to the Graph::ITimelineVariableController interface or null.

The documentation for this class was generated from the following file:
  • murl_logic_graph_node.h


Copyright © 2011-2024 Spraylight GmbH.