Struct Debug::Node

Nested Relationships

This struct is a nested type of Class Planner::Debug.

Nested Types

Struct Documentation

struct Node

A Node in the planning search. A final Planning solution will be a chain of these Nodes, aggregated into a Plan data structure.

Public Types

using SearchQueue = std::priority_queue<ConstNodePtr, std::vector<ConstNodePtr>, Compare>
using Vector = std::vector<ConstNodePtr>

Public Members

ConstNodePtr parent

The parent of this Node. If this is a nullptr, then this was a starting node.

std::vector<Route> route_from_parent

The route that goes from the parent Node to this Node.

double remaining_cost_estimate

An estimate of the remaining cost, based on the heuristic.

double current_cost

The actual cost that has accumulated on the way to this Node.

rmf_utils::optional<std::size_t> waypoint

The waypoint that this Node stops on.

double orientation

The orientation that this Node ends with.

agv::Graph::Lane::EventPtr event

A pointer to an event that occured on the way to this Node.

rmf_utils::optional<std::size_t> start_set_index

If this is a starting node, then this will be the index.

std::size_t id

A unique ID that sticks with this node for its entire lifetime. This will also (roughly) reflect the order of node creation.

struct Compare

Public Functions

inline bool operator()(const ConstNodePtr &a, const ConstNodePtr &b)