Class TimeScorer

Inheritance Relationships

Base Type

Class Documentation

class TimeScorer : public nav2_route::EdgeCostFunction

Scores edges by the time to traverse an edge. It uses previous times to navigate the edge primarily, then secondarily uses maximum speed and absolute speed limits to estimate with edge length.

Public Functions

TimeScorer() = default

Constructor.

virtual ~TimeScorer() = default

destructor

virtual void configure(const rclcpp_lifecycle::LifecycleNode::SharedPtr node, const std::shared_ptr<tf2_ros::Buffer> tf_buffer, std::shared_ptr<nav2_costmap_2d::CostmapSubscriber> costmap_subscriber, const std::string &name) override

Configure.

virtual bool score(const EdgePtr edge, const RouteRequest &route_request, const EdgeType &edge_type, float &cost) override

Main scoring plugin API.

Parameters:
  • edge – The edge pointer to score, which has access to the start/end nodes and their associated metadata and actions

  • cost – of the edge scored

Returns:

bool if this edge is open valid to traverse

virtual std::string getName() override

Get name of the plugin for parameter scope mapping.

Returns:

Name

Protected Attributes

std::string name_
std::string speed_tag_
std::string prev_time_tag_
float weight_
float max_vel_