hpp-rbprm  4.12.0
Implementation of RB-PRM planner using hpp.
time-constraint-path-validation.hh
Go to the documentation of this file.
1 //
2 // Copyright (c) 2015 CNRS
3 // Authors: Florent Lamiraux
4 //
5 // This file is part of hpp-core
6 // hpp-core is free software: you can redistribute it
7 // and/or modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation, either version
9 // 3 of the License, or (at your option) any later version.
10 //
11 // hpp-core is distributed in the hope that it will be
12 // useful, but WITHOUT ANY WARRANTY; without even the implied warranty
13 // of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // General Lesser Public License for more details. You should have
15 // received a copy of the GNU Lesser General Public License along with
16 // hpp-core If not, see
17 // <http://www.gnu.org/licenses/>.
18 
19 #ifndef HPP_RBPRM_TIME_CONSTRAINT_PATH_VALIDATION_HH
20 #define HPP_RBPRM_TIME_CONSTRAINT_PATH_VALIDATION_HH
21 
22 #include <hpp/core/path-validation/discretized.hh>
23 
24 namespace hpp {
25 namespace rbprm {
26 namespace interpolation {
27 HPP_PREDEF_CLASS(TimeConstraintPathValidation);
28 
30 typedef std::shared_ptr<TimeConstraintPathValidation> TimeConstraintPathValidationPtr_t;
33 
38 class HPP_CORE_DLLAPI TimeConstraintPathValidation : public core::pathValidation::Discretized {
39  public:
40  static TimeConstraintPathValidationPtr_t create(const pinocchio::DevicePtr_t& robot,
41  const pinocchio::value_type& stepSize,
42  const std::size_t pathDofRank);
43 
57  virtual bool validate(const core::PathPtr_t& path, bool reverse, core::PathPtr_t& validPart,
58  core::PathValidationReportPtr_t& report);
59 
60  public:
61  const std::size_t pathDofRank_;
62 
63  protected:
64  TimeConstraintPathValidation(const pinocchio::DevicePtr_t& robot, const pinocchio::value_type& stepSize,
65  const std::size_t pathDofRank);
66 }; // class DiscretizedPathValidation
68 } // namespace interpolation
69 } // namespace rbprm
70 } // namespace hpp
71 
72 #endif // HPP_RBPRM_TIME_CONSTRAINT_PATH_VALIDATION_HH
Definition: algorithm.hh:27
std::shared_ptr< TimeConstraintPathValidation > TimeConstraintPathValidationPtr_t
Definition: time-constraint-path-validation.hh:29
Definition: time-constraint-path-validation.hh:38
const std::size_t pathDofRank_
Definition: time-constraint-path-validation.hh:61
HPP_PREDEF_CLASS(ComTrajectory)