Skip to content
This repository has been archived by the owner on Dec 13, 2024. It is now read-only.

Update standard tree nodes model for BT v4 #7

Merged
merged 4 commits into from
May 12, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 17 additions & 10 deletions src/picknik_ur_base_config/objectives/standard_tree_nodes_model.xml
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,10 @@
<p>The ParallelNode executes all its children concurrently, but not in separate threads!</p>
<p>Even if this may look similar to ReactiveSequence, this Control Node is the only one that can have multiple children RUNNING at the same time.</p>
<p>The Node is completed either when the THRESHOLD_SUCCESS or THRESHOLD_FAILURE number is reached (both configured using ports).</p>
<p> If any of the threaholds are reached, and other children are still running, they will be halted.</p>
<p> If any of the thresholds are reached, and other children are still running, they will be halted.</p>
</description>
<input_port name="success_threshold" default="">Number of children which need to succeed to trigger a SUCCESS.</input_port>
<input_port name="failure_threshold" default="">Number of children which need to fail to trigger a FAILURE.</input_port>
<input_port name="success_count" default="">Number of children which need to succeed to trigger a SUCCESS.</input_port>
<input_port name="failure_count" default="">Number of children which need to fail to trigger a FAILURE.</input_port>
</Control>
<Control ID="ReactiveSequence">
<description>
Expand Down Expand Up @@ -81,16 +81,15 @@
<p>If the 2nd or 3d child is RUNNING and the statement changes, the RUNNING child will be stopped before starting the sibling.</p>
</description>
</Control>
<Decorator ID="BlackboardCheckString">
<Decorator ID="Precondition">
<description>
<p>Executes its child node only if the string value of a given input port is equal to the expected value.</p>
<p>If this precondition is met, the child node will be run and this node will return the status returned from the child.</p>
<p>Executes its child node only if a condition is met.</p>
<p>If the precondition is met, the child node will be run and this node will return the status returned from the child.</p>
<p>If the precondition is not met, this node will return the BT::NodeStatus value specified in "return_on_mismatch".</p>
</description>
<input_port name="value_A" default="some_value">First string value to compare.</input_port>
<input_port name="value_B" default="some_other_value">Second string value to compare.</input_port>
<input_port name="return_on_mismatch" default="SUCCESS">Status to return if value_A and value_B have different values. Can be RUNNING, SUCCESS, or FAILURE.</input_port>
</Decorator>
<input_port name="if" default="">If condition</input_port>
<input_port name="else" default="SUCCESS">Status to return if condition not met. Can be RUNNING, SUCCESS, or FAILURE.</input_port>
</Decorator>
<Decorator ID="Inverter">
<description>
<p>Tick the child once and return SUCCESS if the child failed or FAILURE if the child succeeded.</p>
Expand Down Expand Up @@ -157,6 +156,14 @@
<input_port name="value" default="">Value represented as a string. convertFromString must be implemented.</input_port>
<inout_port name="output_key" default="">Name of the blackboard entry where the value should be written.</inout_port>
</Action>
<Action ID="Script">
<description>
<p>Introduced in BT.CPP 4 to integrate scripting language within XML</p>
<p>Allows users to read from and write to variables in the blackboard</p>
<p>Can perform operation like assignment, comparison, etc.</p>
</description>
<input_port name="code" default="">Code that can be parsed.</input_port>
</Action>
<SubTree />
</TreeNodesModel>
</root>
Loading