hpp-manipulation-corba  4.13.0
Corba server for manipulation planning
problem.idl
Go to the documentation of this file.
1 // Copyright (c) 2014 CNRS
2 // Author: Florent Lamiraux
3 //
4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions are
6 // met:
7 //
8 // 1. Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer.
10 //
11 // 2. Redistributions in binary form must reproduce the above copyright
12 // notice, this list of conditions and the following disclaimer in the
13 // documentation and/or other materials provided with the distribution.
14 //
15 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
16 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
17 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
18 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
19 // HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
26 // DAMAGE.
27 
28 #ifndef HPP_MANIPULATION_CORBA_PROBLEM_IDL
29 #define HPP_MANIPULATION_CORBA_PROBLEM_IDL
30 
32 #include <hpp/common.idl>
33 
34 #include <hpp/pinocchio_idl/robots.idl>
35 #include <hpp/core_idl/path_planners.idl>
36 #include <hpp/core_idl/distances.idl>
37 
40 
41 module hpp {
42  module corbaserver {
43  module manipulation {
44  interface Problem
45  {
51  boolean selectProblem (in string name) raises (Error);
52 
54  void resetProblem () raises (Error);
55 
59  Names_t getAvailable (in string type) raises (Error);
60 
65  Names_t getSelected (in string type) raises (Error);
66 
69  void loadRoadmap (in string filename) raises (Error);
70 
90  void createGrasp (in string graspName, in string gripperName,
91  in string handleName)
92  raises (Error);
93 
114  void createPreGrasp (in string name, in string gripper,
115  in string handle) raises (Error);
116 
120  Names_t getEnvironmentContactNames ()
121  raises (Error);
122 
126  Names_t getRobotContactNames ()
127  raises (Error);
128 
139  Names_t getEnvironmentContact (in string name, out intSeq indices,
140  out floatSeqSeq points)
141  raises (Error);
142 
153  Names_t getRobotContact (in string name, out intSeq indexes,
154  out floatSeqSeq points)
155  raises (Error);
156 
168  void createPlacementConstraint (in string placementName,
169  in Names_t shapeName, in Names_t envContactName)
170  raises (Error);
171 
184  void createPrePlacementConstraint (in string placementName,
185  in Names_t shapeName, in Names_t envContactName, in double witdh)
186  raises (Error);
187 
195  void createQPStabilityConstraint(in string constraintName,
196  in string comRootJointName, in Names_t shapesName)
197  raises (Error);
198 
205  boolean setConstraints (in ID idComp, in boolean target)
206  raises (Error);
207 
222  void registerConstraints(in string constraint, in string complement,
223  in string both);
224 
232  boolean applyConstraints (in ID idComp, in floatSeq input, out floatSeq output,
233  out double residualError)
234  raises (Error);
235 
246  boolean applyConstraintsWithOffset (in ID IDedge, in floatSeq qnear, in floatSeq input, out floatSeq output,
247  out double residualError)
248  raises (Error);
249 
263  boolean buildAndProjectPath (in ID IDedge, in floatSeq qb, in floatSeq qe, out long indexNotProj,
264  out long indexProj)
265  raises (Error);
266 
270  void setTargetState(in ID IDstate) raises (Error);
271 
274  ID edgeAtParam (in unsigned long inPathId, in double atDistance, out string graphName)
275  raises (Error);
276 
277  manipulation_idl::graph_idl::Validation createGraphValidation ()
278  raises (Error);
279 
289  core_idl::Roadmap readRoadmap(in string filename, in pinocchio_idl::Device robot,
290  in manipulation_idl::graph_idl::Graph graph) raises (Error);
291 
301  void writeRoadmap(in string filename, in core_idl::Roadmap roadmap,
302  in pinocchio_idl::Device robot,
303  in manipulation_idl::graph_idl::Graph graph) raises (Error);
304 
305  core_idl::Roadmap createRoadmap(in core_idl::Distance distance,
306  in pinocchio_idl::Device robot) raises (Error);
307  }; // interface Problem
308  }; // module manipulation
309  }; // module corbaserver
310 }; // module hpp
311 
312 #endif // HPP_MANIPULATION_CORBA_ROBOT_IDL
Definition: client.hh:46
long ID
Definition: gcommon.idl:34
Definition: problem.idl:44