Parasol Planning Library (PPL)
TogglePRMStrategy.h
Go to the documentation of this file.
1 #ifndef PMPL_TOGGLE_PRM_STRATEGY_H_
2 #define PMPL_TOGGLE_PRM_STRATEGY_H_
3 
5 
6 
21 class TogglePRMStrategy : public BasicPRM {
22 
23  public:
24 
27 
29  typedef typename RoadmapType::VID VID;
31 
35 
36  typedef std::deque<std::pair<bool, Cfg>> ToggleQueue;
37 
41 
43 
44  TogglePRMStrategy(XMLNode& _node);
45 
46  virtual ~TogglePRMStrategy() = default;
47 
51 
52  virtual void Print(std::ostream& _os) const override;
53 
55 
56  protected:
57 
60 
61  virtual void Initialize() override;
62 
63  virtual void Iterate() override;
64 
68 
70  void GenerateNodes();
71 
75  void ConnectHelper(const bool _valid, const VID _vid);
76 
80  void Enqueue(const Cfg& _cfg);
81 
85 
86 
87  std::vector<std::string> m_colConnectorLabels;
88  std::string m_vcLabel;
89 
90  bool m_priority{false};
91 
93 
95 
96 };
97 
98 #endif
Definition: BasicPRM.h:20
RoadmapType::VID VID
Definition: BasicPRM.h:28
Definition: Cfg.h:38
Definition: GenericStateGraph.h:67
STAPLGraph::vertex_descriptor VID
Definition: GenericStateGraph.h:83
Definition: TogglePRMStrategy.h:21
MPBaseObject::RoadmapType RoadmapType
Definition: TogglePRMStrategy.h:28
void Enqueue(const Cfg &_cfg)
Definition: TogglePRMStrategy.cpp:178
virtual void Print(std::ostream &_os) const override
Definition: TogglePRMStrategy.cpp:52
ToggleQueue m_queue
Queue for sharing information between maps.
Definition: TogglePRMStrategy.h:92
virtual ~TogglePRMStrategy()=default
TogglePRMStrategy()
Definition: TogglePRMStrategy.cpp:15
std::deque< std::pair< bool, Cfg > > ToggleQueue
Definition: TogglePRMStrategy.h:36
virtual void Iterate() override
Execute one iteration of the strategy.
Definition: TogglePRMStrategy.cpp:87
void GenerateNodes()
Sample new nodes and put them into the toggle queue.
Definition: TogglePRMStrategy.cpp:119
bool m_priority
Give priority to valid nodes in the queue?
Definition: TogglePRMStrategy.h:90
RoadmapType::VID VID
Definition: TogglePRMStrategy.h:29
BasicPRM::SamplerSetting SamplerSetting
Definition: TogglePRMStrategy.h:30
std::vector< std::string > m_colConnectorLabels
Definition: TogglePRMStrategy.h:87
virtual void Initialize() override
Definition: TogglePRMStrategy.cpp:78
void ConnectHelper(const bool _valid, const VID _vid)
Definition: TogglePRMStrategy.cpp:150
std::string m_vcLabel
Validity checker for lazy samplers.
Definition: TogglePRMStrategy.h:88
Definition: XMLNode.h:27
Settings for a specific sampler.
Definition: BasicPRM.h:35