hpp-corbaserver  4.11.0
Corba server for Humanoid Path Planner applications
path_validations.idl
Go to the documentation of this file.
1 // Copyright (C) 2019 by Joseph Mirabel, LAAS-CNRS.
2 //
3 // This file is part of the hpp-corbaserver.
4 //
5 // This software is provided "as is" without warranty of any kind,
6 // either expressed or implied, including but not limited to the
7 // implied warranties of fitness for a particular purpose.
8 //
9 // See the COPYING file for more information.
10 
11 #ifndef HPP_CORE_PATH_VALIDATIONS_IDL
12 #define HPP_CORE_PATH_VALIDATIONS_IDL
13 #include <hpp/common.idl>
14 
15 #include <hpp/core_idl/paths.idl>
16 
17 #define HPP_CORE_OBSTACLE_USER_INTERFACE \
18  void setSecurityMargins(in floatSeqSeq margins) raises(Error); \
19  void setSecurityMarginBetweenBodies(in string body_a, in string body_b, in value_type margin) raises(Error); \
20  void filterCollisionPairs (in RelativeMotionMatrix relMotion) raises(Error);
21 
22 
23 module hpp
24 {
25  module core_idl {
26  typedef string ValidationReport;
27  typedef string PathValidationReport;
29 
30  interface ConfigValidation
31  {
32  boolean validate (in floatSeq config, out ValidationReport report) raises (Error);
33  //* using namespace hpp::core;
34  //* ValidationReportPtr_t vr;
35  //*
36  //* bool res = get()->validate (hpp::corbaServer::floatSeqToVector(config), vr);
37  //*
38  //* if (vr) {
39  //* std::ostringstream oss; oss << *vr;
40  //* std::string res = oss.str();
41  //* report = CORBA::string_dup(res.c_str());
42  //* } else {
43  //* report = CORBA::string_dup("");
44  //* }
45  //*
46  //* return res;
47  }; // interface ConfigValidation
48 
50  {
51  void add (in ConfigValidation validation) raises (Error);
52  size_type numberConfigValidations() raises (Error);
53  void clear() raises (Error);
54 
56  }; // interface ConfigValidations
57 
59  {
61  }; // interface PathValidations
62 
63  interface PathValidation
64  {
65  boolean validate (in Path p, in boolean reverse, out Path validPart, out PathValidationReport report) raises (Error);
66  //* using namespace hpp::core;
67  //* PathPtr_t _p (::hpp::corbaServer::reference_to_servant_base<core::Path>(server_, p)->get());
68  //* PathPtr_t vp;
69  //* PathValidationReportPtr_t pvr;
70  //*
71  //* bool res = get()->validate (_p, reverse, vp, pvr);
72  //*
73  //* if (pvr) {
74  //* std::ostringstream oss; oss << *pvr;
75  //* std::string res = oss.str();
76  //* report = CORBA::string_dup(res.c_str());
77  //* } else {
78  //* report = CORBA::string_dup("");
79  //* }
80  //*
81  //* validPart = ::hpp::corbaServer::makeServant<hpp::core_idl::Path_ptr> (server_, new Path (server_, vp));
82  //* return res;
83  }; // interface SteeringMethod
84 
86  {
88  }; // interface PathValidations
89 
91  {
93  }; // interface PathValidations
94 
95  module pathValidation_idl {
96  // \todo at the moment, multiple parent classes is not supported.
98  {
100  }; // interface PathValidations
101  }; // module pathValidation
102 
103  }; // module core
104 }; // module hpp
105 //* #include <hpp/core/config-validation.hh>
106 //* #include <hpp/core/config-validations.hh>
107 //* #include <hpp/core/collision-validation.hh>
108 //* #include <hpp/core/path-validation.hh>
109 //* #include <hpp/core/path-validations.hh>
110 //* #include <hpp/core/path-validation-report.hh>
111 //* #include <hpp/core/path-validation/discretized.hh>
112 //* #include <hpp/core/continuous-validation.hh>
113 //* #include <hpp/core_idl/paths.hh>
114 
115 #endif // HPP_CORE_PATH_VALIDATIONS_IDL
Definition: path_validations.idl:58
Definition: path_validations.idl:97
_CORBA_MODULE hpp _CORBA_MODULE_BEG _CORBA_MODULE core_idl _CORBA_MODULE_BEG typedef char * ValidationReport
Definition: path_validations-idl.hh:79
Implement CORBA interface ``Obstacle&#39;&#39;.
Definition: basic-server.hh:27
Corba exception travelling through the Corba channel.
Definition: common.idl:25
Definition: path_validations.idl:63
Definition: path_validations.idl:49
Definition: common-idl.hh:461
Definition: path_validations.idl:90
Definition: paths.idl:22
Definition: common-idl.hh:575
intSeqSeq RelativeMotionMatrix
Definition: path_validations-idl.hh:87
#define HPP_CORE_OBSTACLE_USER_INTERFACE
Definition: path_validations.idl:17
Definition: path_validations.idl:30
Definition: path_validations.idl:85
char * PathValidationReport
Definition: path_validations-idl.hh:83
long long size_type
Definition: common.idl:19