17#ifndef __ARBITRATOR_INCLUDE_TREE_PLANNER_HPP__
18#define __ARBITRATOR_INCLUDE_TREE_PLANNER_HPP__
21#include <carma_planning_msgs/msg/maneuver_plan.hpp>
27#include <rclcpp/rclcpp.hpp>
51 std::shared_ptr<NeighborGenerator> ng,
52 std::shared_ptr<SearchStrategy> ss,
53 rclcpp::Duration target):
Generic interface representing a strategy for arriving at a maneuver plan.
Implementation of PlanningStrategy using a generic tree search algorithm.
rclcpp::Duration target_plan_duration_
TreePlanner(std::shared_ptr< CostFunction > cf, std::shared_ptr< NeighborGenerator > ng, std::shared_ptr< SearchStrategy > ss, rclcpp::Duration target)
Tree planner constructor.
carma_planning_msgs::msg::ManeuverPlan generate_plan(const VehicleState &start_state)
Utilize the configured cost function, neighbor generator, and search strategy, to generate a plan by ...
std::shared_ptr< SearchStrategy > search_strategy_
std::shared_ptr< NeighborGenerator > neighbor_generator_
std::shared_ptr< CostFunction > cost_function_
Struct defining the vehicle state required for maneuver planning.