GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: include/hpp/rbprm/reports.hh Lines: 2 2 100.0 %
Date: 2024-02-02 12:21:48 Branches: 0 0 - %

Line Branch Exec Source
1
/// Copyright (c) 2017 CNRS
2
/// Authors: stonneau
3
///
4
///
5
// This file is part of hpp-rbprm.
6
// hpp-rbprm 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-wholebody-step-planner 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-wholebody-step-planner. If not, see
17
// <http://www.gnu.org/licenses/>.
18
19
#ifndef HPP_RBPRM_CONTACT_REPORT_HH
20
#define HPP_RBPRM_CONTACT_REPORT_HH
21
22
#include <hpp/rbprm/config.hh>
23
#include <hpp/rbprm/rbprm-state.hh>
24
25
namespace hpp {
26
namespace rbprm {
27
28
enum HPP_RBPRM_DLLAPI ContactComputationStatus {
29
  NO_CONTACT = 0,
30
  UNSTABLE_CONTACT = 1,
31
  STABLE_CONTACT = 2,
32
  REACHABLE_CONTACT =
33
      3  // in current implementation REACHABLE is always STABLE ... we might
34
         // need to use mask for futur developpement
35
};
36
37
namespace projection {
38
struct HPP_RBPRM_DLLAPI ProjectionReport {
39
102
  ProjectionReport() : success_(false), status_(NO_CONTACT) {}
40
  ProjectionReport(const ProjectionReport&);
41
102
  ~ProjectionReport() {}
42
  bool success_;
43
  hpp::rbprm::State result_;
44
  ContactComputationStatus status_;
45
};
46
47
}  // namespace projection
48
49
namespace contact {
50
51
struct HPP_RBPRM_DLLAPI ContactReport : public projection::ProjectionReport {
52
  ContactReport();
53
  ContactReport(const projection::ProjectionReport&);
54
  bool contactMaintained_;
55
  bool multipleBreaks_;
56
  bool contactCreated_;
57
  bool repositionedInPlace_;
58
};
59
}  // namespace contact
60
}  // namespace rbprm
61
}  // namespace hpp
62
#endif  // HPP_RBPRM_ALGORITHM_HH