17#ifndef __ARBITRATOR_INCLUDE_COST_FUNCTION_HPP__
18#define __ARBITRATOR_INCLUDE_COST_FUNCTION_HPP__
20#include <carma_planning_msgs/msg/maneuver_plan.hpp>
21#include <carma_planning_msgs/srv/compute_plan_cost.hpp>
Generic interface representing a means of computing cost for plans in the search graph.
virtual ~CostFunction()
Virtual destructor provided for memory safety.
virtual double compute_cost_per_unit_distance(const carma_planning_msgs::msg::ManeuverPlan &plan)=0
Compute the unit cost over distance of a given maneuver plan.
virtual double compute_total_cost(const carma_planning_msgs::msg::ManeuverPlan &plan)=0
Compute the cost of a given maneuver plan.