1 #ifndef PMPL_REWIRE_CONNECTOR_H_
2 #define PMPL_REWIRE_CONNECTOR_H_
44 const double _cost = 0) :
59 const double _cost = 0) :
66 template <
typename AbstractRoadmapType>
88 const VertexSet*
const _targetSet =
nullptr,
92 const VertexSet*
const _targetSet =
nullptr,
111 const std::vector<Neighbor>& _neighbors,
116 const std::vector<Neighbor>& _neighbors,
126 const std::vector<Neighbor>& _neighbors,
131 const std::vector<Neighbor>& _neighbors,
144 const VID _currentParent,
const double _currentCost,
145 const VID _potentialParent,
const double _potentialParentCost,
150 const VID _currentParent,
const double _currentCost,
151 const VID _potentialParent,
const double _potentialParentCost,
159 double ShortestPathWeight(
const RoadmapType*
const _r,
160 const VID _vid)
const noexcept;
164 const VID _vid)
const noexcept;
172 const VID _target)
const noexcept;
176 const VID _target)
const noexcept;
182 double EdgeWeight(
const WeightType& _w,
const Robot*
const _robot)
const
195 const double _newCost)
const noexcept;
200 const double _newCost)
const noexcept;
206 std::string m_nfLabel;
207 std::string m_operatorLabel;
208 std::string m_objectiveLabel;
211 std::function<double(
const double&,
const double&)> m_operator;
214 std::function<double(
const double&,
const double&)> m_objective;
217 std::unordered_map<VID, double> m_distanceBuffer;
Definition: ConnectorMethod.h:25
RoadmapType::VID VID
Definition: ConnectorMethod.h:34
std::vector< Neighbor > m_neighborBuffer
Definition: ConnectorMethod.h:223
RoadmapType::VertexSet VertexSet
Definition: ConnectorMethod.h:35
std::back_insert_iterator< std::vector< typename AbstractRoadmapType::VP > > OutputIterator
Definition: ConnectorMethod.h:50
Definition: GenericStateGraph.h:67
STAPLGraph::vertex_descriptor VID
Definition: GenericStateGraph.h:83
std::unordered_set< VID > VertexSet
Definition: GenericStateGraph.h:86
Definition: GroupCfg.h:39
Definition: GroupLocalPlan.h:24
Definition: GroupRoadmap.h:25
Definition: RewireConnector.h:17
MPBaseObject::GroupWeightType GroupWeightType
Definition: RewireConnector.h:26
RoadmapType::VertexSet VertexSet
Definition: RewireConnector.h:30
MPBaseObject::RoadmapType RoadmapType
Definition: RewireConnector.h:27
virtual void ConnectImpl(RoadmapType *const _r, const VID _source, const VertexSet *const _targetSet=nullptr, OutputIterator< RoadmapType > *const _collision=nullptr) override
Definition: RewireConnector.cpp:74
RoadmapType::VID VID
Definition: RewireConnector.h:29
MPBaseObject::GroupCfgType GroupCfgType
Definition: RewireConnector.h:24
virtual ~RewireConnector()=default
MPBaseObject::WeightType WeightType
Definition: RewireConnector.h:25
MPBaseObject::GroupRoadmapType GroupRoadmapType
Definition: RewireConnector.h:28
RewireConnector()
Definition: RewireConnector.cpp:10
Definition: GroupLPOutput.h:29
Definition: LPOutput.h:24
An aggregate for returning the results of a group rewiring check.
Definition: RewireConnector.h:52
double cost
New total cost to the rewired node.
Definition: RewireConnector.h:55
GroupRewireTestOutput(const bool _passed=false, GroupLPOutput &&_lpo=GroupLPOutput(), const double _cost=0)
Definition: RewireConnector.h:57
GroupLPOutput lpo
The generated local plan.
Definition: RewireConnector.h:54
bool passed
Should we use this rewiring?
Definition: RewireConnector.h:53
An aggregate for returning the results of a rewiring check.
Definition: RewireConnector.h:37
bool passed
Should we use this rewiring?
Definition: RewireConnector.h:38
double cost
New total cost to the rewired node.
Definition: RewireConnector.h:40
LPOutput lpo
The generated local plan.
Definition: RewireConnector.h:39
RewireTestOutput(const bool _passed=false, LPOutput &&_lpo=LPOutput(), const double _cost=0)
Definition: RewireConnector.h:42