Arbor 3: FSM & BT Graph Editor  3.7.8
NodeGraph Class Referenceabstract

Base class of node graph. More...

Inheritance diagram for NodeGraph:
IPoolCallbackReceiver ArborFSMInternal BehaviourTreeInternal ArborFSM BehaviourTree

Public Member Functions

Node GetNodeFromIndex (int index)
 Get Node from index. More...
 
Node GetNodeFromID (int nodeID)
 Gets Arbor.Node from the node identifier. More...
 
CalculatorNode GetCalculatorFromIndex (int index)
 Get CalculatorNode from index. More...
 
int GetCalculatorIndex (CalculatorNode calculator)
 Get CalculatorNode index. More...
 
CalculatorNode GetCalculatorFromID (int calculatorID)
 Gets Arbor.CalculatorNode from the calculator identifier. More...
 
CalculatorNode CreateCalculator (int nodeID, System.Type calculatorType)
 Create calculator. More...
 
CalculatorNode CreateCalculator (System.Type calculatorType)
 Create calculator. More...
 
CalculatorNode FindCalculator (Calculator calculator)
 Acquisition of CalculatorNodes Calculator belongs. More...
 
bool DeleteCalculator (CalculatorNode calculatorNode)
 Delete calculator. More...
 
CommentNode GetCommentFromIndex (int index)
 Get CommentNode from index. More...
 
int GetCommentIndex (CommentNode comment)
 Get CommentNode index. More...
 
CommentNode GetCommentFromID (int commentID)
 Gets Arbor.CommentNode from the comment identifier. More...
 
CommentNode CreateComment (int nodeID)
 Create comment. More...
 
CommentNode CreateComment ()
 Create comment. More...
 
void DeleteComment (CommentNode comment)
 Delete comment. More...
 
GroupNode GetGroupFromIndex (int index)
 Get GroupNode from index. More...
 
GroupNode CreateGroup (int nodeID)
 Create group. More...
 
GroupNode CreateGroup ()
 Create group. More...
 
void DeleteGroup (GroupNode group)
 Delete group. More...
 
GroupNode GetGroupFromID (int groupID)
 Gets Arbor.GroupNode from the group identifier. More...
 
DataBranchRerouteNode CreateDataBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
 Create DataBranchRerouteNode. More...
 
DataBranchRerouteNode CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
 Create DataBranchRerouteNode. More...
 
DataBranchRerouteNode CreateDataBranchRerouteNode (Vector2 position, System.Type type)
 Create DataBranchRerouteNode. More...
 
DataBranchRerouteNode CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type)
 Create DataBranchRerouteNode. More...
 
void DeleteDataBranchRerouteNode (DataBranchRerouteNode rerouteNode)
 Delete DataBranchRerouteNode. More...
 
void DeleteCalculatorBranchRerouteNode (DataBranchRerouteNode rerouteNode)
 Delete DataBranchRerouteNode. More...
 
virtual void OnValidateNodes ()
 Called when the node is changed. More...
 
bool DeleteNode (Node node)
 Delete node. More...
 
Node FindNodeContainsBehaviour (NodeBehaviour behaviour)
 Acquisition of nodes NodeBehaviour belongs. More...
 
DataBranch GetDataBranchFromIndex (int index)
 Get DataBranch from index. More...
 
DataBranch GetCalculatorBranchFromIndex (int index)
 Get DataBranch from index. More...
 
int GetDataBranchIndex (DataBranch branch)
 Get DataBranch index. More...
 
int GetCalculatorBranchIndex (DataBranch branch)
 Get DataBranch index. More...
 
DataBranch GetDataBranchFromID (int branchID)
 Gets Arbor.DataBranch from the calculator branch identifier. More...
 
DataBranch GetCalculatorBranchFromID (int branchID)
 Gets Arbor.DataBranch from the calculator branch identifier. More...
 
DataBranch ConnectDataBranch (int branchID, int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
 Connect DataSlot. More...
 
DataBranch ConnectCalculatorBranch (int branchID, int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
 Connect DataSlot. More...
 
DataBranch ConnectDataBranch (int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
 Connect DataSlot. More...
 
DataBranch ConnectCalculatorBranch (int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
 Connect DataSlot. More...
 
void DisconnectDataBranch (Object obj)
 Method to be used internally. More...
 
void DeleteDataBranch (DataBranch branch)
 Delete DataBranch. More...
 
void DeleteCalculatorBranch (DataBranch branch)
 Delete DataBranch. More...
 
bool CheckLoopDataBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
 Check if DataBranch is looping. More...
 
bool CheckLoopCalculatorBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
 Check if DataBranch is looping. More...
 
delegate void NodeGraphCallback (NodeGraph nodeGraph)
 Delegate for NodeGraph callback More...
 
virtual void OnDestroy ()
 This function is called when MonoBehaivour will be destroyed. More...
 
void DestroySubComponents (bool callback=true)
 Method to be used internally. More...
 
override string ToString ()
 Convert graph to string (for debugging). More...
 
void OnPoolResume ()
 Called when resuming. More...
 
void OnPoolSleep ()
 Called when stored in the pool. More...
 

Static Public Member Functions

static NodeGraph FindGraph (string name)
 Get the NodeGraph that in the scene with the name. More...
 
static NodeGraph FindGraph (string name, System.Type type)
 Get the NodeGraph that in the scene with the name. More...
 
static T FindGraph< T > (string name)
 Get the NodeGraph that in the scene with the name. More...
 
static NodeGraph[] FindGraphs (string name)
 Get the NodeGraph of the same name that is in the scene. More...
 
static NodeGraph[] FindGraphs (string name, System.Type type)
 Get the NodeGraph of the same name that is in the scene. More...
 
static T[] FindGraphs< T > (string name)
 Get the NodeGraph of the same name that is in the scene. More...
 
static NodeGraph FindGraph (GameObject gameObject, string name)
 Get NodeGraph in the name that has been attached to the GameObject. More...
 
static NodeGraph FindGraph (GameObject gameObject, string name, System.Type type)
 Get NodeGraph in the name that has been attached to the GameObject. More...
 
static T FindGraph< T > (GameObject gameObject, string name)
 Get NodeGraph in the name that has been attached to the GameObject. More...
 
static NodeGraph[] FindGraphs (GameObject gameObject, string name)
 Get the NodeGraph of the same name that is attached to a GameObject. More...
 
static NodeGraph[] FindGraphs (GameObject gameObject, string name, System.Type type)
 Get the NodeGraph of the same name that is attached to a GameObject. More...
 
static T[] FindGraphs< T > (GameObject gameObject, string name)
 Get the NodeGraph of the same name that is attached to a GameObject. More...
 
static NodeGraph Create (GameObject gameObject, System.Type classType)
 Create NodeGraph More...
 
static GraphType Create< GraphType > (GameObject gameObject)
 Create NodeGraph More...
 
static NodeGraph Instantiate (NodeGraph sourceGraph, NodeBehaviour ownerBehaviour, bool usePool=false)
 Instantiate NodeGraph More...
 
static GraphType Instantiate< GraphType > (GraphType sourceGraph, NodeBehaviour ownerBehaviour, bool usePool=false)
 Instantiate NodeGraph More...
 
static void Destroy (NodeGraph nodeGraph)
 Destroy NodeGraph More...
 

Public Attributes

string graphName = ""
 The Graph name. More...
 
DebugInfiniteLoopSettings debugInfiniteLoopSettings = new DebugInfiniteLoopSettings()
 Debug setting of infinite loop More...
 

Protected Member Functions

abstract bool OnDeleteNode (Node node)
 Delete node. More...
 
virtual void OnValidate ()
 See MonoBehaviour.OnValidate. More...
 
abstract void OnRegisterNodes ()
 Register nodes More...
 
virtual void OnReset ()
 Reset or create callback. More...
 

Properties

NodeGraph parentGraph [get]
 Parent graph More...
 
NodeGraph rootGraph [get]
 Root graph More...
 
Object ownerBehaviourObject [get, set]
 Object of NodeBehaviour own this graph More...
 
NodeBehaviour ownerBehaviour [get, set]
 NodeBehaviour is the owner of this graph More...
 
ParameterContainerInternal parameterContainer [get]
 The ParameterContainer assigned in this graph More...
 
string displayGraphName [get]
 Display name of the node graph. More...
 
DebugInfiniteLoopSettings currentDebugInfiniteLoopSettings [get]
 Current infinite loop debug setting. More...
 
bool external [get]
 Flag instantiated from external graph More...
 
int nodeCount [get]
 Get a count of Node. More...
 
int calculatorCount [get]
 Get a count of CalculatorNode. More...
 
CalculatorNode[] calculators [get]
 Gets all of Arbor.CalculatorNode. More...
 
int commentCount [get]
 Get a count of CommentNode. More...
 
CommentNode[] comments [get]
 Gets all of Arbor.CommentNode. More...
 
int groupCount [get]
 Get a count of GroupNode. More...
 
DataBranchRerouteNodeList dataBranchRerouteNodes [get]
 DataBranchRerouteNode list More...
 
DataBranchRerouteNodeList calculatorBranchRerouteNodes [get]
 DataBranchRerouteNode list More...
 
int dataBranchCount [get]
 Get a count of DataBranch. More...
 
int calculatorBranchCount [get]
 Get a count of DataBranch. More...
 
DataBranch[] calculatorBranchies [get]
 Gets all of Arbor.DataBranch. More...
 
bool isDeserialized [get]
 Returns whether or not deserialization has been done. More...
 

Events

System.Action onAfterDeserialize
 Callback after deserialization More...
 
NodeGraphCallback destroyCallback
 Call back when being destroyed More...
 
NodeGraphCallback stateChangedCallback
 Call back when the state changes More...
 

Detailed Description

Base class of node graph.

Member Function Documentation

◆ CheckLoopCalculatorBranch()

bool CheckLoopCalculatorBranch ( int  inputNodeID,
Object  inputObj,
int  outputNodeID,
Object  outputObj 
)

Check if DataBranch is looping.

Parameters
inputNodeIDInput slot side node ID
inputObjInput slot side Object
outputNodeIDOutput slot side node ID
outputObjOutput slot side Object
Returns
Returns true if it is looping.

◆ CheckLoopDataBranch()

bool CheckLoopDataBranch ( int  inputNodeID,
Object  inputObj,
int  outputNodeID,
Object  outputObj 
)

Check if DataBranch is looping.

Parameters
inputNodeIDInput slot side node ID
inputObjInput slot side Object
outputNodeIDOutput slot side node ID
outputObjOutput slot side Object
Returns
Returns true if it is looping.

◆ ConnectCalculatorBranch() [1/2]

DataBranch ConnectCalculatorBranch ( int  branchID,
int  inputNodeID,
Object  inputObj,
DataSlot  inputSlot,
int  outputNodeID,
Object  outputObj,
DataSlot  outputSlot 
)

Connect DataSlot.

Parameters
branchIDID of the DataBranch to be created
inputNodeIDInput node ID.
inputObjInput object.
inputSlotInput slot.
outputNodeIDOutput node ID.
outputObjOutput object.
outputSlotOutput slot.
Returns
Connected DataBranch

◆ ConnectCalculatorBranch() [2/2]

DataBranch ConnectCalculatorBranch ( int  inputNodeID,
Object  inputObj,
DataSlot  inputSlot,
int  outputNodeID,
Object  outputObj,
DataSlot  outputSlot 
)

Connect DataSlot.

Parameters
inputNodeIDInput node ID.
inputObjInput object.
inputSlotInput slot.
outputNodeIDOutput node ID.
outputObjOutput object.
outputSlotOutput slot.
Returns
Connected DataBranch

◆ ConnectDataBranch() [1/2]

DataBranch ConnectDataBranch ( int  branchID,
int  inputNodeID,
Object  inputObj,
DataSlot  inputSlot,
int  outputNodeID,
Object  outputObj,
DataSlot  outputSlot 
)

Connect DataSlot.

Parameters
branchIDID of the DataBranch to be created
inputNodeIDInput node ID.
inputObjInput object.
inputSlotInput slot.
outputNodeIDOutput node ID.
outputObjOutput object.
outputSlotOutput slot.
Returns
Connected DataBranch

◆ ConnectDataBranch() [2/2]

DataBranch ConnectDataBranch ( int  inputNodeID,
Object  inputObj,
DataSlot  inputSlot,
int  outputNodeID,
Object  outputObj,
DataSlot  outputSlot 
)

Connect DataSlot.

Parameters
inputNodeIDInput node ID.
inputObjInput object.
inputSlotInput slot.
outputNodeIDOutput node ID.
outputObjOutput object.
outputSlotOutput slot.
Returns
Connected DataBranch

◆ Create()

static NodeGraph Create ( GameObject  gameObject,
System.Type  classType 
)
static

Create NodeGraph

Parameters
gameObjectGameObject
classTypeNodeGraph type
Returns
The created NodeGraph

◆ Create< GraphType >()

static GraphType Create< GraphType > ( GameObject  gameObject)
static

Create NodeGraph

Template Parameters
GraphTypeNodeGraph type
Parameters
gameObjectGameObject
Returns
The created NodeGraph
Type Constraints
GraphType :NodeGraph 

◆ CreateCalculator() [1/2]

CalculatorNode CreateCalculator ( int  nodeID,
System.Type  calculatorType 
)

Create calculator.

Parameters
nodeIDNode ID
calculatorTypeCalculator type
Returns
The created calculator. If the node ID is not unique, return null without creating it.

◆ CreateCalculator() [2/2]

CalculatorNode CreateCalculator ( System.Type  calculatorType)

Create calculator.

Parameters
calculatorTypeCalculator type
Returns
The created calculator.

◆ CreateCalculatorBranchRerouteNode() [1/2]

DataBranchRerouteNode CreateCalculatorBranchRerouteNode ( Vector2  position,
System.Type  type 
)

Create DataBranchRerouteNode.

Returns
The created DataBranchRerouteNode.

◆ CreateCalculatorBranchRerouteNode() [2/2]

DataBranchRerouteNode CreateCalculatorBranchRerouteNode ( Vector2  position,
System.Type  type,
int  nodeID 
)

Create DataBranchRerouteNode.

Parameters
positionPosition of the node
typeValue type
nodeIDNode ID
Returns
The created DataBranchRerouteNode. If the node ID is not unique, return null without creating it.

◆ CreateComment() [1/2]

CommentNode CreateComment ( )

Create comment.

Returns
The created comment.

◆ CreateComment() [2/2]

CommentNode CreateComment ( int  nodeID)

Create comment.

Parameters
nodeIDNode ID
Returns
The created comment. If the node ID is not unique, return null without creating it.

◆ CreateDataBranchRerouteNode() [1/2]

DataBranchRerouteNode CreateDataBranchRerouteNode ( Vector2  position,
System.Type  type 
)

Create DataBranchRerouteNode.

Returns
The created DataBranchRerouteNode.

◆ CreateDataBranchRerouteNode() [2/2]

DataBranchRerouteNode CreateDataBranchRerouteNode ( Vector2  position,
System.Type  type,
int  nodeID 
)

Create DataBranchRerouteNode.

Parameters
positionPosition of the node
typeValue type
nodeIDNode ID
Returns
The created DataBranchRerouteNode. If the node ID is not unique, return null without creating it.

◆ CreateGroup() [1/2]

GroupNode CreateGroup ( )

Create group.

Returns
The created group.

◆ CreateGroup() [2/2]

GroupNode CreateGroup ( int  nodeID)

Create group.

Parameters
nodeIDNode ID
Returns
The created group. If the node ID is not unique, return null without creating it.

◆ DeleteCalculator()

bool DeleteCalculator ( CalculatorNode  calculatorNode)

Delete calculator.

Parameters
calculatorNodeCalculator that you want to delete.
Returns
true if deleted

◆ DeleteCalculatorBranch()

void DeleteCalculatorBranch ( DataBranch  branch)

Delete DataBranch.

Parameters
branchDataBranch that you want to delete.

◆ DeleteCalculatorBranchRerouteNode()

void DeleteCalculatorBranchRerouteNode ( DataBranchRerouteNode  rerouteNode)

Delete DataBranchRerouteNode.

Parameters
rerouteNodeDataBranchRerouteNode that you want to delete.

◆ DeleteComment()

void DeleteComment ( CommentNode  comment)

Delete comment.

Parameters
commentComment that you want to delete.

◆ DeleteDataBranch()

void DeleteDataBranch ( DataBranch  branch)

Delete DataBranch.

Parameters
branchDataBranch that you want to delete.

◆ DeleteDataBranchRerouteNode()

void DeleteDataBranchRerouteNode ( DataBranchRerouteNode  rerouteNode)

Delete DataBranchRerouteNode.

Parameters
rerouteNodeDataBranchRerouteNode that you want to delete.

◆ DeleteGroup()

void DeleteGroup ( GroupNode  group)

Delete group.

Parameters
groupGroup that you want to delete.

◆ DeleteNode()

bool DeleteNode ( Node  node)

Delete node.

Parameters
nodeNode that you want to delete.
Returns
true if deleted

◆ Destroy()

static void Destroy ( NodeGraph  nodeGraph)
static

Destroy NodeGraph

Parameters
nodeGraphNodeGraph

◆ DestroySubComponents()

void DestroySubComponents ( bool  callback = true)

Method to be used internally.

In particular there is no need to call.

◆ DisconnectDataBranch()

void DisconnectDataBranch ( Object  obj)

Method to be used internally.

In particular there is no need to call.

◆ FindCalculator()

CalculatorNode FindCalculator ( Calculator  calculator)

Acquisition of CalculatorNodes Calculator belongs.

Parameters
calculatorCalculator
Returns
CalculatorNodes Calculator belongs. Return null if not.

◆ FindGraph() [1/4]

static NodeGraph FindGraph ( GameObject  gameObject,
string  name 
)
static

Get NodeGraph in the name that has been attached to the GameObject.

Parameters
gameObjectWant to search GameObject.
nameThe name of the search NodeGraph.
Returns
Found NodeGraph. Returns null if not found.

◆ FindGraph() [2/4]

static NodeGraph FindGraph ( GameObject  gameObject,
string  name,
System.Type  type 
)
static

Get NodeGraph in the name that has been attached to the GameObject.

Parameters
gameObjectWant to search GameObject.
nameThe name of the search NodeGraph.
typeThe type of the search NodeGraph.
Returns
Found NodeGraph. Returns null if not found.

◆ FindGraph() [3/4]

static NodeGraph FindGraph ( string  name)
static

Get the NodeGraph that in the scene with the name.

Parameters
nameThe name of the search NodeGraph.
Returns
Found NodeGraph. Returns null if not found.

◆ FindGraph() [4/4]

static NodeGraph FindGraph ( string  name,
System.Type  type 
)
static

Get the NodeGraph that in the scene with the name.

Parameters
nameThe name of the search NodeGraph.
typeThe type of the search NodeGraph.
Returns
Found NodeGraph. Returns null if not found.

◆ FindGraph< T >() [1/2]

static T FindGraph< T > ( GameObject  gameObject,
string  name 
)
static

Get NodeGraph in the name that has been attached to the GameObject.

Template Parameters
TThe type of the search NodeGraph.
Parameters
gameObjectWant to search GameObject.
nameThe name of the search NodeGraph.
Returns
Found NodeGraph. Returns null if not found.
Type Constraints
T :NodeGraph 

◆ FindGraph< T >() [2/2]

static T FindGraph< T > ( string  name)
static

Get the NodeGraph that in the scene with the name.

Template Parameters
TThe type of the search NodeGraph.
Parameters
nameThe name of the search NodeGraph.
Returns
Found NodeGraph. Returns null if not found.
Type Constraints
T :NodeGraph 

◆ FindGraphs() [1/4]

static NodeGraph [] FindGraphs ( GameObject  gameObject,
string  name 
)
static

Get the NodeGraph of the same name that is attached to a GameObject.

Parameters
gameObjectWant to search GameObject.
nameThe name of the search NodeGraph.
Returns
Array of found NodeGraph.

◆ FindGraphs() [2/4]

static NodeGraph [] FindGraphs ( GameObject  gameObject,
string  name,
System.Type  type 
)
static

Get the NodeGraph of the same name that is attached to a GameObject.

Parameters
gameObjectWant to search GameObject.
nameThe name of the search NodeGraph.
typeThe type of the search NodeGraph.
Returns
Array of found NodeGraph.

◆ FindGraphs() [3/4]

static NodeGraph [] FindGraphs ( string  name)
static

Get the NodeGraph of the same name that is in the scene.

Parameters
nameThe name of the search NodeGraph.
Returns
Array of found NodeGraph.

◆ FindGraphs() [4/4]

static NodeGraph [] FindGraphs ( string  name,
System.Type  type 
)
static

Get the NodeGraph of the same name that is in the scene.

Parameters
nameThe name of the search NodeGraph.
typeThe type of the search NodeGraph.
Returns
Array of found NodeGraph.

◆ FindGraphs< T >() [1/2]

static T [] FindGraphs< T > ( GameObject  gameObject,
string  name 
)
static

Get the NodeGraph of the same name that is attached to a GameObject.

Template Parameters
TThe type of the search NodeGraph.
Parameters
gameObjectWant to search GameObject.
nameThe name of the search NodeGraph.
Returns
Array of found NodeGraph.
Type Constraints
T :NodeGraph 

◆ FindGraphs< T >() [2/2]

static T [] FindGraphs< T > ( string  name)
static

Get the NodeGraph of the same name that is in the scene.

Template Parameters
TThe type of the search NodeGraph.
Parameters
nameThe name of the search NodeGraph.
Returns
Array of found NodeGraph.
Type Constraints
T :NodeGraph 

◆ FindNodeContainsBehaviour()

Node FindNodeContainsBehaviour ( NodeBehaviour  behaviour)

Acquisition of nodes NodeBehaviour belongs.

Parameters
behaviourNodeBehaviour
Returns
Nodess NodeBehaviour belongs. Return null if not.

◆ GetCalculatorBranchFromID()

DataBranch GetCalculatorBranchFromID ( int  branchID)

Gets Arbor.DataBranch from the calculator branch identifier.

Parameters
branchIDThe calculator branch identifier.
Returns
Found Arbor.DataBranch. Returns null if not found.

◆ GetCalculatorBranchFromIndex()

DataBranch GetCalculatorBranchFromIndex ( int  index)

Get DataBranch from index.

Parameters
indexIndex
Returns
DataBranch

◆ GetCalculatorBranchIndex()

int GetCalculatorBranchIndex ( DataBranch  branch)

Get DataBranch index.

Parameters
branchDataBranch
Returns
Index. If not, it returns -1.

◆ GetCalculatorFromID()

CalculatorNode GetCalculatorFromID ( int  calculatorID)

Gets Arbor.CalculatorNode from the calculator identifier.

Parameters
calculatorIDThe calculator identifier.
Returns
Found Arbor.CalculatorNode. Returns null if not found.

◆ GetCalculatorFromIndex()

CalculatorNode GetCalculatorFromIndex ( int  index)

Get CalculatorNode from index.

Parameters
indexIndex
Returns
CalculatorNode

◆ GetCalculatorIndex()

int GetCalculatorIndex ( CalculatorNode  calculator)

Get CalculatorNode index.

Parameters
calculatorCalculatorNode
Returns
Index. If not, it returns -1.

◆ GetCommentFromID()

CommentNode GetCommentFromID ( int  commentID)

Gets Arbor.CommentNode from the comment identifier.

Parameters
commentIDThe comment identifier.
Returns
Found Arbor.CommentNode. Returns null if not found.

◆ GetCommentFromIndex()

CommentNode GetCommentFromIndex ( int  index)

Get CommentNode from index.

Parameters
indexIndex
Returns
CommentNode

◆ GetCommentIndex()

int GetCommentIndex ( CommentNode  comment)

Get CommentNode index.

Parameters
commentCommentNode
Returns
Index. If not, it returns -1.

◆ GetDataBranchFromID()

DataBranch GetDataBranchFromID ( int  branchID)

Gets Arbor.DataBranch from the calculator branch identifier.

Parameters
branchIDThe calculator branch identifier.
Returns
Found Arbor.DataBranch. Returns null if not found.

◆ GetDataBranchFromIndex()

DataBranch GetDataBranchFromIndex ( int  index)

Get DataBranch from index.

Parameters
indexIndex
Returns
DataBranch

◆ GetDataBranchIndex()

int GetDataBranchIndex ( DataBranch  branch)

Get DataBranch index.

Parameters
branchDataBranch
Returns
Index. If not, it returns -1.

◆ GetGroupFromID()

GroupNode GetGroupFromID ( int  groupID)

Gets Arbor.GroupNode from the group identifier.

Parameters
groupIDThe group identifier.
Returns
Found Arbor.GroupNode. Returns null if not found.

◆ GetGroupFromIndex()

GroupNode GetGroupFromIndex ( int  index)

Get GroupNode from index.

Parameters
indexIndex
Returns
GroupNode

◆ GetNodeFromID()

Node GetNodeFromID ( int  nodeID)

Gets Arbor.Node from the node identifier.

Parameters
nodeIDThe node identifier.
Returns
Found Arbor.Node. Returns null if not found.

◆ GetNodeFromIndex()

Node GetNodeFromIndex ( int  index)

Get Node from index.

Parameters
indexIndex
Returns
Node

◆ Instantiate()

static NodeGraph Instantiate ( NodeGraph  sourceGraph,
NodeBehaviour  ownerBehaviour,
bool  usePool = false 
)
static

Instantiate NodeGraph

Parameters
sourceGraphSource graph
ownerBehaviourNodeBehaviour with chart ownership
usePoolFlag to instantiate using ObjectPool.
Returns
Instantiated graph

◆ Instantiate< GraphType >()

static GraphType Instantiate< GraphType > ( GraphType  sourceGraph,
NodeBehaviour  ownerBehaviour,
bool  usePool = false 
)
static

Instantiate NodeGraph

Template Parameters
GraphTypeGraph type
Parameters
sourceGraphSource graph
ownerBehaviourNodeBehaviour with chart ownership
usePoolFlag to instantiate using ObjectPool.
Returns
Instantiated graph
Type Constraints
GraphType :NodeGraph 

◆ NodeGraphCallback()

delegate void NodeGraphCallback ( NodeGraph  nodeGraph)

Delegate for NodeGraph callback

Parameters
nodeGraphEvent occurred NodeGraph

◆ OnDeleteNode()

abstract bool OnDeleteNode ( Node  node)
protectedpure virtual

Delete node.

Parameters
nodeThe node to delete
Returns
Returns true if deleted, false otherwise.

Implemented in ArborFSMInternal, and BehaviourTreeInternal.

◆ OnDestroy()

virtual void OnDestroy ( )
virtual

This function is called when MonoBehaivour will be destroyed.

◆ OnPoolResume()

void OnPoolResume ( )

Called when resuming.

Implements IPoolCallbackReceiver.

◆ OnPoolSleep()

void OnPoolSleep ( )

Called when stored in the pool.

Implements IPoolCallbackReceiver.

◆ OnRegisterNodes()

abstract void OnRegisterNodes ( )
protectedpure virtual

Register nodes

Implemented in ArborFSMInternal, and BehaviourTreeInternal.

◆ OnReset()

virtual void OnReset ( )
protectedvirtual

Reset or create callback.

Reimplemented in ArborFSMInternal, and BehaviourTreeInternal.

◆ OnValidate()

virtual void OnValidate ( )
protectedvirtual

See MonoBehaviour.OnValidate.

Reimplemented in ArborFSMInternal.

◆ OnValidateNodes()

virtual void OnValidateNodes ( )
virtual

Called when the node is changed.

Reimplemented in BehaviourTreeInternal.

◆ ToString()

override string ToString ( )

Convert graph to string (for debugging).

Returns
Converted string

Member Data Documentation

◆ debugInfiniteLoopSettings

DebugInfiniteLoopSettings debugInfiniteLoopSettings = new DebugInfiniteLoopSettings()

Debug setting of infinite loop

◆ graphName

string graphName = ""

The Graph name.


It is used for identification and retrieval when there is more than one Graph in one GameObject.

Property Documentation

◆ calculatorBranchCount

int calculatorBranchCount
get

Get a count of DataBranch.

◆ calculatorBranchies

DataBranch [] calculatorBranchies
get

Gets all of Arbor.DataBranch.

◆ calculatorBranchRerouteNodes

DataBranchRerouteNodeList calculatorBranchRerouteNodes
get

◆ calculatorCount

int calculatorCount
get

Get a count of CalculatorNode.

◆ calculators

CalculatorNode [] calculators
get

Gets all of Arbor.CalculatorNode.

◆ commentCount

int commentCount
get

Get a count of CommentNode.

◆ comments

CommentNode [] comments
get

Gets all of Arbor.CommentNode.

◆ currentDebugInfiniteLoopSettings

DebugInfiniteLoopSettings currentDebugInfiniteLoopSettings
get

Current infinite loop debug setting.

If it is a child graph, return the infinite loop debug setting of the route graph.

◆ dataBranchCount

int dataBranchCount
get

Get a count of DataBranch.

◆ dataBranchRerouteNodes

DataBranchRerouteNodeList dataBranchRerouteNodes
get

◆ displayGraphName

string displayGraphName
get

Display name of the node graph.

If graphName is empty or null, it returns "(No Name)".

◆ external

bool external
get

Flag instantiated from external graph

◆ groupCount

int groupCount
get

Get a count of GroupNode.

◆ isDeserialized

bool isDeserialized
get

Returns whether or not deserialization has been done.

◆ nodeCount

int nodeCount
get

Get a count of Node.

◆ ownerBehaviour

NodeBehaviour ownerBehaviour
getset

NodeBehaviour is the owner of this graph

◆ ownerBehaviourObject

Object ownerBehaviourObject
getset

Object of NodeBehaviour own this graph

◆ parameterContainer

ParameterContainerInternal parameterContainer
get

The ParameterContainer assigned in this graph

◆ parentGraph

NodeGraph parentGraph
get

Parent graph

◆ rootGraph

NodeGraph rootGraph
get

Root graph

Event Documentation

◆ destroyCallback

NodeGraphCallback destroyCallback

Call back when being destroyed

◆ onAfterDeserialize

System.Action onAfterDeserialize

Callback after deserialization

◆ stateChangedCallback

NodeGraphCallback stateChangedCallback

Call back when the state changes