Parasol Planning Library (PPL)
BoundaryConstraint.h
Go to the documentation of this file.
1 #ifndef PMPL_BOUNDARY_CONSTRAINT_H_
2 #define PMPL_BOUNDARY_CONSTRAINT_H_
3 
4 #include "Constraint.h"
5 
6 #include <iostream>
7 
8 class Boundary;
9 class XMLNode;
10 
11 
17 
18  public:
19 
22 
26  explicit BoundaryConstraint(Robot* const _r, std::unique_ptr<Boundary>&& _b);
27 
31  explicit BoundaryConstraint(Robot* const _r, XMLNode& _node);
32 
34 
36 
37  virtual std::unique_ptr<Constraint> Clone() const override;
38 
42 
43  virtual const Boundary* GetBoundary() const override;
44 
45  virtual bool Satisfied(const Cfg& _c) const override;
46 
48 
49  protected:
50 
53 
54  std::unique_ptr<Boundary> m_boundary;
55 
57 
58 };
59 
60 
61 std::ostream& operator<<(std::ostream&, const BoundaryConstraint&);
62 
63 #endif
std::ostream & operator<<(std::ostream &, const BoundaryConstraint &)
Definition: BoundaryConstraint.cpp:66
Definition: BoundaryConstraint.h:16
virtual const Boundary * GetBoundary() const override
Definition: BoundaryConstraint.cpp:49
virtual ~BoundaryConstraint()
virtual std::unique_ptr< Constraint > Clone() const override
Definition: BoundaryConstraint.cpp:41
virtual bool Satisfied(const Cfg &_c) const override
Definition: BoundaryConstraint.cpp:56
BoundaryConstraint(Robot *const _r, std::unique_ptr< Boundary > &&_b)
Definition: BoundaryConstraint.cpp:18
std::unique_ptr< Boundary > m_boundary
The boundary for this constraint.
Definition: BoundaryConstraint.h:54
Definition: Boundary.h:30
Definition: Cfg.h:38
Definition: Constraint.h:23
Definition: Robot.h:31
Definition: XMLNode.h:27