![]() |
Parasol Planning Library (PPL)
|
#include <Neighbors.h>
Public Types | |
Local Types | |
typedef size_t | VID |
typedef std::function< bool(const Neighbor &_a, const Neighbor &_b)> | Comparator |
Public Member Functions | |
Construction | |
Neighbor () | |
Neighbor (const VID _target, const double _distance) | |
Neighbor (const VID _source, const VID _target, const double _distance) | |
Equality | |
bool | operator== (const Neighbor &_other) const noexcept |
Checks equality with another Neighbor. More... | |
bool | operator!= (const Neighbor &_other) const noexcept |
Checks inequality with another Neighbor. More... | |
Data Fields | |
Internal State | |
VID | source {VID(-1)} |
The source VID. More... | |
VID | target {VID(-1)} |
The target VID. More... | |
double | distance {std::numeric_limits<double>::infinity()} |
The distance between source and target. More... | |
Ordering | |
There are several ways to order a set of neighbors. The default is to order only by distance. The static functions here give alternate comparators that can be used to select the desired ordering. | |
bool | operator< (const Neighbor &_other) const noexcept |
Orders by distance only. More... | |
static Comparator | OrderByDistanceThenTarget () noexcept |
Orders by distance, then target VID. More... | |
static Comparator | OrderByDistanceThenSource () noexcept |
Orders by distance, then source VID. More... | |
static Comparator | OrderByAll () noexcept |
Orders by distance, then source, then target. More... | |
Describes a distance relation between two cfgs as determined by a neighborhood finder. At least one of the cfgs should be in the roadmap.
typedef std::function<bool(const Neighbor& _a, const Neighbor& _b)> Neighbor::Comparator |
A function for comparing two neighbors for ordering purposes. Returns true if _a is ordered before _b.
typedef size_t Neighbor::VID |
|
inlinedefault |
|
inline |
|
inlinenoexcept |
Checks inequality with another Neighbor.
|
inlinenoexcept |
Orders by distance only.
|
inlinenoexcept |
Checks equality with another Neighbor.
|
inlinestaticnoexcept |
Orders by distance, then source, then target.
|
inlinestaticnoexcept |
Orders by distance, then source VID.
|
inlinestaticnoexcept |
Orders by distance, then target VID.
double Neighbor::distance {std::numeric_limits<double>::infinity()} |
The distance between source and target.