doc: clarify scoping for BTState (#271)

This commit is contained in:
Laurent Senta 2025-01-10 16:42:09 +01:00 committed by GitHub
parent e3be34670e
commit 3dcbee829c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 7 additions and 4 deletions

View File

@ -122,10 +122,13 @@ This creates a "blackboard scope chain," where each :ref:`Blackboard<class_Black
and there is no limit to how many blackboards can be in this chain. and there is no limit to how many blackboards can be in this chain.
It's important to note that the :ref:`Blackboard<class_Blackboard>` doesn't modify values in the parent scopes. It's important to note that the :ref:`Blackboard<class_Blackboard>` doesn't modify values in the parent scopes.
Some scopes are created automatically. For instance, when using the :ref:`BTNewScope<class_BTNewScope>` Scopes are created automatically to prevent naming collisions between contextually separate environments:
and :ref:`BTSubtree<class_BTSubtree>` decorators, or when a :ref:`LimboState<class_LimboState>`
has non-empty blackboard plan defined, or when a root-level :ref:`LimboHSM<class_LimboHSM>` - Within :ref:`BTNewScope<class_BTNewScope>`.
node is used. Such scopes prevent naming collisions between contextually separate environments. - Under :ref:`BTSubtree<class_BTSubtree>` decorators.
- With :ref:`LimboState<class_LimboState>` that have a non-empty blackboard plan defined.
- Under :ref:`LimboHSM<class_LimboHSM>` nodes: A new scope is created at the root level,
and each :ref:`BTState<class_BTState>` child also receives its own separate scope.
Sharing data between several agents Sharing data between several agents
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~