Class NodeBase<T>
Inheritance
Inherited Members
Namespace: EyeAuras.BehaviorTree.Nodes
Assembly: EyeAuras.BehaviorTree.dll
Syntax
public abstract class NodeBase<T> : AuraObjectBase<T>, INode<T>, IAuraObject<T>, INode, IAuraObject, IBindableReactiveObject, ICanSetContext, IHasContext, IBTNode, IHasErrors, IDisposable, INotifyPropertyChanged, IHasError, IHasErrorProvider, IBehaviorTreeSerializable, ICanSetName, IHasName, IEntityContainer, IHasId, IHasTypedId<string> where T : BTNodePropertiesBase, new()
Type Parameters
Name | Description |
---|---|
T |
Constructors
Name | Description |
---|---|
NodeBase() |
Properties
Name | Description |
---|---|
Blackboard | Contains a reference to behavior tree blackboard, which is shared amongst all tree nodes |
ChildIdStrategy | Gets the strategy used for assigning IDs to children within this container. The strategy determines whether children's IDs are dependent on the container's ID. |
Children | The children nodes of the current node. |
ChildrenAsList | Enabled children nodes of the current node, ordered by position. |
ChildrenById | Provides access to the children of this container, indexed by their unique IDs. The nature of these IDs (whether they are independent or linked to the container's ID) is determined by the ChildrenIdStrategy. |
ChildrenSource | |
Clock | |
DefaultName | |
IsBusy | |
IsEnabled | Indicates whether this node is disabled (considered for evaluation/execution) or not |
IsReady | IsReady means that Node is fully loaded - all children are ready, no proxies, etc |
IsReferenceNode | Reference node should not serialize children e.g. SubTree node holds ID of BehaviorTree and is materialized when needed and should not ever be serialized WITH its children |
LastTickDuration | |
LastTickTimestamp | |
MaxInputs | |
MaxOutputs | |
Name | Any instance of a TreeNode can have a user-provided name. This identifier is meant to be human-readable and it doesn't need to be unique. |
NodeCacheFactory | |
NodeFactory | |
NodeId | |
NodeStorage | |
Parent | Contains a reference to a parent, for the root element will be null |
Position | |
Root | Contains a reference to root node |
ShortDescription | |
Status | The execution status of the node. Default is empty. |
Methods
Name | Description |
---|---|
AddChild<TNode>(IBTNodeProperties) | Creates new child given properties. Type of node is determined by provided properties |
Clone() | Clones properties of this node and its children |
FormatToString(ToStringBuilder) | |
Remove() | Removes nodes from parent children collection. Still requires disposal if no longer needed |
Reset() | This abstract method allows nodes to reset their state to default (stop timers, clear counters, etc) |
ResetStatus() | Resets status of this node as well as all children nodes |
Tick(CancellationToken) | Executes the behavior of the node and updates its status. Never throws. |
TickInternal(CancellationToken) | This abstract method defines the main logic of the node and must be implemented in child classes. |
VisitLoad(T) | |
VisitSave(T) |