behaviortree.cpp/4.6.0

This C++ library provides a framework to create BehaviorTrees
Recipe info
2024-05-01

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
behaviortree.cpp/4.6.0

Using behaviortree.cpp

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
behaviortree.cpp/4.6.0
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("behaviortree.cpp/4.6.0")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): BehaviorTree
  • CMake target name(s): BT::behaviortree_cpp
  • behaviortree_cpp => BT::behaviortree_cpp
    
  • pkg-config file name(s): behaviortree.cpp.pc
  • behaviortree_cpp => behaviortree.cpp-behaviortree_cpp.pc
    

A simple use case using the CMake file name and the global target:

# ...
find_package(BehaviorTree REQUIRED)
# ...
target_link_libraries(YOUR_TARGET BT::behaviortree_cpp)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the behaviortree.cpp homepage listed above:

#include "behaviortree_cpp/action_node.h"
#include "behaviortree_cpp/actions/always_failure_node.h"
#include "behaviortree_cpp/actions/always_success_node.h"
#include "behaviortree_cpp/actions/pop_from_queue.hpp"
#include "behaviortree_cpp/actions/script_condition.h"
#include "behaviortree_cpp/actions/script_node.h"
#include "behaviortree_cpp/actions/set_blackboard_node.h"
#include "behaviortree_cpp/actions/sleep_node.h"
#include "behaviortree_cpp/actions/test_node.h"
#include "behaviortree_cpp/actions/unset_blackboard_node.h"
#include "behaviortree_cpp/actions/updated_action.h"
#include "behaviortree_cpp/basic_types.h"
#include "behaviortree_cpp/behavior_tree.h"
#include "behaviortree_cpp/blackboard.h"
#include "behaviortree_cpp/bt_factory.h"
#include "behaviortree_cpp/bt_parser.h"
#include "behaviortree_cpp/condition_node.h"
#include "behaviortree_cpp/contrib/any.hpp"
#include "behaviortree_cpp/contrib/expected.hpp"
#include "behaviortree_cpp/contrib/json.hpp"
#include "behaviortree_cpp/contrib/magic_enum.hpp"
#include "behaviortree_cpp/control_node.h"
#include "behaviortree_cpp/controls/fallback_node.h"
#include "behaviortree_cpp/controls/if_then_else_node.h"
#include "behaviortree_cpp/controls/manual_node.h"
#include "behaviortree_cpp/controls/parallel_all_node.h"
#include "behaviortree_cpp/controls/parallel_node.h"
#include "behaviortree_cpp/controls/reactive_fallback.h"
#include "behaviortree_cpp/controls/reactive_sequence.h"
#include "behaviortree_cpp/controls/sequence_node.h"
#include "behaviortree_cpp/controls/sequence_with_memory_node.h"
#include "behaviortree_cpp/controls/switch_node.h"
#include "behaviortree_cpp/controls/while_do_else_node.h"
#include "behaviortree_cpp/decorator_node.h"
#include "behaviortree_cpp/decorators/consume_queue.h"
#include "behaviortree_cpp/decorators/delay_node.h"
#include "behaviortree_cpp/decorators/force_failure_node.h"
#include "behaviortree_cpp/decorators/force_success_node.h"
#include "behaviortree_cpp/decorators/inverter_node.h"
#include "behaviortree_cpp/decorators/keep_running_until_failure_node.h"
#include "behaviortree_cpp/decorators/loop_node.h"
#include "behaviortree_cpp/decorators/repeat_node.h"
#include "behaviortree_cpp/decorators/retry_node.h"
#include "behaviortree_cpp/decorators/run_once_node.h"
#include "behaviortree_cpp/decorators/script_precondition.h"
#include "behaviortree_cpp/decorators/subtree_node.h"
#include "behaviortree_cpp/decorators/timeout_node.h"
#include "behaviortree_cpp/decorators/updated_decorator.h"
#include "behaviortree_cpp/exceptions.h"
#include "behaviortree_cpp/flatbuffers/BT_logger_generated.h"
#include "behaviortree_cpp/flatbuffers/base.h"
#include "behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h"
#include "behaviortree_cpp/flatbuffers/flatbuffers.h"
#include "behaviortree_cpp/flatbuffers/stl_emulation.h"
#include "behaviortree_cpp/json_export.h"
#include "behaviortree_cpp/leaf_node.h"
#include "behaviortree_cpp/loggers/abstract_logger.h"
#include "behaviortree_cpp/loggers/bt_cout_logger.h"
#include "behaviortree_cpp/loggers/bt_file_logger.h"
#include "behaviortree_cpp/loggers/bt_file_logger_v2.h"
#include "behaviortree_cpp/loggers/bt_minitrace_logger.h"
#include "behaviortree_cpp/loggers/bt_observer.h"
#include "behaviortree_cpp/loggers/bt_sqlite_logger.h"
#include "behaviortree_cpp/loggers/groot2_protocol.h"
#include "behaviortree_cpp/loggers/groot2_publisher.h"
#include "behaviortree_cpp/scripting/any_types.hpp"
#include "behaviortree_cpp/scripting/operators.hpp"
#include "behaviortree_cpp/scripting/script_parser.hpp"
#include "behaviortree_cpp/tree_node.h"
#include "behaviortree_cpp/utils/convert_impl.hpp"
#include "behaviortree_cpp/utils/demangle_util.h"
#include "behaviortree_cpp/utils/locked_reference.hpp"
#include "behaviortree_cpp/utils/platform.hpp"
#include "behaviortree_cpp/utils/safe_any.hpp"
#include "behaviortree_cpp/utils/shared_library.h"
#include "behaviortree_cpp/utils/signal.h"
#include "behaviortree_cpp/utils/simple_string.hpp"
#include "behaviortree_cpp/utils/strcat.hpp"
#include "behaviortree_cpp/utils/timer_queue.h"
#include "behaviortree_cpp/utils/wakeup_signal.hpp"
#include "behaviortree_cpp/xml_parsing.h"