48 const PlanningConfig& planning_config,
49 const std::shared_ptr<DependencyInjector>& injector) = 0;
56 Planner* (*)(
const std::shared_ptr<DependencyInjector>& injector)>
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
virtual common::Status Init()
Definition: planner_dispatcher.h:42
Planning module main class. It processes GPS and IMU as input, to generate planning info...
virtual std::unique_ptr< Planner > DispatchPlanner(const PlanningConfig &planning_config, const std::shared_ptr< DependencyInjector > &injector)=0
Implements a Factory design pattern with Register and Create methods.
Definition: factory.h:60
Planner is a base class for specific planners. It contains a pure virtual function Plan which must be...
Definition: planner.h:42
static Status OK()
generate a success status.
Definition: status.h:60
Defines the Factory class.
PlannerDispatcher()=default
virtual ~PlannerDispatcher()=default
Definition: planner_dispatcher.h:37
A general class to denote the return status of an API call. It can either be an OK status for success...
Definition: status.h:43
common::util::Factory< PlannerType, Planner, Planner *(*)(const std::shared_ptr< DependencyInjector > &injector)> planner_factory_
Definition: planner_dispatcher.h:57