hpp-manipulation-corba  5.0.0
Corba server for manipulation planning
_path_planners.idl
Go to the documentation of this file.
1 // Copyright (C) 2020 by Joseph Mirabel, LAAS-CNRS.
2 //
3 // Redistribution and use in source and binary forms, with or without
4 // modification, are permitted provided that the following conditions are
5 // met:
6 //
7 // 1. Redistributions of source code must retain the above copyright
8 // notice, this list of conditions and the following disclaimer.
9 //
10 // 2. Redistributions in binary form must reproduce the above copyright
11 // notice, this list of conditions and the following disclaimer in the
12 // documentation and/or other materials provided with the distribution.
13 //
14 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
15 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
16 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
17 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
18 // HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
19 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
20 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
24 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
25 // DAMAGE.
26 
27 
28 #ifndef HPP_MANIPULATION_CORBA_PATH_PLANNERS_IDL
29 #define HPP_MANIPULATION_CORBA_PATH_PLANNERS_IDL
30 #include <hpp/common.idl>
31 
32 #include <hpp/core_idl/path_planners.idl>
34 
35 module hpp
36 {
37  module core_idl {
38  interface PathPlanner;
39  interface PathProjector;
40  }; // module core
41 
42  module manipulation_idl {
43  interface Roadmap : core_idl::Roadmap {
44  void constraintGraph (in graph_idl::Graph graph) raises (Error);
45  }; // interface Roadmap
46 
47  module pathPlanner_idl {
49  {
50  }; // interface IkSolverInitialization
51 
52  interface EndEffectorTrajectory : core_idl::PathPlanner
53  {
54  long getNRandomConfig ( ) raises (Error);
55  //-> nRandomConfig
56  void setNRandomConfig (in long n) raises (Error);
57  //-> nRandomConfig
58 
59  long getNDiscreteSteps ( ) raises (Error);
60  //-> nDiscreteSteps
61  void setNDiscreteSteps (in long n) raises (Error);
62  //-> nDiscreteSteps
63 
64  boolean getCheckFeasibilityOnly ( ) raises (Error);
65  //-> checkFeasibilityOnly
66  void setCheckFeasibilityOnly (in boolean n) raises (Error);
67  //-> checkFeasibilityOnly
68 
69  void setIkSolverInitialization (in IkSolverInitialization solver);
70  //-> ikSolverInitialization
71  }; // interface EndEffectorTrajectory
72 
73  interface TransitionPlanner : core_idl::PathPlanner
74  {
75  core_idl::PathVector planPath(in floatSeq qInit,
76  in floatSeqSeq qGoals, in boolean resetRoadmap) raises(Error);
77  core_idl::Path directPath(in floatSeq q1, in floatSeq q2, in boolean
78  validate, out boolean success, out string status) raises(Error);
79  core_idl::PathVector optimizePath(in core_idl::Path path) raises(Error);
80  core_idl::PathVector timeParameterization(in core_idl::PathVector path)
81  raises(Error);
82  void setReedsAndSheppSteeringMethod(in double turningRadius)
83  raises(Error);
84  void setEdge(in long id) raises(Error);
85  void setPathProjector(in string pathProjectorType,in double tolerance)
86  raises(Error);
87  //* std::string _pathProjectorType (pathProjectorType);
88  //* core::ProblemSolverPtr_t ps = server_->problemSolver();
89  //* core::PathProjectorBuilder_t factory(ps->pathProjectors.get
90  //* (_pathProjectorType));
91  //* core::PathProjectorPtr_t pathProjector(factory(getT()->
92  //* innerProblem(), tolerance));
93  //* (getT()->pathProjector (pathProjector));
94  void clearPathOptimizers() raises(Error);
95  void addPathOptimizer(in string pathOptimizerType) raises(Error);
96  //* std::string _pathOptimizerType (pathOptimizerType);
97  //* core::ProblemSolverPtr_t ps = server_->problemSolver();
98  //* core::PathOptimizerBuilder_t factory(ps->pathOptimizers.get
99  //* (_pathOptimizerType));
100  //* core::PathOptimizerPtr_t pathOptimizer(factory(getT()->
101  //* problem()));
102  //* (getT()->addPathOptimizer (pathOptimizer));
103  void setParameter (in string name, in any value) raises (Error);
104  //* getT()->innerProblem()->setParameter(name,
105  //* hpp::corbaServer::toParameter(value));
106 
107  }; // interface TransitionPlanner
108 
109  }; // module pathPlanner_idl
110  }; // module manipulation_idl
111 }; // module hpp
112 
113 //* #include <hpp/manipulation/path-planner/end-effector-trajectory.hh>
114 //* #include <hpp/manipulation/path-planner/transition-planner.hh>
115 //* #include <hpp/core/parameter.hh>
116 //* #include <hpp/core/problem.hh>
117 //* #include <hpp/core_idl/paths.hh>
118 //* #include <hpp/core_idl/path_planners.hh>
119 //* #include <hpp/core_idl/path_projectors.hh>
120 //* #include <hpp/manipulation_idl/_graph-fwd.hh>
121 //* #include <hpp/manipulation/roadmap.hh>
122 //* #include <hpp/manipulation/problem-solver.hh>
123 
124 #endif // HPP_MANIPULATION_CORBA_PATH_PLANNERS_IDL
Definition: client.hh:46
Definition: _path_planners.idl:43