bhive
Version:
Behavior Tree for Javascript
2,976 lines (689 loc) • 51.9 kB
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Blackboard - Documentation</title>
<script src="scripts/prettify/prettify.js"></script>
<script src="scripts/prettify/lang-css.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
<script src="scripts/nav.js" defer></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
<div class="navicon"></div>
</label>
<label for="nav-trigger" class="overlay"></label>
<nav >
<input type="text" id="nav-search" placeholder="Search" />
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AsyncTask.html">AsyncTask</a><ul class='methods'><li data-type='method' style='display: none;'><a href="AsyncTask.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#close">close</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#open">open</a></li><li data-type='method' style='display: none;'><a href="AsyncTask.html#tick">tick</a></li></ul></li><li><a href="BaseComposite.html">BaseComposite</a><ul class='methods'><li data-type='method' style='display: none;'><a href="BaseComposite.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#close">close</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#open">open</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#run">run</a></li><li data-type='method' style='display: none;'><a href="BaseComposite.html#tick">tick</a></li></ul></li><li><a href="BaseDecorator.html">BaseDecorator</a><ul class='methods'><li data-type='method' style='display: none;'><a href="BaseDecorator.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#close">close</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#open">open</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#run">run</a></li><li data-type='method' style='display: none;'><a href="BaseDecorator.html#tick">tick</a></li></ul></li><li><a href="BaseNode.html">BaseNode</a><ul class='methods'><li data-type='method' style='display: none;'><a href="BaseNode.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#close">close</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#open">open</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#run">run</a></li><li data-type='method' style='display: none;'><a href="BaseNode.html#tick">tick</a></li></ul></li><li><a href="BehaviorTree.html">BehaviorTree</a><ul class='methods'><li data-type='method' style='display: none;'><a href="BehaviorTree.html#tick">tick</a></li></ul></li><li><a href="Board.html">Board</a><ul class='methods'><li data-type='method' style='display: none;'><a href="Board.html#clear">clear</a></li><li data-type='method' style='display: none;'><a href="Board.html#get">get</a></li><li data-type='method' style='display: none;'><a href="Board.html#isEmpty">isEmpty</a></li><li data-type='method' style='display: none;'><a href="Board.html#set">set</a></li><li data-type='method' style='display: none;'><a href="Board.html#toJSON">toJSON</a></li><li data-type='method' style='display: none;'><a href="Board.html#unset">unset</a></li></ul></li><li><a href="Inverter.html">Inverter</a><ul class='methods'><li data-type='method' style='display: none;'><a href="Inverter.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#close">close</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#open">open</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#run">run</a></li><li data-type='method' style='display: none;'><a href="Inverter.html#tick">tick</a></li></ul></li><li><a href="Logger.html">Logger</a></li><li></li><li><a href="module-BlackBoard-Blackboard.html">Blackboard</a><ul class='methods'><li data-type='method' style='display: none;'><a href="module-BlackBoard-Blackboard.html#createTree">createTree</a></li><li data-type='method' style='display: none;'><a href="module-BlackBoard-Blackboard.html#get">get</a></li><li data-type='method' style='display: none;'><a href="module-BlackBoard-Blackboard.html#listTree">listTree</a></li><li data-type='method' style='display: none;'><a href="module-BlackBoard-Blackboard.html#removeTree">removeTree</a></li><li data-type='method' style='display: none;'><a href="module-BlackBoard-Blackboard.html#set">set</a></li><li data-type='method' style='display: none;'><a href="module-BlackBoard-Blackboard.html#toJSON">toJSON</a></li><li data-type='method' style='display: none;'><a href="module-BlackBoard-Blackboard.html#tree">tree</a></li></ul></li><li></li><li><a href="module-Context-Context.html">Context</a><ul class='methods'><li data-type='method' style='display: none;'><a href="module-Context-Context.html#closeNode">closeNode</a></li><li data-type='method' style='display: none;'><a href="module-Context-Context.html#enterNode">enterNode</a></li><li data-type='method' style='display: none;'><a href="module-Context-Context.html#exitNode">exitNode</a></li><li data-type='method' style='display: none;'><a href="module-Context-Context.html#openNode">openNode</a></li><li data-type='method' style='display: none;'><a href="module-Context-Context.html#runNode">runNode</a></li></ul></li><li><a href="NodeBoard.html">NodeBoard</a></li><li><a href="Priority.html">Priority</a><ul class='methods'><li data-type='method' style='display: none;'><a href="Priority.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="Priority.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="Priority.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="Priority.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="Priority.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="Priority.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="Priority.html#close">close</a></li><li data-type='method' style='display: none;'><a href="Priority.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="Priority.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="Priority.html#open">open</a></li><li data-type='method' style='display: none;'><a href="Priority.html#run">run</a></li><li data-type='method' style='display: none;'><a href="Priority.html#tick">tick</a></li></ul></li><li></li><li><a href="Registry.html">Registry</a><ul class='methods'><li data-type='method' style='display: none;'><a href="Registry.html#getNode">getNode</a></li><li data-type='method' style='display: none;'><a href="Registry.html#getNodeTypes">getNodeTypes</a></li><li data-type='method' style='display: none;'><a href="Registry.html#merge">merge</a></li><li data-type='method' style='display: none;'><a href="Registry.html#register">register</a></li></ul></li><li></li><li><a href="Repeater.html">Repeater</a><ul class='methods'><li data-type='method' style='display: none;'><a href="Repeater.html#open">open</a></li><li data-type='method' style='display: none;'><a href="Repeater.html#run">run</a></li></ul></li><li><a href="RewindWhenFailure.html">RewindWhenFailure</a><ul class='methods'><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#close">close</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#open">open</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#run">run</a></li><li data-type='method' style='display: none;'><a href="RewindWhenFailure.html#tick">tick</a></li></ul></li><li><a href="RewindWhenRunning.html">RewindWhenRunning</a><ul class='methods'><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#close">close</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#open">open</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#run">run</a></li><li data-type='method' style='display: none;'><a href="RewindWhenRunning.html#tick">tick</a></li></ul></li><li><a href="Sequence.html">Sequence</a><ul class='methods'><li data-type='method' style='display: none;'><a href="Sequence.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#close">close</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#open">open</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#run">run</a></li><li data-type='method' style='display: none;'><a href="Sequence.html#tick">tick</a></li></ul></li><li><a href="Task.html">Task</a><ul class='methods'><li data-type='method' style='display: none;'><a href="Task.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="Task.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="Task.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="Task.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="Task.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="Task.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="Task.html#close">close</a></li><li data-type='method' style='display: none;'><a href="Task.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="Task.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="Task.html#open">open</a></li><li data-type='method' style='display: none;'><a href="Task.html#tick">tick</a></li></ul></li><li></li><li><a href="TreeBoard.html">TreeBoard</a><ul class='methods'><li data-type='method' style='display: none;'><a href="TreeBoard.html#clear">clear</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#createNode">createNode</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#gc">gc</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#get">get</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#isEmpty">isEmpty</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#listNode">listNode</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#node">node</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#removeNode">removeNode</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#set">set</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#toJSON">toJSON</a></li><li data-type='method' style='display: none;'><a href="TreeBoard.html#unset">unset</a></li></ul></li><li><a href="TreeBuilder.html">TreeBuilder</a></li><li></li><li><a href="UntilFailure.html">UntilFailure</a><ul class='methods'><li data-type='method' style='display: none;'><a href="UntilFailure.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#close">close</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#open">open</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#run">run</a></li><li data-type='method' style='display: none;'><a href="UntilFailure.html#tick">tick</a></li></ul></li><li><a href="UntilSuccess.html">UntilSuccess</a><ul class='methods'><li data-type='method' style='display: none;'><a href="UntilSuccess.html#_close">_close</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#_enter">_enter</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#_exit">_exit</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#_open">_open</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#_run">_run</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#_tick">_tick</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#close">close</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#enter">enter</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#exit">exit</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#open">open</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#run">run</a></li><li data-type='method' style='display: none;'><a href="UntilSuccess.html#tick">tick</a></li></ul></li></ul><h3>Modules</h3><ul><li><a href="module-BlackBoard.html">BlackBoard</a></li><li><a href="module-Context.html">Context</a></li></ul><h3>Tutorials</h3><ul><li><a href="tutorial-blackboard.html">Blackboard</a></li></ul><h3>Global</h3><ul><li><a href="global.html#BehaviorTreeOptions">BehaviorTreeOptions</a></li><li><a href="global.html#Constant">Constant</a></li><li><a href="global.html#defaultBehaviorTreeOptions">defaultBehaviorTreeOptions</a></li><li><a href="global.html#LogFunction">LogFunction</a></li><li><a href="global.html#NodeCategory">NodeCategory</a></li><li><a href="global.html#NodeData">NodeData</a></li><li><a href="global.html#NodeDefinition">NodeDefinition</a></li><li><a href="global.html#NodeId">NodeId</a></li><li><a href="global.html#NodeStatus">NodeStatus</a></li><li><a href="global.html#NodeType">NodeType</a></li><li><a href="global.html#Registers">Registers</a></li><li><a href="global.html#severities">severities</a></li><li><a href="global.html#SYSLOG_LEVEL">SYSLOG_LEVEL</a></li><li><a href="global.html#TreeDefinition">TreeDefinition</a></li><li><a href="global.html#workerConfig">workerConfig</a></li></ul>
</nav>
<div id="main">
<h1 class="page-title">Blackboard</h1>
<section>
<header>
<h2>
<span class="ancestors"><a href="module-BlackBoard.html">BlackBoard</a>~</span>
Blackboard
</h2>
</header>
<article>
<div class="container-overview">
<h4 class="name" id="Blackboard"><span class="type-signature"></span>new Blackboard<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line19">line 19</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Initialization method.</p>
</div>
</div>
<h3 class="subsection-title">Members</h3>
<h4 class="name" id="_shared"><span class="type-signature"></span>_shared<span class="type-signature"> :<a href="Board.html">Board</a></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line21">line 21</a>
</li></ul></dd>
</dl>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type"><a href="Board.html">Board</a></span>
</li>
</ul>
<h4 class="name" id="_trees"><span class="type-signature"></span>_trees<span class="type-signature"> :Object.<<a href="global.html#NodeId">NodeId</a>, <a href="TreeBoard.html">TreeBoard</a>></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line23">line 23</a>
</li></ul></dd>
</dl>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Object.<<a href="global.html#NodeId">NodeId</a>, <a href="TreeBoard.html">TreeBoard</a>></span>
</li>
</ul>
<h4 class="name" id="shared"><span class="type-signature"></span>shared<span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line85">line 85</a>
</li></ul></dd>
</dl>
<div class="description">
<p>get shared board</p>
</div>
<h4 class="name" id="trees"><span class="type-signature"></span>trees<span class="type-signature"> :Object.<string, <a href="TreeBoard.html">TreeBoard</a>></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line93">line 93</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Get all TreeBoard</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Object.<string, <a href="TreeBoard.html">TreeBoard</a>></span>
</li>
</ul>
<h3 class="subsection-title">Methods</h3>
<h4 class="name" id="createTree"><span class="type-signature"></span>createTree<span class="signature">(tree)</span><span class="type-signature"> → {undefined|<a href="TreeBoard.html">TreeBoard</a>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line47">line 47</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Create new TreeBoard</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>tree</code></td>
<td class="type">
<span class="param-type"><a href="BehaviorTree.html">BehaviorTree</a></span>
|
<span class="param-type"><a href="global.html#NodeId">NodeId</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">undefined</span>
|
<span class="param-type"><a href="TreeBoard.html">TreeBoard</a></span>
</dd>
</dl>
<h4 class="name" id="get"><span class="type-signature"></span>get<span class="signature">(key)</span><span class="type-signature"> → {*}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line125">line 125</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Get data by using key</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>key</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>key</p></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="listTree"><span class="type-signature"></span>listTree<span class="signature">()</span><span class="type-signature"> → {Array.<<a href="global.html#NodeId">NodeId</a>>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line77">line 77</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Get list of BehaviorTree Id</p>
</div>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<<a href="global.html#NodeId">NodeId</a>></span>
</dd>
</dl>
<h4 class="name" id="removeTree"><span class="type-signature"></span>removeTree<span class="signature">(tree)</span><span class="type-signature"> → {boolean}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line65">line 65</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Remove specific TreeBoard</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>tree</code></td>
<td class="type">
<span class="param-type"><a href="BehaviorTree.html">BehaviorTree</a></span>
|
<span class="param-type"><a href="global.html#NodeId">NodeId</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id="set"><span class="type-signature"></span>set<span class="signature">(key, value)</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line116">line 116</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Set data with key</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>key</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>key where store value</p></td>
</tr>
<tr>
<td class="name"><code>value</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"><p>value to store</p></td>
</tr>
</tbody>
</table>
<h4 class="name" id="toJSON"><span class="type-signature"></span>toJSON<span class="signature">()</span><span class="type-signature"> → {object}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line101">line 101</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Dump data in black in JSON</p>
</div>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">object</span>
</dd>
</dl>
<h4 class="name" id="tree"><span class="type-signature"></span>tree<span class="signature">(tree, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {<a href="TreeBoard.html">TreeBoard</a>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line33">line 33</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Get tree board by treeId</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>tree</code></td>
<td class="type">
<span class="param-type"><a href="BaseNode.html">BaseNode</a></span>
|
<span class="param-type">string</span>
</td>
<td class="attributes">
</td>
<td class="description last"><p>tree id</p></td>
</tr>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last"><p>options</p>
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>safe</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="default">
<code>false</code>
</td>
<td class="description last"><p>if flag enabled, generate empty tree board when cannot find tree board</p></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type"><a href="TreeBoard.html">TreeBoard</a></span>
</dd>
</dl>
</article>
</section>
<section>
<header>
<h2>
<span class="ancestors"><a href="module-BlackBoard.html">BlackBoard</a>~</span>
Blackboard
</h2>
</header>
<article>
<div class="container-overview">
<h4 class="name" id="Blackboard"><span class="type-signature"></span>new Blackboard<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line9">line 9</a>
</li></ul></dd>
</dl>
<div class="description">
<p>The Blackboard is memory</p>
</div>
</div>
<h3 class="subsection-title">Members</h3>
<h4 class="name" id="_shared"><span class="type-signature"></span>_shared<span class="type-signature"> :<a href="Board.html">Board</a></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line21">line 21</a>
</li></ul></dd>
</dl>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type"><a href="Board.html">Board</a></span>
</li>
</ul>
<h4 class="name" id="_trees"><span class="type-signature"></span>_trees<span class="type-signature"> :Object.<<a href="global.html#NodeId">NodeId</a>, <a href="TreeBoard.html">TreeBoard</a>></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line23">line 23</a>
</li></ul></dd>
</dl>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Object.<<a href="global.html#NodeId">NodeId</a>, <a href="TreeBoard.html">TreeBoard</a>></span>
</li>
</ul>
<h4 class="name" id="shared"><span class="type-signature"></span>shared<span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line85">line 85</a>
</li></ul></dd>
</dl>
<div class="description">
<p>get shared board</p>
</div>
<h4 class="name" id="trees"><span class="type-signature"></span>trees<span class="type-signature"> :Object.<string, <a href="TreeBoard.html">TreeBoard</a>></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line93">line 93</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Get all TreeBoard</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Object.<string, <a href="TreeBoard.html">TreeBoard</a>></span>
</li>
</ul>
<h3 class="subsection-title">Methods</h3>
<h4 class="name" id="createTree"><span class="type-signature"></span>createTree<span class="signature">(tree)</span><span class="type-signature"> → {undefined|<a href="TreeBoard.html">TreeBoard</a>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line47">line 47</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Create new TreeBoard</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>tree</code></td>
<td class="type">
<span class="param-type"><a href="BehaviorTree.html">BehaviorTree</a></span>
|
<span class="param-type"><a href="global.html#NodeId">NodeId</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">undefined</span>
|
<span class="param-type"><a href="TreeBoard.html">TreeBoard</a></span>
</dd>
</dl>
<h4 class="name" id="get"><span class="type-signature"></span>get<span class="signature">(key)</span><span class="type-signature"> → {*}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line125">line 125</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Get data by using key</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>key</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>key</p></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="listTree"><span class="type-signature"></span>listTree<span class="signature">()</span><span class="type-signature"> → {Array.<<a href="global.html#NodeId">NodeId</a>>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line77">line 77</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Get list of BehaviorTree Id</p>
</div>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<<a href="global.html#NodeId">NodeId</a>></span>
</dd>
</dl>
<h4 class="name" id="removeTree"><span class="type-signature"></span>removeTree<span class="signature">(tree)</span><span class="type-signature"> → {boolean}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line65">line 65</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Remove specific TreeBoard</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>tree</code></td>
<td class="type">
<span class="param-type"><a href="BehaviorTree.html">BehaviorTree</a></span>
|
<span class="param-type"><a href="global.html#NodeId">NodeId</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id="set"><span class="type-signature"></span>set<span class="signature">(key, value)</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line116">line 116</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Set data with key</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>key</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>key where store value</p></td>
</tr>
<tr>
<td class="name"><code>value</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"><p>value to store</p></td>
</tr>
</tbody>
</table>
<h4 class="name" id="toJSON"><span class="type-signature"></span>toJSON<span class="signature">()</span><span class="type-signature"> → {object}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line101">line 101</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Dump data in black in JSON</p>
</div>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">object</span>
</dd>
</dl>
<h4 class="name" id="tree"><span class="type-signature"></span>tree<span class="signature">(tree, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {<a href="TreeBoard.html">TreeBoard</a>}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="core_Blackboard.js.html">core/Blackboard.js</a>, <a href="core_Blackboard.js.html#line33">line 33</a>
</li></ul></dd>
</dl>
<div class="description">
<p>Get tree board by treeId</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>tree</code></td>
<td class="type">
<span class="param-type"><a href="BaseNode.html">BaseNode</a></span>
|
<span class="param-type">string</span>
</td>
<td class="attributes">
</td>
<td class="description last"><p>tree id</p></td>
</tr>
<tr>
<td class="name"><code>opts</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last"><p>options</p>
<h6>Properties</h6>
<table class="params">