3#include "proto/primitive.pb.h"
4#include "software/ai/navigator/obstacle/robot_navigation_obstacle_factory.h"
5#include "software/ai/navigator/trajectory/trajectory_path.h"
27 virtual std::pair<std::optional<TrajectoryPath>,
28 std::unique_ptr<TbotsProto::Primitive>>
31 const std::set<TbotsProto::MotionConstraint> &motion_constraints,
32 const std::map<RobotId, TrajectoryPath> &robot_trajectories,
43 TbotsProto::ObstacleList &obstacle_list_out,
44 TbotsProto::PathVisualization &path_visualization_out)
const = 0;
53 return estimated_cost;
57 double estimated_cost = 0;
Definition primitive.h:11
virtual void getVisualizationProtos(TbotsProto::ObstacleList &obstacle_list_out, TbotsProto::PathVisualization &path_visualization_out) const =0
virtual std::pair< std::optional< TrajectoryPath >, std::unique_ptr< TbotsProto::Primitive > > generatePrimitiveProtoMessage(const World &world, const std::set< TbotsProto::MotionConstraint > &motion_constraints, const std::map< RobotId, TrajectoryPath > &robot_trajectories, const RobotNavigationObstacleFactory &obstacle_factory)=0
virtual ~Primitive()=default
double getEstimatedPrimitiveCost() const
Definition primitive.h:51
Definition robot_navigation_obstacle_factory.h:19