索引

A B C D E F G H I J L M N O P R S T U V W     
常量字段值|所有程序包|所有类和接口

A

ActionTask<T> - cn.wjybxx.btree.leaf中的类
行为节点抽象 (并非所有行为节点都需要继承该类)
ActionTask() - 类的构造器 cn.wjybxx.btree.leaf.ActionTask
 
ActiveSelector<T> - cn.wjybxx.btree.branch中的类
主动选择节点 每次运行时都会重新测试节点的运行条件,选择一个新的可运行节点。
ActiveSelector() - 类的构造器 cn.wjybxx.btree.branch.ActiveSelector
 
ActiveSelector(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.ActiveSelector
 
addChild(Task<T>) - 类中的方法 cn.wjybxx.btree.Task
1.尽量不要在运行时增删子节点(危险操作) 2.不建议将Task从一棵树转移到另一棵树,可能产生内存泄漏(引用未删除干净)
addChildImpl(Task<T>) - 类中的方法 cn.wjybxx.btree.BranchTask
 
addChildImpl(Task<T>) - 类中的方法 cn.wjybxx.btree.Decorator
 
addChildImpl(Task<T>) - 类中的方法 cn.wjybxx.btree.LeafTask
 
addChildImpl(Task<T>) - 类中的方法 cn.wjybxx.btree.Task
 
addChildImpl(Task<T>) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
addListener(ICancelTokenListener) - 类中的方法 cn.wjybxx.btree.CancelToken
添加监听器
addRedoState(Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
向redo队列中添加一个状态
addStateCfg(FsmStateCfg<T>) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
添加状态
addUndoState(Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
向undo队列中添加一个状态
AlwaysCheckGuard<T> - cn.wjybxx.btree.decorator中的类
每一帧都检查子节点的前置条件,如果前置条件失败,则取消child执行并返回失败。
AlwaysCheckGuard() - 类的构造器 cn.wjybxx.btree.decorator.AlwaysCheckGuard
 
AlwaysCheckGuard(Task<T>) - 类的构造器 cn.wjybxx.btree.decorator.AlwaysCheckGuard
 
AlwaysFail<T> - cn.wjybxx.btree.decorator中的类
在子节点完成之后固定返回失败
AlwaysFail() - 类的构造器 cn.wjybxx.btree.decorator.AlwaysFail
 
AlwaysFail(Task<T>) - 类的构造器 cn.wjybxx.btree.decorator.AlwaysFail
 
AlwaysRunning<T> - cn.wjybxx.btree.decorator中的类
在子节点完成之后仍返回运行。
AlwaysRunning() - 类的构造器 cn.wjybxx.btree.decorator.AlwaysRunning
 
AlwaysSuccess<T> - cn.wjybxx.btree.decorator中的类
在子节点完成之后固定返回成功
AlwaysSuccess() - 类的构造器 cn.wjybxx.btree.decorator.AlwaysSuccess
 
AlwaysSuccess(Task<T>) - 类的构造器 cn.wjybxx.btree.decorator.AlwaysSuccess
 

B

beforeChangeState(StateMachineTask<T>, Task<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.DefaultStateMachineHandler
 
beforeChangeState(StateMachineTask<T>, Task<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.RedoStateMachineHandler
 
beforeChangeState(StateMachineTask<T>, Task<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.UndoStateMachineHandler
 
beforeChangeState(StateMachineTask<T>, Task<T>, Task<T>) - 接口中的方法 cn.wjybxx.btree.fsm.StateMachineHandler
该方法在进入新状态前调用 1.两个参数最多一个为null 2.可以设置新状态的黑板和其它数据 3.用户此时可为新状态分配上下文(黑板、取消令牌、共享属性);同时清理前一个状态的上下文 4.用户此时可拿到新状态ChangeStateArgs,后续则不可 5.如果task需要感知redo和undo,则由用户将信息写入黑板
beforeChangeState(Task<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
 
beforeChangeState(Task<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.branch.Join
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.branch.ParallelBranch
模板类不重写enter方法,只有数据初始化逻辑
beforeEnter() - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
模板类不重写enter方法,只有数据初始化逻辑
beforeEnter() - 类中的方法 cn.wjybxx.btree.decorator.AlwaysRunning
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.decorator.LoopDecorator
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.decorator.SubtreeRef
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
beforeEnter() - 类中的方法 cn.wjybxx.btree.Task
该方法用于初始化对象。
beforeEnter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinAnyOf
 
beforeEnter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinMain
 
beforeEnter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelector
 
beforeEnter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
beforeEnter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSequence
 
beforeEnter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinWaitAll
 
beforeEnter(Join<T>) - 接口中的方法 cn.wjybxx.btree.branch.JoinPolicy
启动前初始化
beforeEnter(StateMachineTask<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.DefaultStateMachineHandler
 
beforeEnter(StateMachineTask<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.RedoStateMachineHandler
 
beforeEnter(StateMachineTask<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.UndoStateMachineHandler
 
beforeEnter(StateMachineTask<T>) - 接口中的方法 cn.wjybxx.btree.fsm.StateMachineHandler
handler可能也有需要初始化的数据。
blackboard - 类中的变量 cn.wjybxx.btree.Task
任务运行时依赖的黑板(主要上下文) 1.每个任务可有独立的黑板(数据); 2.运行时不能为null; 3.如果是自动继承的,exit后自动删除;如果是Control赋值的,则由control删除。
BranchTask<T> - cn.wjybxx.btree中的类
分支任务(可能有多个子节点)
BranchTask() - 类的构造器 cn.wjybxx.btree.BranchTask
 
BranchTask(Task<T>, Task<T>) - 类的构造器 cn.wjybxx.btree.BranchTask
 
BranchTask(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.BranchTask
 

C

cancel() - 类中的方法 cn.wjybxx.btree.CancelToken
发送取消信号,使用默认取消码 CancelCodes.REASON_DEFAULT
cancel(int) - 类中的方法 cn.wjybxx.btree.CancelToken
发送取消信号
cancelCode() - 类中的方法 cn.wjybxx.btree.CancelToken
取消码 1.按bit位存储信息,包括是否请求中断,是否超时,紧急程度等 2.低20位为取消原因;高12位为特殊信息 CancelCodes.MASK_REASON 3.不为0表示已发起取消请求 4.取消时至少赋值一个信息,reason通常应该赋值
CANCELLED - 类中的静态变量 cn.wjybxx.btree.TaskStatus
被取消 -- 需要放在所有失败码的前面,用户可以通过比较大小判断;向上传播时要小心
cancelToken - 类中的变量 cn.wjybxx.btree.branch.ParallelChildHelper
子节点的取消令牌 -- 应当在运行前赋值
cancelToken - 类中的变量 cn.wjybxx.btree.Task
取消令牌(取消上下文) 1.每个任务可有独立的取消信号; 2.运行时不能为null; 3.如果是自动继承的,exit后自动删除;如果是Control赋值的,则由control删除。
CancelToken - cn.wjybxx.btree中的类
行为树模块使用的取消令牌 1.行为树模块需要的功能不多,且需要进行一些特殊的优化,因此去除对Concurrent模块的依赖。
CancelToken() - 类的构造器 cn.wjybxx.btree.CancelToken
 
CancelToken(int) - 类的构造器 cn.wjybxx.btree.CancelToken
 
canHandleEvent(Object) - 类中的方法 cn.wjybxx.btree.leaf.ConditionTask
条件节点正常情况下不会触发事件
canHandleEvent(Object) - 类中的方法 cn.wjybxx.btree.Task
该方法用于测试自己的状态和事件数据 (任何事件处理中,都用用户自身检测取消信号)
canHandleEvent(Object) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
changeState(Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
切换状态 -- 如果状态机处于运行中,则立即切换;当前状态会进去被取消状态
changeState(Task<T>, int) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
切换状态 -- 如果状态机处于运行中,则立即切换
changeState(Task<T>, ChangeStateArgs) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
切换状态 1.如果当前有一个待切换的状态,则会被悄悄丢弃(todo 可以增加一个通知) 2.无论何种模式,在当前状态进入完成状态时一定会触发 3.如果状态机未运行,则仅仅保存在那里,等待下次运行的时候执行 4.关于如何避免当前状态被取消,可参考ChangeStateTask
changeState(String) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
通过状态的名字发起状态切换
changeState(String, int) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
通过状态的名字发起状态切换
ChangeStateArgs - cn.wjybxx.btree.fsm中的类
状态切换参数 建议用户通过原型对象的ChangeStateArgs.withExtraInfo(Object)等方法创建
ChangeStateTask<T> - cn.wjybxx.btree.fsm中的类
 
ChangeStateTask() - 类的构造器 cn.wjybxx.btree.fsm.ChangeStateTask
 
ChangeStateTask(Task<T>) - 类的构造器 cn.wjybxx.btree.fsm.ChangeStateTask
 
checkCancel(int) - 类中的方法 cn.wjybxx.btree.Task
检查取消
child - 类中的变量 cn.wjybxx.btree.Decorator
 
CHILDLESS - 类中的静态变量 cn.wjybxx.btree.TaskStatus
没有子节点
children - 类中的变量 cn.wjybxx.btree.BranchTask
 
cmd - 类中的变量 cn.wjybxx.btree.fsm.ChangeStateArgs
切换命令
CMD_NONE - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
CMD_REDO - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
CMD_UNDO - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
cn.wjybxx.btree - 程序包 cn.wjybxx.btree
 
cn.wjybxx.btree.branch - 程序包 cn.wjybxx.btree.branch
 
cn.wjybxx.btree.branch.join - 程序包 cn.wjybxx.btree.branch.join
 
cn.wjybxx.btree.decorator - 程序包 cn.wjybxx.btree.decorator
 
cn.wjybxx.btree.fsm - 程序包 cn.wjybxx.btree.fsm
 
cn.wjybxx.btree.fsm.handler - 程序包 cn.wjybxx.btree.fsm.handler
 
cn.wjybxx.btree.leaf - 程序包 cn.wjybxx.btree.leaf
 
completedCount - 类中的变量 cn.wjybxx.btree.branch.Join
已进入完成状态的子节点
ConditionTask<T> - cn.wjybxx.btree.leaf中的类
条件节点 注意:并非条件节点必须继承该类。
ConditionTask() - 类的构造器 cn.wjybxx.btree.leaf.ConditionTask
 
ctl - 类中的变量 cn.wjybxx.btree.branch.ParallelChildHelper
子节点控制数据 -- 自行规划
curLoop - 类中的变量 cn.wjybxx.btree.decorator.LoopDecorator
执行前+1,因此从1开始

D

Decorator<T> - cn.wjybxx.btree中的类
装饰任务(最多只有一个子节点)
Decorator() - 类的构造器 cn.wjybxx.btree.Decorator
 
Decorator(Task<T>) - 类的构造器 cn.wjybxx.btree.Decorator
 
DefaultStateMachineHandler<T> - cn.wjybxx.btree.fsm.handler中的类
 
DefaultStateMachineHandler() - 类的构造器 cn.wjybxx.btree.fsm.handler.DefaultStateMachineHandler
 
degree() - 类中的方法 cn.wjybxx.btree.CancelToken
取消的紧急程度
DELAY_NONE - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
不延迟 1.delayArg为当前状态要设置的结果,大于0有效 -- 用于更好的支持FSM。
DELAY_WHEN_COMPLETED - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
在当前子节点完成的时候切换 1.其它延迟模式也会在当前状态完成时触发; 2.通常用于状态主动退出时,可避免自身进入被取消状态 -- 先调用changeState,然后setSuccess;
delayArg - 类中的变量 cn.wjybxx.btree.fsm.ChangeStateArgs
延迟参数
delayMode - 类中的变量 cn.wjybxx.btree.fsm.ChangeStateArgs
延迟模式 -- 不再限制,允许用户扩展

E

enableInline - 类中的静态变量 cn.wjybxx.btree.TaskInlineHelper
是否启用内联
enter(int) - 类中的方法 cn.wjybxx.btree.branch.Foreach
 
enter(int) - 类中的方法 cn.wjybxx.btree.branch.Join
 
enter(int) - 类中的方法 cn.wjybxx.btree.branch.Selector
 
enter(int) - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
enter(int) - 类中的方法 cn.wjybxx.btree.branch.Sequence
 
enter(int) - 类中的方法 cn.wjybxx.btree.branch.ServiceParallel
 
enter(int) - 类中的方法 cn.wjybxx.btree.branch.SimpleParallel
 
enter(int) - 类中的方法 cn.wjybxx.btree.decorator.Inverter
 
enter(int) - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
enter(int) - 类中的方法 cn.wjybxx.btree.Task
该方法在Task进入运行状态时执行 1.数据初始化需要放在Task.beforeEnter()中,避免执行逻辑时对象未初始化完成。
enter(int) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
enter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinAnyOf
 
enter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinMain
 
enter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelector
 
enter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
enter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSequence
 
enter(Join<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinWaitAll
 
enter(Join<T>) - 接口中的方法 cn.wjybxx.btree.branch.JoinPolicy
启动
entity - 类中的变量 cn.wjybxx.btree.TaskEntry
行为树绑定的实体 -- 最好也存储在黑板里;这里的字段本是为了提高性能
ERROR - 类中的静态变量 cn.wjybxx.btree.TaskStatus
默认失败码 -- 是最小的失败码
execute() - 类中的方法 cn.wjybxx.btree.branch.ActiveSelector
 
execute() - 类中的方法 cn.wjybxx.btree.branch.Join
 
execute() - 类中的方法 cn.wjybxx.btree.branch.ServiceParallel
 
execute() - 类中的方法 cn.wjybxx.btree.branch.SimpleParallel
 
execute() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
execute() - 类中的方法 cn.wjybxx.btree.branch.Switch
 
execute() - 类中的方法 cn.wjybxx.btree.decorator.AlwaysCheckGuard
 
execute() - 类中的方法 cn.wjybxx.btree.decorator.AlwaysFail
 
execute() - 类中的方法 cn.wjybxx.btree.decorator.AlwaysRunning
 
execute() - 类中的方法 cn.wjybxx.btree.decorator.AlwaysSuccess
 
execute() - 类中的方法 cn.wjybxx.btree.decorator.Inverter
 
execute() - 类中的方法 cn.wjybxx.btree.decorator.LoopDecorator
 
execute() - 类中的方法 cn.wjybxx.btree.decorator.OnlyOnce
 
execute() - 类中的方法 cn.wjybxx.btree.decorator.SubtreeRef
 
execute() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
execute() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
execute() - 类中的方法 cn.wjybxx.btree.leaf.ActionTask
 
execute() - 类中的方法 cn.wjybxx.btree.leaf.ConditionTask
 
execute() - 类中的方法 cn.wjybxx.btree.leaf.Failure
 
execute() - 类中的方法 cn.wjybxx.btree.leaf.Running
 
execute() - 类中的方法 cn.wjybxx.btree.leaf.SimpleRandom
 
execute() - 类中的方法 cn.wjybxx.btree.leaf.Success
 
execute() - 类中的方法 cn.wjybxx.btree.leaf.WaitFrame
 
execute() - 类中的方法 cn.wjybxx.btree.Task
Task的心跳方法,在Task进入完成状态之前会反复执行。
execute() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
executeImpl() - 类中的方法 cn.wjybxx.btree.leaf.ActionTask
我们的大多数行为节点逻辑都较为简单,不需要事件驱动特性,因而可以转换为同步返回的节点。
exit() - 类中的方法 cn.wjybxx.btree.branch.ParallelBranch
 
exit() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
exit() - 类中的方法 cn.wjybxx.btree.Decorator
 
exit() - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
 
exit() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
exit() - 类中的方法 cn.wjybxx.btree.Task
该方法在Task进入完成状态时执行 1.该方法与Task.enter(int)对应,通常用于停止Task.enter(int)中启动的逻辑。
exit() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
exportControlFlowOptions() - 类中的方法 cn.wjybxx.btree.Task
将task上的临时控制标记写回到flags中
extraInfo - 类中的变量 cn.wjybxx.btree.fsm.ChangeStateArgs
期望传递给Listener的数据

F

Failure<T> - cn.wjybxx.btree.leaf中的类
 
Failure() - 类的构造器 cn.wjybxx.btree.leaf.Failure
 
findStateMachine(Task<T>) - 类中的静态方法 cn.wjybxx.btree.fsm.StateMachineTask
查找task最近的状态机节点 1.仅递归查询父节点和长兄节点 2.优先查找附近的,然后测试长兄节点 - 状态机作为第一个节点的情况比较常见
findStateMachine(Task<T>, String) - 类中的静态方法 cn.wjybxx.btree.fsm.StateMachineTask
查找task最近的状态机节点 1.名字不为空的情况下,支持从兄弟节点中查询 2.优先测试父节点,然后测试兄弟节点
FixedSwitch<T> - cn.wjybxx.btree.branch中的类
展开的switch 在编辑器中,children根据坐标排序,容易变动;这里将其展开为字段,从而方便配置。
FixedSwitch() - 类的构造器 cn.wjybxx.btree.branch.FixedSwitch
 
flags - 类中的变量 cn.wjybxx.btree.Task
任务的自定义标识 1.对任务进行标记是一个常见的需求,我们将其定义在顶层以简化使用 2.在运行期间不应该变动 3.高8位为流程控制特征值,会在任务运行前拷贝到ctl -- 以支持在编辑器导中指定Task的运行特征。
Foreach<T> - cn.wjybxx.btree.branch中的类
迭代所有的子节点最后返回成功
Foreach() - 类的构造器 cn.wjybxx.btree.branch.Foreach
 
Foreach(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.Foreach
 
FsmStateCfg<T> - cn.wjybxx.btree.fsm中的类
Fsm中的状态配置,运行时不可以修改。
FsmStateCfg() - 类的构造器 cn.wjybxx.btree.fsm.FsmStateCfg
 

G

getBlackboard() - 类中的方法 cn.wjybxx.btree.Task
 
getBranch1() - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
getBranch2() - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
getBranch3() - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
getBranch4() - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
getBranch5() - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
getCancelToken() - 类中的方法 cn.wjybxx.btree.Task
 
getChild() - 类中的方法 cn.wjybxx.btree.Decorator
 
getChild(int) - 类中的方法 cn.wjybxx.btree.BranchTask
 
getChild(int) - 类中的方法 cn.wjybxx.btree.Decorator
 
getChild(int) - 类中的方法 cn.wjybxx.btree.LeafTask
 
getChild(int) - 类中的方法 cn.wjybxx.btree.Task
获取指定索引的child
getChild(int) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getChildCount() - 类中的方法 cn.wjybxx.btree.BranchTask
 
getChildCount() - 类中的方法 cn.wjybxx.btree.Decorator
 
getChildCount() - 类中的方法 cn.wjybxx.btree.LeafTask
 
getChildCount() - 类中的方法 cn.wjybxx.btree.Task
子节点的数量(仅包括普通意义上的child,不包括钩子任务)
getChildCount() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getChildHelper(Task<T>) - 类中的静态方法 cn.wjybxx.btree.branch.ParallelBranch
获取child的helper
getChildren() - 类中的方法 cn.wjybxx.btree.BranchTask
 
getCompletedCount() - 类中的方法 cn.wjybxx.btree.branch.Join
 
getCompletedCount() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
进入完成状态的子节点数量
getCond() - 类中的方法 cn.wjybxx.btree.decorator.UntilCond
 
getControl() - 类中的方法 cn.wjybxx.btree.Task
 
getControlData() - 类中的方法 cn.wjybxx.btree.Task
 
getControlFlowOptions() - 类中的方法 cn.wjybxx.btree.Task
获取任务的控制流标记位
getCountMode() - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
getCurFrame() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getCurState() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
获取当前状态
getDelayArg() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
getDelayMode() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
getEnterFrame() - 类中的方法 cn.wjybxx.btree.Task
 
getEntity() - 类中的方法 cn.wjybxx.btree.Task
获取行为树绑定的实体 -- 最好让Entity也在黑板中
getEntity() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getExitFrame() - 类中的方法 cn.wjybxx.btree.Task
 
getFailureStatus() - 类中的方法 cn.wjybxx.btree.decorator.AlwaysFail
 
getFailureStatus() - 类中的方法 cn.wjybxx.btree.leaf.Failure
 
getFirstChild() - 类中的方法 cn.wjybxx.btree.BranchTask
获取第一个子节点 -- 主要为MainPolicy提供帮助
getFlags() - 类中的方法 cn.wjybxx.btree.Task
 
getFlags() - 接口中的方法 cn.wjybxx.btree.TreeLoader.IEntry
入口对象的标记信息
getGuard() - 类中的方法 cn.wjybxx.btree.Task
 
getGuid() - 类中的方法 cn.wjybxx.btree.fsm.FsmStateCfg
 
getGuid() - 接口中的方法 cn.wjybxx.btree.TreeLoader.IEntry
入口对象的guid -- 一定存在
getHandler() - 类中的方法 cn.wjybxx.btree.branch.Switch
 
getHandler() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
getHandler() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getInitStateName() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
getInlinedChild() - 类中的方法 cn.wjybxx.btree.TaskInlineHelper
获取被内联运行的子节点
getInlineHelper() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
getInlineHelper() - 类中的方法 cn.wjybxx.btree.Decorator
 
getInstance() - 类中的静态方法 cn.wjybxx.btree.branch.join.JoinAnyOf
 
getInstance() - 类中的静态方法 cn.wjybxx.btree.branch.join.JoinMain
 
getInstance() - 类中的静态方法 cn.wjybxx.btree.branch.join.JoinSelector
 
getInstance() - 类中的静态方法 cn.wjybxx.btree.branch.join.JoinSequence
 
getInstance() - 类中的静态方法 cn.wjybxx.btree.branch.join.JoinWaitAll
 
getInstance() - 类中的静态方法 cn.wjybxx.btree.fsm.handler.DefaultStateMachineHandler
 
getInstance() - 类中的静态方法 cn.wjybxx.btree.fsm.handler.RedoStateMachineHandler
 
getInstance() - 类中的静态方法 cn.wjybxx.btree.fsm.handler.UndoStateMachineHandler
 
getLastChild() - 类中的方法 cn.wjybxx.btree.BranchTask
获取最后一个子节点
getMachineName() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
getMaxLoop() - 类中的方法 cn.wjybxx.btree.decorator.LoopDecorator
 
getName() - 类中的方法 cn.wjybxx.btree.fsm.FsmStateCfg
 
getName() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
getName() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getName() - 接口中的方法 cn.wjybxx.btree.TreeLoader.IEntry
入口对象的名字(别名) -- 可能为null
getNextState() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
getNextStateGuid() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
getNormalizedStatus() - 类中的方法 cn.wjybxx.btree.Task
获取归一化后的状态码,所有的失败码都转换为TaskStatus.ERROR
getP() - 类中的方法 cn.wjybxx.btree.leaf.SimpleRandom
 
getPolicy() - 类中的方法 cn.wjybxx.btree.branch.Join
 
getPrevStatus() - 类中的方法 cn.wjybxx.btree.Task
获取任务前一次的执行结果 1.取值范围[0,31] -- 其实只要能区分成功失败就够; 2.这并不是一个运行时必须的属性,而是为Debug和UI视图服务的;
getProps() - 类中的方法 cn.wjybxx.btree.fsm.FsmStateCfg
 
getRedoQueueCapacity() - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
 
getReentryId() - 类中的方法 cn.wjybxx.btree.CancelToken
重入id,允许外部捕获
getReentryId() - 类中的方法 cn.wjybxx.btree.Task
获取重入id 1.重入id用于解决事件(或外部逻辑)可能使当前Task进入完成状态的问题。
getRequired() - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
getRequired() - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
getRequired() - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
getRequired() - 类中的方法 cn.wjybxx.btree.leaf.WaitFrame
 
getRoot() - 接口中的方法 cn.wjybxx.btree.TreeLoader.IEntry
入口对象绑定的Root对象
getRootStateMachine() - 类中的方法 cn.wjybxx.btree.TaskEntry
获取根状态机 状态机太重要了,值得我们为其提供各种快捷方法
getRootTask() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getRunFrames() - 类中的方法 cn.wjybxx.btree.Task
运行的帧数 1.任务如果在首次Task.execute()的时候就进入完成状态,那么运行帧数0 2.运行帧数是非常重要的统计属性,值得我们定义在顶层.
getRunningChild() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
获取运行中的子节点 -- 不可结束后查询
getRunningIndex() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
允许外部在结束后查询
getSharedProps() - 类中的方法 cn.wjybxx.btree.Task
 
getStateCfg(String) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
查找状态配置 -- 返回前会加载Task
getStateCfg(String, boolean) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
查找状态配置
getStateCfgs() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
getStateProps() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
getStatus() - 类中的方法 cn.wjybxx.btree.Task
获取原始的状态码
getSubtreeName() - 类中的方法 cn.wjybxx.btree.decorator.SubtreeRef
 
getSucceededCount() - 类中的方法 cn.wjybxx.btree.branch.Join
 
getSucceededCount() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
成功的子节点数量
getTask() - 类中的方法 cn.wjybxx.btree.fsm.FsmStateCfg
 
getTaskEntry() - 类中的方法 cn.wjybxx.btree.Task
 
getTreeLoader() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getType() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
getType() - 接口中的方法 cn.wjybxx.btree.TreeLoader.IEntry
入口对象的类型,通常用于表示其作用
getUndoQueueCapacity() - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
 
GUARD_FAILED - 类中的静态变量 cn.wjybxx.btree.TaskStatus
前置条件检查失败 -- 未运行的情况下直接失败;注意!

H

handler - 类中的变量 cn.wjybxx.btree.fsm.StateMachineTask
handler也加入序列化,用于在编辑器中配置
handler - 类中的变量 cn.wjybxx.btree.TaskEntry
用于Entry的事件驱动
hasListener(ICancelTokenListener) - 类中的方法 cn.wjybxx.btree.CancelToken
查询是否存在给定的监听器
hasNextLoop() - 类中的方法 cn.wjybxx.btree.decorator.LoopDecorator
是否还有下一次循环

I

ICancelTokenListener - cn.wjybxx.btree中的接口
 
illegalStateMsg() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
indexChild(Task<?>) - 类中的方法 cn.wjybxx.btree.BranchTask
 
indexChild(Task<?>) - 类中的方法 cn.wjybxx.btree.Decorator
 
indexChild(Task<?>) - 类中的方法 cn.wjybxx.btree.LeafTask
 
indexChild(Task<?>) - 类中的方法 cn.wjybxx.btree.Task
 
indexChild(Task<?>) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
initChildHelpers() - 类中的方法 cn.wjybxx.btree.branch.ParallelBranch
初始化child关联的helper 1.默认会设置为child的controlData,以避免反向查找开销。
initStateName - 类中的变量 cn.wjybxx.btree.fsm.StateMachineTask
初始状态的名字
inlineChild(Task<T>) - 类中的方法 cn.wjybxx.btree.TaskInlineHelper
尝试内联运行中的子节点
inlineHelper - 类中的变量 cn.wjybxx.btree.branch.SingleRunningChildBranch
被内联运行的子节点 1.该字段定义在这里是为了减少抽象层次,该类并不提供功能。
inlineHelper - 类中的变量 cn.wjybxx.btree.Decorator
被内联运行的子节点 1.该字段定义在这里是为了减少抽象层次,该类并不提供功能。
inlineHelper - 类中的变量 cn.wjybxx.btree.TaskEntry
用于内联优化
INSUFFICIENT_CHILD - 类中的静态变量 cn.wjybxx.btree.TaskStatus
子节点不足
invert(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
如果给定状态是失败码,则返回成功;如果是成功,则返回默认失败码;如果是取消则返回取消;
Inverter<T> - cn.wjybxx.btree.decorator中的类
反转装饰器,它用于反转子节点的执行结果。
Inverter() - 类的构造器 cn.wjybxx.btree.decorator.Inverter
 
Inverter(Task<T>) - 类的构造器 cn.wjybxx.btree.decorator.Inverter
 
isActiveInHierarchy() - 类中的方法 cn.wjybxx.btree.Task
当前节点及其所有父节点是否都为active状态
isActiveSelf() - 类中的方法 cn.wjybxx.btree.Task
当前节点自身是否为active状态
isAllChildCompleted() - 类中的方法 cn.wjybxx.btree.branch.Join
 
isAllChildCompleted() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
是否所有子节点已进入完成状态
isAllChildSucceeded() - 类中的方法 cn.wjybxx.btree.branch.Join
 
isAutoListenCancel() - 类中的方法 cn.wjybxx.btree.Task
 
isAutoResetChildren() - 类中的方法 cn.wjybxx.btree.Task
 
isBreakInline() - 类中的方法 cn.wjybxx.btree.Task
 
isCancelled() - 类中的方法 cn.wjybxx.btree.Task
任务是否已被取消
isCancelled(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
 
isCancelRequested() - 类中的方法 cn.wjybxx.btree.CancelToken
是否已收到取消信号 任务的执行者将持有该令牌,在调度任务前会检测取消信号;如果任务已经开始,则由用户的任务自身检测取消和中断信号。
isCheckingGuard() - 类中的方法 cn.wjybxx.btree.Task
当前是否是条件检查上下文
isCompleted() - 类中的方法 cn.wjybxx.btree.Task
任务是否已完成(成功、失败、取消)
isCompleted(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
 
isExited(int) - 类中的方法 cn.wjybxx.btree.Task
重入id对应的任务是否已退出,即:是否已执行Task.exit()方法。
isFailed() - 类中的方法 cn.wjybxx.btree.Task
任务是否已失败
isFailed(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
 
isFailedOrCancelled() - 类中的方法 cn.wjybxx.btree.Task
任务是否已失败或被取消
isFailedOrCancelled(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
 
isFailFast() - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
isFailFast() - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
isFiring() - 类中的方法 cn.wjybxx.btree.CancelToken
是否正在通知监听器
isFirstChild(Task<?>) - 类中的方法 cn.wjybxx.btree.BranchTask
是否是第一个子节点
isInlinable() - 类中的方法 cn.wjybxx.btree.Task
task是否支持内联
isInvertedGuard() - 类中的方法 cn.wjybxx.btree.Task
 
isLastChild(Task<?>) - 类中的方法 cn.wjybxx.btree.BranchTask
是否是第最后一个子节点
isManualCheckCancel() - 类中的方法 cn.wjybxx.btree.Task
 
isPlain() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 
isReady(StateMachineTask<T>, Task<T>, Task<T>) - 接口中的方法 cn.wjybxx.btree.fsm.StateMachineHandler
是否可以切换到下一个状态
isRedo() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 
isRunning() - 类中的方法 cn.wjybxx.btree.Task
任务是否正在运行
isRunning(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
 
isSlowStart() - 类中的方法 cn.wjybxx.btree.Task
 
isStillborn() - 类中的方法 cn.wjybxx.btree.Task
任务是否未启动就失败了。
isSucceeded() - 类中的方法 cn.wjybxx.btree.Task
任务是否已成功
isSucceeded(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
 
isUndo() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 

J

Join<T> - cn.wjybxx.btree.branch中的类
Join 1.在得出结果之前不会重复执行已完成的任务。
Join() - 类的构造器 cn.wjybxx.btree.branch.Join
 
JoinAnyOf<T> - cn.wjybxx.btree.branch.join中的类
默认的AnyOf,不特殊处理取消 相当于并发编程中的anyOf
JoinAnyOf() - 类的构造器 cn.wjybxx.btree.branch.join.JoinAnyOf
 
JoinMain<T> - cn.wjybxx.btree.branch.join中的类
Main策略,当第一个任务完成时就完成。
JoinMain() - 类的构造器 cn.wjybxx.btree.branch.join.JoinMain
 
JoinPolicy<T> - cn.wjybxx.btree.branch中的接口
Join的完成策略 1.不要在Policy上缓存Join的child。
JoinSelector<T> - cn.wjybxx.btree.branch.join中的类
JoinSelector() - 类的构造器 cn.wjybxx.btree.branch.join.JoinSelector
 
JoinSelectorN<T> - cn.wjybxx.btree.branch.join中的类
JoinSelectorN() - 类的构造器 cn.wjybxx.btree.branch.join.JoinSelectorN
 
JoinSelectorN(int) - 类的构造器 cn.wjybxx.btree.branch.join.JoinSelectorN
 
JoinSequence<T> - cn.wjybxx.btree.branch.join中的类
Sequence 相当于并发编程中的WhenAll/AllOf
JoinSequence() - 类的构造器 cn.wjybxx.btree.branch.join.JoinSequence
 
JoinWaitAll<T> - cn.wjybxx.btree.branch.join中的类
等待所有任务完成后返回成功 相当于并发编程中的WaitAll
JoinWaitAll() - 类的构造器 cn.wjybxx.btree.branch.join.JoinWaitAll
 

L

LeafTask<T> - cn.wjybxx.btree中的类
叶子任务(不能有子节点)
LeafTask() - 类的构造器 cn.wjybxx.btree.LeafTask
 
listenerCount() - 类中的方法 cn.wjybxx.btree.CancelToken
监听器数量
loadManyFromFile(String, Predicate<? super TreeLoader.IEntry>) - 接口中的方法 cn.wjybxx.btree.TreeLoader
批量加载指定文件中的对象
loadManyFromFile(String, Predicate<? super TreeLoader.IEntry>, boolean) - 接口中的方法 cn.wjybxx.btree.TreeLoader
批量加载指定文件中的对象
loadManyFromFile(String, Predicate<? super TreeLoader.IEntry>, boolean) - 类中的方法 cn.wjybxx.btree.TreeLoader.NullLoader
 
loadObject(String) - 接口中的方法 cn.wjybxx.btree.TreeLoader
 
loadRootTask(String) - 接口中的方法 cn.wjybxx.btree.TreeLoader
 
loadTree(String) - 接口中的方法 cn.wjybxx.btree.TreeLoader
 
logger - 类中的静态变量 cn.wjybxx.btree.Task
 
LoopDecorator<T> - cn.wjybxx.btree.decorator中的类
循环节点抽象
LoopDecorator() - 类的构造器 cn.wjybxx.btree.decorator.LoopDecorator
 
LoopDecorator(Task<T>) - 类的构造器 cn.wjybxx.btree.decorator.LoopDecorator
 

M

MASK_AUTO_LISTEN_CANCEL - 类中的静态变量 cn.wjybxx.btree.Task
 
MASK_AUTO_RESET_CHILDREN - 类中的静态变量 cn.wjybxx.btree.Task
 
MASK_BREAK_INLINE - 类中的静态变量 cn.wjybxx.btree.Task
 
MASK_CONTROL_FLOW_OPTIONS - 类中的静态变量 cn.wjybxx.btree.Task
高8位为流程控制特征值(对外开放)
MASK_INVERTED_GUARD - 类中的静态变量 cn.wjybxx.btree.Task
 
MASK_MANUAL_CHECK_CANCEL - 类中的静态变量 cn.wjybxx.btree.Task
 
MASK_SLOW_START - 类中的静态变量 cn.wjybxx.btree.Task
 
MAX_LOOP_LIMIT - 类中的静态变量 cn.wjybxx.btree.TaskStatus
循环次数限制
MAX_PREV_STATUS - 类中的静态变量 cn.wjybxx.btree.TaskStatus
这是Task类能捕获的最大前一个状态的值,超过该值时将被修正该值
maxLoop - 类中的变量 cn.wjybxx.btree.decorator.LoopDecorator
最大循环次数,超过次数直接失败;大于0有效
MODE_ALWAYS - 类中的静态变量 cn.wjybxx.btree.decorator.Repeat
 
MODE_NEVER - 类中的静态变量 cn.wjybxx.btree.decorator.Repeat
 
MODE_ONLY_FAILED - 类中的静态变量 cn.wjybxx.btree.decorator.Repeat
 
MODE_ONLY_SUCCESS - 类中的静态变量 cn.wjybxx.btree.decorator.Repeat
 

N

NEW - 类中的静态变量 cn.wjybxx.btree.TaskStatus
初始状态
newInstance() - 类中的方法 cn.wjybxx.btree.CancelToken
创建一个同类型实例(默认只拷贝环境数据)
newInstance(boolean) - 类中的方法 cn.wjybxx.btree.CancelToken
创建一个同类型实例(默认只拷贝环境数据)
nextChild() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
normalize(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
将给定状态码归一化,所有的失败码将被转为TaskStatus.ERROR
nullLoader() - 接口中的静态方法 cn.wjybxx.btree.TreeLoader
 
NullLoader() - 类的构造器 cn.wjybxx.btree.TreeLoader.NullLoader
 

O

onActiveChanged(TaskEntry<T>) - 接口中的方法 cn.wjybxx.btree.TaskEntryHandler
任务的激活状态发生改变
onActiveInHierarchyChanged() - 类中的方法 cn.wjybxx.btree.Task
当节点在层次结构中的Active状态发生变化时调用 1.该方法只在Task处于运行状态下调用。
onActiveInHierarchyChanged() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
onCancelRequested(CancelToken) - 类中的方法 cn.wjybxx.btree.CancelToken
收到其它地方的取消信号
onCancelRequested(CancelToken) - 接口中的方法 cn.wjybxx.btree.ICancelTokenListener
该方法在取消令牌收到取消信号时执行 注意:由于取消令牌支持复用,如果监听器不能立即响应取消请求,则应当将取消码保存为局部变量。
onCancelRequested(CancelToken) - 类中的方法 cn.wjybxx.btree.Task
取消令牌的回调方法 注意:如果未启动自动监听,手动监听时也建议绑定到该方法
onChildCompleted(Join<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinAnyOf
 
onChildCompleted(Join<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinMain
 
onChildCompleted(Join<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelector
 
onChildCompleted(Join<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
onChildCompleted(Join<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSequence
 
onChildCompleted(Join<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.branch.join.JoinWaitAll
 
onChildCompleted(Join<T>, Task<T>) - 接口中的方法 cn.wjybxx.btree.branch.JoinPolicy
Join在调用该方法前更新了完成计数和成功计数
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.ActiveSelector
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.Foreach
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.Join
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.Selector
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.Sequence
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.ServiceParallel
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.SimpleParallel
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
子类的实现模板:
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.Switch
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysCheckGuard
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysFail
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysRunning
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysSuccess
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.Inverter
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.OnlyOnce
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.SubtreeRef
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.UntilCond
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.UntilFail
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.UntilSuccess
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.LeafTask
 
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.Task
子节点进入完成状态 1.避免方法数太多,实现类测试task的status即可 2.Task.getNormalizedStatus()有助于switch测试 3.task可能是取消状态,甚至可能没运行过直接失败(前置条件失败) 4.钩子任务和guard不会调用该方法 5.同一子节点连续通知的情况下,completed的逻辑应当覆盖Task.onChildRunning(Task, boolean)的影响。
onChildCompleted(Task<T>) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.ActiveSelector
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.Foreach
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.Join
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.ParallelBranch
1.并发节点通常不需要在该事件中将自己更新为运行状态,而是应该在Task.execute()方法的末尾更新 2.实现类可以在该方法中内联子节点
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.Selector
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.Sequence
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.ServiceParallel
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.SimpleParallel
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
子类如果支持内联,则重写该方法
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.branch.Switch
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysCheckGuard
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysFail
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysRunning
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysSuccess
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.Inverter
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.Decorator
子类如果支持内联,则重写该方法(超类不能安全内联)
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.OnlyOnce
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.SubtreeRef
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.UntilCond
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.UntilFail
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.decorator.UntilSuccess
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.LeafTask
 
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.Task
子节点还需要继续运行 1.该方法在运行期间可能被多次调用(非启动时调用表示修复内联) 2.该方法不应该触发状态迁移,即不应该使自己进入完成状态
onChildRunning(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
onCompleted(TaskEntry<T>) - 接口中的方法 cn.wjybxx.btree.TaskEntryHandler
任务进入完成状态
onEnter(TaskEntry<T>) - 接口中的方法 cn.wjybxx.btree.TaskEntryHandler
任务启动时调用 -- 同于将任务发布到其它地方,不可执行其它逻辑
onEvent(Join<T>, Object) - 类中的方法 cn.wjybxx.btree.branch.join.JoinAnyOf
 
onEvent(Join<T>, Object) - 类中的方法 cn.wjybxx.btree.branch.join.JoinMain
 
onEvent(Join<T>, Object) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelector
 
onEvent(Join<T>, Object) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
onEvent(Join<T>, Object) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSequence
 
onEvent(Join<T>, Object) - 类中的方法 cn.wjybxx.btree.branch.join.JoinWaitAll
 
onEvent(Join<T>, Object) - 接口中的方法 cn.wjybxx.btree.branch.JoinPolicy
join节点收到外部事件
onEvent(Object) - 类中的方法 cn.wjybxx.btree.Task
Task收到外部事件
onEvent(Object, Task<T>) - 类中的方法 cn.wjybxx.btree.TaskInlineHelper
转发事件的工具方法 -- 编写代码时使用该方法,编写完毕后点重构内联(保留该方法)
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.branch.Join
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.branch.ServiceParallel
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.branch.SimpleParallel
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.Decorator
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.leaf.ConditionTask
条件节点正常情况下不会触发事件
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.leaf.Failure
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.leaf.Running
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.leaf.SimpleRandom
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.leaf.Success
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.leaf.WaitFrame
 
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.Task
对于控制节点,通常将事件派发给约定的子节点或钩子节点。
onEventImpl(Object) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
onExit(TaskEntry<T>) - 接口中的方法 cn.wjybxx.btree.TaskEntryHandler
任务退出时调用 -- 用于删除发布的数据,不可执行其它逻辑
OnlyOnce<T> - cn.wjybxx.btree.decorator中的类
只执行一次。
OnlyOnce() - 类的构造器 cn.wjybxx.btree.decorator.OnlyOnce
 
OnlyOnce(Task<T>) - 类的构造器 cn.wjybxx.btree.decorator.OnlyOnce
 
onNextStateAbsent(StateMachineTask<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.RedoStateMachineHandler
 
onNextStateAbsent(StateMachineTask<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.UndoStateMachineHandler
 
onNextStateAbsent(StateMachineTask<T>, Task<T>) - 接口中的方法 cn.wjybxx.btree.fsm.StateMachineHandler
当状态机没有下一个状态时调用该方法,以避免无可用状态 注意: 1.状态机启动时不会调用该方法 2.如果该方法返回后仍无可用状态,将触发无状态逻辑

P

ParallelBranch<T> - cn.wjybxx.btree.branch中的类
并行节点基类 定义该类主要说明一些注意事项,包括: 1.不建议在子节点完成事件中再次驱动子节点,避免运行Task.execute()方法,否则可能导致其它task单帧内运行多次。
ParallelBranch() - 类的构造器 cn.wjybxx.btree.branch.ParallelBranch
 
ParallelBranch(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.ParallelBranch
 
ParallelChildHelper<T> - cn.wjybxx.btree.branch中的类
Q:为什么不直接叫ChildHelper
ParallelChildHelper() - 类的构造器 cn.wjybxx.btree.branch.ParallelChildHelper
 
peekRedoState() - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
查看redo对应的state
peekUndoState() - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
查看undo对应的state
PLAIN - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
PLAIN_CANCELLED - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
PLAIN_ERROR - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
PLAIN_SUCCESS - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
PLAIN_WHEN_COMPLETED - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
plainWithArg(int) - 类中的静态方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 
policy - 类中的变量 cn.wjybxx.btree.branch.Join
子节点的管理策略

R

random - 类中的静态变量 cn.wjybxx.btree.leaf.SimpleRandom
允许指定自己的random
reason() - 类中的方法 cn.wjybxx.btree.CancelToken
取消的原因 (1~10为底层使用,10以上为用户自定义)
REDO - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
REDO_WHEN_COMPLETED - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
redoChangeState() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
重新进入到下一个状态
redoChangeState(ChangeStateArgs) - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
重新进入到下一个状态
redoChangeState(ChangeStateArgs) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
重新进入到下一个状态
RedoStateMachineHandler<T> - cn.wjybxx.btree.fsm.handler中的类
 
RedoStateMachineHandler() - 类的构造器 cn.wjybxx.btree.fsm.handler.RedoStateMachineHandler
 
reentryId - 类中的变量 cn.wjybxx.btree.branch.ParallelChildHelper
子节点的重入id
refreshActive() - 类中的静态方法 cn.wjybxx.btree.TaskVisitors
 
refreshActiveInHierarchy() - 类中的方法 cn.wjybxx.btree.Task
刷新Task在层次结构中的active状态
registerCancelListener() - 类中的方法 cn.wjybxx.btree.Task
注册取消信号监听器,任务在退出时将自动触发删除
remListener(ICancelTokenListener) - 类中的方法 cn.wjybxx.btree.CancelToken
删除指定监听器
remListener(ICancelTokenListener, boolean) - 类中的方法 cn.wjybxx.btree.CancelToken
删除监听器 注意:Task在处理取消信号时不需要调用该方法来删除自己,令牌会先删除Listener再通知。
removeAllChild() - 类中的方法 cn.wjybxx.btree.Task
删除所有的child -- 不是个常用方法
removeChild(int) - 类中的方法 cn.wjybxx.btree.Task
删除指定索引的child
removeChild(Task<?>) - 类中的方法 cn.wjybxx.btree.Task
删除指定child
removeChildImpl(int) - 类中的方法 cn.wjybxx.btree.BranchTask
 
removeChildImpl(int) - 类中的方法 cn.wjybxx.btree.Decorator
 
removeChildImpl(int) - 类中的方法 cn.wjybxx.btree.LeafTask
 
removeChildImpl(int) - 类中的方法 cn.wjybxx.btree.Task
 
removeChildImpl(int) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
Repeat<T> - cn.wjybxx.btree.decorator中的类
重复N次
Repeat() - 类的构造器 cn.wjybxx.btree.decorator.Repeat
 
Repeat(int) - 类的构造器 cn.wjybxx.btree.decorator.Repeat
 
reset() - 类中的方法 cn.wjybxx.btree.branch.ParallelChildHelper
 
reset() - 类中的方法 cn.wjybxx.btree.CancelToken
重置状态(行为树模块取消令牌需要复用)
resetChildrenForRestart() - 类中的方法 cn.wjybxx.btree.Task
重置所有的子节点
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.join.JoinAnyOf
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.join.JoinMain
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelector
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.join.JoinSequence
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.join.JoinWaitAll
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.Join
 
resetForRestart() - 接口中的方法 cn.wjybxx.btree.branch.JoinPolicy
重置自身数据
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.ParallelBranch
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.Decorator
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.decorator.UntilCond
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
resetForRestart() - 类中的方法 cn.wjybxx.btree.Task
重置任务以便重新启动(清理运行产生的所有临时数据)
resetForRestart() - 类中的方法 cn.wjybxx.btree.TaskEntry
 
resetForRestart() - 类中的静态方法 cn.wjybxx.btree.TaskVisitors
 
resetForRestart(StateMachineTask<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.DefaultStateMachineHandler
 
resetForRestart(StateMachineTask<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.RedoStateMachineHandler
 
resetForRestart(StateMachineTask<T>) - 类中的方法 cn.wjybxx.btree.fsm.handler.UndoStateMachineHandler
 
resetForRestart(StateMachineTask<T>) - 接口中的方法 cn.wjybxx.btree.fsm.StateMachineHandler
handler可能也有需要重置的数据。
resetForRestart(Task<?>) - 类中的静态方法 cn.wjybxx.btree.Task
重置目标任务
resetHelpers() - 类中的方法 cn.wjybxx.btree.branch.ParallelBranch
 
Running<T> - cn.wjybxx.btree.leaf中的类
 
Running() - 类的构造器 cn.wjybxx.btree.leaf.Running
 
RUNNING - 类中的静态变量 cn.wjybxx.btree.TaskStatus
执行中
runningChild - 类中的变量 cn.wjybxx.btree.branch.SingleRunningChildBranch
运行中的子节点
runningIndex - 类中的变量 cn.wjybxx.btree.branch.SingleRunningChildBranch
运行中的子节点索引 -- index信息总是准确的

S

select(BranchTask<? extends T>) - 接口中的方法 cn.wjybxx.btree.branch.SwitchHandler
选择要执行的子节点
Selector<T> - cn.wjybxx.btree.branch中的类
 
Selector() - 类的构造器 cn.wjybxx.btree.branch.Selector
 
Selector(Task<T>, Task<T>) - 类的构造器 cn.wjybxx.btree.branch.Selector
 
Selector(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.Selector
 
SelectorN<T> - cn.wjybxx.btree.branch中的类
多选Selector。
SelectorN() - 类的构造器 cn.wjybxx.btree.branch.SelectorN
 
SelectorN(Task<T>, Task<T>) - 类的构造器 cn.wjybxx.btree.branch.SelectorN
 
SelectorN(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.SelectorN
 
Sequence<T> - cn.wjybxx.btree.branch中的类
 
Sequence() - 类的构造器 cn.wjybxx.btree.branch.Sequence
 
Sequence(Task<T>, Task<T>) - 类的构造器 cn.wjybxx.btree.branch.Sequence
 
Sequence(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.Sequence
 
ServiceParallel<T> - cn.wjybxx.btree.branch中的类
服务并发节点 1.其中第一个任务为主要任务,其余任务为后台服务。
ServiceParallel() - 类的构造器 cn.wjybxx.btree.branch.ServiceParallel
 
ServiceParallel(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.ServiceParallel
 
setActive(boolean) - 类中的方法 cn.wjybxx.btree.Task
修改节点的active状态 注意: 1.active为false表示可以不执行心跳逻辑Task.execute() 2.只有停止Execute而不影响逻辑的场景,才可能需要该特性。
setAutoListenCancel(boolean) - 类中的方法 cn.wjybxx.btree.Task
告知模板方法是否自动监听取消事件 1.默认值由Task.flags中的信息指定,默认不自动监听!
setAutoResetChildren(boolean) - 类中的方法 cn.wjybxx.btree.Task
告知模板方法是否在Task.enter(int)前自动调用Task.resetChildrenForRestart() 1.默认值由Task.flags中的信息指定,默认false 2.要覆盖默认值应当在Task.beforeEnter()方法中调用 3.部分任务可能在调用Task.resetForRestart()之前不会再次运行,因此需要该特性
setBlackboard(T) - 类中的方法 cn.wjybxx.btree.Task
 
setBranch1(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
setBranch2(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
setBranch3(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
setBranch4(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
setBranch5(Task<T>) - 类中的方法 cn.wjybxx.btree.branch.FixedSwitch
 
setBreakInline(boolean) - 类中的方法 cn.wjybxx.btree.Task
当Task可以被内联时是否打破内联(允许运行时调整) 1.默认值由Task.flags中的信息指定,默认false 2.要覆盖默认值应当在Task.beforeEnter()方法中调用 3.它的作用是避免被内联子节点进入完成状态时产生【过长的恢复路径】
setCancelled() - 类中的方法 cn.wjybxx.btree.Task
设置为取消
setCancelToken(CancelToken) - 类中的方法 cn.wjybxx.btree.Task
 
setChild(int, Task<T>) - 类中的方法 cn.wjybxx.btree.Task
替换指定索引位置的child (该方法可避免Task的结构发生变化,也可以减少事件数)
setChild(Task<T>) - 类中的方法 cn.wjybxx.btree.Decorator
 
setChildCancelToken(Task<T>, CancelToken) - 类中的方法 cn.wjybxx.btree.Task
设置子节点的取消令牌 -- 会自动传播取消信号
setChildImpl(int, Task<T>) - 类中的方法 cn.wjybxx.btree.BranchTask
 
setChildImpl(int, Task<T>) - 类中的方法 cn.wjybxx.btree.Decorator
 
setChildImpl(int, Task<T>) - 类中的方法 cn.wjybxx.btree.LeafTask
 
setChildImpl(int, Task<T>) - 类中的方法 cn.wjybxx.btree.Task
 
setChildImpl(int, Task<T>) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
setChildren(List<Task<T>>) - 类中的方法 cn.wjybxx.btree.BranchTask
 
setCompleted(int, boolean) - 类中的方法 cn.wjybxx.btree.Task
设置为完成 -- 通常用于通过子节点的结果设置自己
setCond(Task<T>) - 类中的方法 cn.wjybxx.btree.decorator.UntilCond
 
setControl(Task<T>) - 类中的方法 cn.wjybxx.btree.Task
设置任务的控制节点
setControlData(Object) - 类中的方法 cn.wjybxx.btree.Task
 
setCountMode(int) - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
setDelayArg(int) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
setDelayMode(byte) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
setEnterFrame(int) - 类中的方法 cn.wjybxx.btree.Task
慎重调用
setEntity(Object) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
setExitFrame(int) - 类中的方法 cn.wjybxx.btree.Task
慎重调用
setFailed(int) - 类中的方法 cn.wjybxx.btree.Task
设置为执行失败
setFailFast(boolean) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
setFailFast(boolean) - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
setFailureStatus(int) - 类中的方法 cn.wjybxx.btree.decorator.AlwaysFail
 
setFailureStatus(int) - 类中的方法 cn.wjybxx.btree.leaf.Failure
 
setFlags(int) - 类中的方法 cn.wjybxx.btree.Task
 
setGuard(Task<T>) - 类中的方法 cn.wjybxx.btree.Task
 
setGuardFailed(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.Task
设置为前置条件测试失败 1.该方法仅适用于control测试child的guard失败,令child在未运行的情况下直接失败的情况。
setGuid(String) - 类中的方法 cn.wjybxx.btree.fsm.FsmStateCfg
 
setHandler(SwitchHandler<? super T>) - 类中的方法 cn.wjybxx.btree.branch.Switch
 
setHandler(StateMachineHandler<T>) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
setHandler(TaskEntryHandler<T>) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
setInitStateName(String) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
setInvertedGuard(boolean) - 类中的方法 cn.wjybxx.btree.Task
当task作为guard节点时,是否取反 1.该属性用于避免条件节点套用Inverter装饰节点 -- 性能优化。
setMachineName(String) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
setManualCheckCancel(boolean) - 类中的方法 cn.wjybxx.btree.Task
告知模板方法是否手动检测取消 1.默认值由Task.flags中的信息指定,默认false 2.是否检测取消信号是一个动态的属性,可随时更改 -- 因此不要轻易缓存。
setMaxLoop(int) - 类中的方法 cn.wjybxx.btree.decorator.LoopDecorator
 
setName(String) - 类中的方法 cn.wjybxx.btree.fsm.FsmStateCfg
 
setName(String) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
setName(String) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
setNextState(Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
setNextStateGuid(String) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
setP(float) - 类中的方法 cn.wjybxx.btree.leaf.SimpleRandom
 
setPolicy(JoinPolicy<T>) - 类中的方法 cn.wjybxx.btree.branch.Join
 
setPrevStatus(int) - 类中的方法 cn.wjybxx.btree.Task
 
setProps(Object) - 类中的方法 cn.wjybxx.btree.fsm.FsmStateCfg
 
setRedoQueueCapacity(int) - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
设置redo队列大小
setRequired(int) - 类中的方法 cn.wjybxx.btree.branch.join.JoinSelectorN
 
setRequired(int) - 类中的方法 cn.wjybxx.btree.branch.SelectorN
 
setRequired(int) - 类中的方法 cn.wjybxx.btree.decorator.Repeat
 
setRequired(int) - 类中的方法 cn.wjybxx.btree.leaf.WaitFrame
 
setRootTask(Task<T>) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
setSharedProps(Object) - 类中的方法 cn.wjybxx.btree.Task
 
setSlowStart(boolean) - 类中的方法 cn.wjybxx.btree.Task
告知模板方法否将Task.enter(int)Task.execute()方法分开执行。
setStateCfgs(List<FsmStateCfg<T>>) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
 
setStateProps(Object) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateTask
 
setSubtreeName(String) - 类中的方法 cn.wjybxx.btree.decorator.SubtreeRef
 
setSuccess() - 类中的方法 cn.wjybxx.btree.Task
设置为运行成功
setTask(Task<T>) - 类中的方法 cn.wjybxx.btree.fsm.FsmStateCfg
 
setTreeLoader(TreeLoader) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
setType(byte) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
setUndoQueueCapacity(int) - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
设置undo队列大小
sharedProps - 类中的变量 cn.wjybxx.btree.Task
共享属性(配置上下文) 1.用于解决【数据和行为分离】架构下的配置需求,主要解决策划的配置问题,减少维护工作量。
shuffleChild() - 类中的方法 cn.wjybxx.btree.BranchTask
用于避免测试的子节点过于规律
SimpleParallel<T> - cn.wjybxx.btree.branch中的类
简单并发节点。
SimpleParallel() - 类的构造器 cn.wjybxx.btree.branch.SimpleParallel
 
SimpleParallel(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.SimpleParallel
 
SimpleRandom<T> - cn.wjybxx.btree.leaf中的类
简单随机任务 在正式的项目中,Random应当从实体上获取。
SimpleRandom() - 类的构造器 cn.wjybxx.btree.leaf.SimpleRandom
 
SimpleRandom(float) - 类的构造器 cn.wjybxx.btree.leaf.SimpleRandom
 
SingleRunningChildBranch<T> - cn.wjybxx.btree.branch中的类
非并行分支节点抽象(最多只有一个运行中的子节点)
SingleRunningChildBranch() - 类的构造器 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
SingleRunningChildBranch(Task<T>, Task<T>) - 类的构造器 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
SingleRunningChildBranch(List<Task<T>>) - 类的构造器 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
StackStateMachineTask<T> - cn.wjybxx.btree.fsm中的类
栈式状态机,在普通状态机的基础上支持了redo和undo
StackStateMachineTask() - 类的构造器 cn.wjybxx.btree.fsm.StackStateMachineTask
 
stateCfgs - 类中的变量 cn.wjybxx.btree.fsm.StateMachineTask
该FSM关联的状态
StateMachineHandler<T> - cn.wjybxx.btree.fsm中的接口
状态机扩展处理器
StateMachineTask<T> - cn.wjybxx.btree.fsm中的类
状态机节点 ps:以我的经验来看,状态机是最重要的节点,Join则是仅次于状态机的节点 -- 不能以使用数量而定。
StateMachineTask() - 类的构造器 cn.wjybxx.btree.fsm.StateMachineTask
 
stop() - 类中的方法 cn.wjybxx.btree.Task
强制停止任务
stop(int) - 类中的方法 cn.wjybxx.btree.Task
强制停止任务 1.只应该由Control调用,因此不会通知Control 2.未完成的任务默认会进入Cancelled状态 3.不命名为cancel,否则容易误用;我们设计的cancel是协作式的,可通过Task.cancelToken发出请求请求。
stop(Task<?>) - 类中的静态方法 cn.wjybxx.btree.Task
停止目标任务
stopInline() - 类中的方法 cn.wjybxx.btree.TaskInlineHelper
取消内联
stopRunningChildren() - 类中的方法 cn.wjybxx.btree.branch.SingleRunningChildBranch
 
stopRunningChildren() - 类中的方法 cn.wjybxx.btree.Decorator
 
stopRunningChildren() - 类中的方法 cn.wjybxx.btree.Task
停止所有运行中的子节点 1.该方法在自身的exit之前调用 2.如果有特殊的子节点(钩子任务),也需要在这里停止 3.该方法不采用visitor实现,是因为停止任务可能有特殊的时序。
SubtreeRef<T> - cn.wjybxx.btree.decorator中的类
子树引用
SubtreeRef() - 类的构造器 cn.wjybxx.btree.decorator.SubtreeRef
 
SubtreeRef(String) - 类的构造器 cn.wjybxx.btree.decorator.SubtreeRef
 
succeededCount - 类中的变量 cn.wjybxx.btree.branch.Join
成功完成的子节点
Success<T> - cn.wjybxx.btree.leaf中的类
 
Success() - 类的构造器 cn.wjybxx.btree.leaf.Success
 
SUCCESS - 类中的静态变量 cn.wjybxx.btree.TaskStatus
执行成功 -- 最小的完成状态
Switch<T> - cn.wjybxx.btree.branch中的类
Switch-选择一个分支运行,直到其结束
Switch() - 类的构造器 cn.wjybxx.btree.branch.Switch
 
SwitchHandler<T> - cn.wjybxx.btree.branch中的接口
 

T

Task<T> - cn.wjybxx.btree中的类
取消
Task() - 类的构造器 cn.wjybxx.btree.Task
 
TaskEntry<T> - cn.wjybxx.btree中的类
任务入口(可联想程序的Main)
TaskEntry() - 类的构造器 cn.wjybxx.btree.TaskEntry
 
TaskEntry(String, Task<T>, T, Object, TreeLoader) - 类的构造器 cn.wjybxx.btree.TaskEntry
 
TaskEntryHandler<T> - cn.wjybxx.btree中的接口
用于处理Entry的完成事件
TaskInlinable - cn.wjybxx.btree中的批注接口
该注解用于表示一个task是可以被内联的, 1.适用于SingleRunningChildBranchDecorator 2.该注解不继承,必须在类上显式定义才可以生效。
TaskInlineHelper<T> - cn.wjybxx.btree中的类
内联工具类。
TaskInlineHelper() - 类的构造器 cn.wjybxx.btree.TaskInlineHelper
 
TaskStatus - cn.wjybxx.btree中的类
行为树的Task的状态 1.
TaskStatus() - 类的构造器 cn.wjybxx.btree.TaskStatus
 
TaskVisitor<T> - cn.wjybxx.btree中的接口
Task访问器,用于访问Task的内部结构。
TaskVisitors - cn.wjybxx.btree中的类
常用的访问者
TaskVisitors() - 类的构造器 cn.wjybxx.btree.TaskVisitors
 
template_checkGuard(Task<T>) - 类中的方法 cn.wjybxx.btree.Task
检查前置条件 1.如果未显式设置guard的上下文,会默认捕获当前Task的上下文 2.guard的上下文在运行结束后会被清理 3.guard只应该依赖共享上下文(黑板和props),不应当对父节点做任何的假设。
template_execute(boolean) - 类中的方法 cn.wjybxx.btree.Task
execute模板方法 (通过参数的方式,有助于我们统一代码,也简化子类实现;同时避免遗漏)
template_executeInlined(TaskInlineHelper<T>, Task<T>) - 类中的方法 cn.wjybxx.btree.Task
被内联子节点的execute模板方法
template_startChild(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.Task
启动子节点
template_startHook(Task<T>, boolean) - 类中的方法 cn.wjybxx.btree.Task
启动钩子节点 1.钩子任务不会触发Task.onChildRunning(Task, boolean)Task.onChildCompleted(Task) 2.前置条件其实是特殊的钩子任务 3.条件分支通常不应该有钩子任务
tempNextState - 类中的变量 cn.wjybxx.btree.fsm.StateMachineTask
待切换的状态,主要用于支持当前状态退出后再切换
test() - 类中的方法 cn.wjybxx.btree.leaf.ConditionTask
检查条件 -- 同步返回
test() - 类中的方法 cn.wjybxx.btree.TaskEntry
如果行为树代表的是一个条件树,则可以调用该方法;失败的情况下可以通过Status获取错误码
TIMEOUT - 类中的静态变量 cn.wjybxx.btree.TaskStatus
执行超时
toFailure(int) - 类中的静态方法 cn.wjybxx.btree.TaskStatus
如果给定状态是失败码,则返回参数,否则返回默认失败码
treeLoader - 类中的变量 cn.wjybxx.btree.TaskEntry
行为树加载器 -- 用于加载Task或配置
TreeLoader - cn.wjybxx.btree中的接口
行为树加载器 1.虽命名为TreeLoader,但可加载任意导出对象,只因该Loader最初是为行为树设计的。
TreeLoader.IEntry - cn.wjybxx.btree中的接口
编辑器中的Entry节点抽象。
TreeLoader.NullLoader - cn.wjybxx.btree中的类
 
tryLoadObject(String) - 类中的方法 cn.wjybxx.btree.TreeLoader.NullLoader
 
tryLoadObject(String) - 接口中的方法 cn.wjybxx.btree.TreeLoader
1.加载时,通常应按照名字加载,再尝试按照guid加载。
tryLoadRootTask(String) - 接口中的方法 cn.wjybxx.btree.TreeLoader
尝试加载行为树的根节点

U

UNDO - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
UNDO_WHEN_COMPLETED - 类中的静态变量 cn.wjybxx.btree.fsm.ChangeStateArgs
 
undoChangeState() - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
撤销到前一个状态
undoChangeState(ChangeStateArgs) - 类中的方法 cn.wjybxx.btree.fsm.StackStateMachineTask
撤销到前一个状态
undoChangeState(ChangeStateArgs) - 类中的方法 cn.wjybxx.btree.fsm.StateMachineTask
撤销到前一个状态
UndoStateMachineHandler<T> - cn.wjybxx.btree.fsm.handler中的类
 
UndoStateMachineHandler() - 类的构造器 cn.wjybxx.btree.fsm.handler.UndoStateMachineHandler
 
unsetChildCancelToken(Task<T>) - 类中的方法 cn.wjybxx.btree.Task
删除子节点的取消令牌
unsetControl() - 类中的方法 cn.wjybxx.btree.Task
删除任务的控制节点(用于清理) 该方法在任务结束时并不会自动调用,因为Task上的数据可能是有用的,不能立即删除,只有用户知道是否可以清理。
UntilCond<T> - cn.wjybxx.btree.decorator中的类
循环子节点直到给定的条件达成
UntilCond() - 类的构造器 cn.wjybxx.btree.decorator.UntilCond
 
UntilFail<T> - cn.wjybxx.btree.decorator中的类
重复运行子节点,直到该任务失败
UntilFail() - 类的构造器 cn.wjybxx.btree.decorator.UntilFail
 
UntilFail(Task<T>) - 类的构造器 cn.wjybxx.btree.decorator.UntilFail
 
UntilSuccess<T> - cn.wjybxx.btree.decorator中的类
重复运行子节点,直到该任务成功
UntilSuccess() - 类的构造器 cn.wjybxx.btree.decorator.UntilSuccess
 
UntilSuccess(Task<T>) - 类的构造器 cn.wjybxx.btree.decorator.UntilSuccess
 
update(int) - 类中的方法 cn.wjybxx.btree.TaskEntry
普通update。
updateInlined(int) - 类中的方法 cn.wjybxx.btree.TaskEntry
以内联的方式update。
userData - 类中的变量 cn.wjybxx.btree.branch.ParallelChildHelper
用户自定义数据

V

visitChild(Task<? extends T>, int, Object) - 接口中的方法 cn.wjybxx.btree.TaskVisitor
访问普通子节点
visitChildren(TaskVisitor<? super T>, Object) - 类中的方法 cn.wjybxx.btree.BranchTask
 
visitChildren(TaskVisitor<? super T>, Object) - 类中的方法 cn.wjybxx.btree.Decorator
 
visitChildren(TaskVisitor<? super T>, Object) - 类中的方法 cn.wjybxx.btree.LeafTask
 
visitChildren(TaskVisitor<? super T>, Object) - 类中的方法 cn.wjybxx.btree.Task
访问所有的子节点(含hook节点)
visitChildren(TaskVisitor<? super T>, Object) - 类中的方法 cn.wjybxx.btree.TaskEntry
 
visitHook(Task<? extends T>, Object) - 接口中的方法 cn.wjybxx.btree.TaskVisitor
访问钩子节点(无法通过GetChild拿到的子节点,也不在ChildCount计数中) 理论上钩子还可能是List或Map,但我们这个访问者只是为了做一些简单的遍历工作,并不需要如此精细的信息, 因此方法参数可以未声明index/key等信息,以避免额外的开销和复杂度。

W

WaitFrame<T> - cn.wjybxx.btree.leaf中的类
等待N帧
WaitFrame() - 类的构造器 cn.wjybxx.btree.leaf.WaitFrame
 
WaitFrame(int) - 类的构造器 cn.wjybxx.btree.leaf.WaitFrame
 
with(byte) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 
with(byte, int) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 
with(byte, int, Object) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 
withArg(int) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 
withExtraInfo(Object) - 类中的方法 cn.wjybxx.btree.fsm.ChangeStateArgs
 
wjybxx.btree.core - 模块 wjybxx.btree.core
 

内联条件 - 批注接口 cn.wjybxx.btree.TaskInlinable中的搜索标记

取消 - 类 cn.wjybxx.btree.Task中的搜索标记

开销问题 - 类 cn.wjybxx.btree.leaf.ConditionTask中的搜索标记

心跳+事件驱动 - 类 cn.wjybxx.btree.Task中的搜索标记
A B C D E F G H I J L M N O P R S T U V W     
常量字段值|所有程序包|所有类和接口