GCC Code Coverage Report


Directory: ./
File: src/hpp/corbaserver/problem-idl.hh
Date: 2024-09-11 11:37:19
Exec Total Coverage
Lines: 3 11 27.3%
Branches: 0 4 0.0%

Line Branch Exec Source
1 // This file is generated by omniidl (C++ backend)- omniORB_4_3. Do not edit.
2 #ifndef __problem_hh__
3 #define __problem_hh__
4
5 #ifndef __CORBA_H_EXTERNAL_GUARD__
6 #include <omniORB4/CORBA.h>
7 #endif
8
9 #ifndef USE_stub_in_nt_dll
10 # define USE_stub_in_nt_dll_NOT_DEFINED_problem
11 #endif
12 #ifndef USE_core_stub_in_nt_dll
13 # define USE_core_stub_in_nt_dll_NOT_DEFINED_problem
14 #endif
15 #ifndef USE_dyn_stub_in_nt_dll
16 # define USE_dyn_stub_in_nt_dll_NOT_DEFINED_problem
17 #endif
18
19
20
21 #ifndef __common_hh_EXTERNAL_GUARD__
22 #define __common_hh_EXTERNAL_GUARD__
23 #include <hpp/common-idl.hh>
24 #endif
25 #ifndef __constraints_hh_EXTERNAL_GUARD__
26 #define __constraints_hh_EXTERNAL_GUARD__
27 #include <hpp/constraints_idl/constraints-idl.hh>
28 #endif
29 #ifndef __distances_hh_EXTERNAL_GUARD__
30 #define __distances_hh_EXTERNAL_GUARD__
31 #include <hpp/core_idl/distances-idl.hh>
32 #endif
33 #ifndef __paths_hh_EXTERNAL_GUARD__
34 #define __paths_hh_EXTERNAL_GUARD__
35 #include <hpp/core_idl/paths-idl.hh>
36 #endif
37 #ifndef ____constraints_hh_EXTERNAL_GUARD__
38 #define ____constraints_hh_EXTERNAL_GUARD__
39 #include <hpp/core_idl/_constraints-idl.hh>
40 #endif
41 #ifndef __steering__methods_hh_EXTERNAL_GUARD__
42 #define __steering__methods_hh_EXTERNAL_GUARD__
43 #include <hpp/core_idl/steering_methods-idl.hh>
44 #endif
45 #ifndef __path__planners_hh_EXTERNAL_GUARD__
46 #define __path__planners_hh_EXTERNAL_GUARD__
47 #include <hpp/core_idl/path_planners-idl.hh>
48 #endif
49 #ifndef __path__projectors_hh_EXTERNAL_GUARD__
50 #define __path__projectors_hh_EXTERNAL_GUARD__
51 #include <hpp/core_idl/path_projectors-idl.hh>
52 #endif
53 #ifndef __path__validations_hh_EXTERNAL_GUARD__
54 #define __path__validations_hh_EXTERNAL_GUARD__
55 #include <hpp/core_idl/path_validations-idl.hh>
56 #endif
57 #ifndef ____problem_hh_EXTERNAL_GUARD__
58 #define ____problem_hh_EXTERNAL_GUARD__
59 #include <hpp/core_idl/_problem-idl.hh>
60 #endif
61 #ifndef __robots_hh_EXTERNAL_GUARD__
62 #define __robots_hh_EXTERNAL_GUARD__
63 #include <hpp/pinocchio_idl/robots-idl.hh>
64 #endif
65 #ifndef __configuration__shooters_hh_EXTERNAL_GUARD__
66 #define __configuration__shooters_hh_EXTERNAL_GUARD__
67 #include <hpp/core_idl/configuration_shooters-idl.hh>
68 #endif
69
70
71
72 #ifdef USE_stub_in_nt_dll
73 # ifndef USE_core_stub_in_nt_dll
74 # define USE_core_stub_in_nt_dll
75 # endif
76 # ifndef USE_dyn_stub_in_nt_dll
77 # define USE_dyn_stub_in_nt_dll
78 # endif
79 #endif
80
81 #ifdef _core_attr
82 # error "A local CPP macro _core_attr has already been defined."
83 #else
84 # ifdef USE_core_stub_in_nt_dll
85 # define _core_attr _OMNIORB_NTDLL_IMPORT
86 # else
87 # define _core_attr
88 # endif
89 #endif
90
91 #ifdef _dyn_attr
92 # error "A local CPP macro _dyn_attr has already been defined."
93 #else
94 # ifdef USE_dyn_stub_in_nt_dll
95 # define _dyn_attr _OMNIORB_NTDLL_IMPORT
96 # else
97 # define _dyn_attr
98 # endif
99 #endif
100
101
102
103 _CORBA_MODULE hpp
104
105 _CORBA_MODULE_BEG
106
107 _CORBA_MODULE corbaserver
108
109 _CORBA_MODULE_BEG
110
111 #ifndef __hpp_mcorbaserver_mProblem__
112 #define __hpp_mcorbaserver_mProblem__
113 class Problem;
114 class _objref_Problem;
115 class _impl_Problem;
116
117 typedef _objref_Problem* Problem_ptr;
118 typedef Problem_ptr ProblemRef;
119
120 class Problem_Helper {
121 public:
122 typedef Problem_ptr _ptr_type;
123
124 static _ptr_type _nil();
125 static _CORBA_Boolean is_nil(_ptr_type);
126 static void release(_ptr_type);
127 static void duplicate(_ptr_type);
128 static void marshalObjRef(_ptr_type, cdrStream&);
129 static _ptr_type unmarshalObjRef(cdrStream&);
130 };
131
132 typedef _CORBA_ObjRef_Var<_objref_Problem, Problem_Helper> Problem_var;
133 typedef _CORBA_ObjRef_OUT_arg<_objref_Problem,Problem_Helper > Problem_out;
134
135 #endif
136
137 // interface Problem
138 class Problem {
139 public:
140 // Declarations for this interface type.
141 typedef Problem_ptr _ptr_type;
142 typedef Problem_var _var_type;
143
144 static _ptr_type _duplicate(_ptr_type);
145 static _ptr_type _narrow(::CORBA::Object_ptr);
146 static _ptr_type _unchecked_narrow(::CORBA::Object_ptr);
147
148 static _ptr_type _nil();
149
150 static inline void _marshalObjRef(_ptr_type, cdrStream&);
151
152 static inline _ptr_type _unmarshalObjRef(cdrStream& s) {
153 omniObjRef* o = omniObjRef::_unMarshal(_PD_repoId,s);
154 if (o)
155 return (_ptr_type) o->_ptrToObjRef(_PD_repoId);
156 else
157 return _nil();
158 }
159
160 static inline _ptr_type _fromObjRef(omniObjRef* o) {
161 if (o)
162 return (_ptr_type) o->_ptrToObjRef(_PD_repoId);
163 else
164 return _nil();
165 }
166
167 static _core_attr const char* _PD_repoId;
168
169 // Other IDL defined within this scope.
170
171 };
172
173 class _objref_Problem :
174 public virtual ::CORBA::Object,
175 public virtual omniObjRef
176 {
177 public:
178 // IDL operations
179 void setRandomSeed(::CORBA::Long seed);
180 void setMaxNumThreads(::CORBA::UShort n);
181 ::CORBA::UShort getMaxNumThreads();
182 Names_t* getAvailable(const char* type);
183 Names_t* getSelected(const char* type);
184 void setParameter(const char* name, const ::CORBA::Any& value);
185 ::CORBA::Any* getParameter(const char* name);
186 char* getParameterDoc(const char* name);
187 ::CORBA::Boolean selectProblem(const char* name);
188 void resetProblem();
189 ::CORBA::Boolean loadPlugin(const char* pluginName);
190 void movePathToProblem(::CORBA::ULong pathId, const char* problemName, const ::hpp::Names_t& jointNames);
191 void setInitialConfig(const ::hpp::floatSeq& dofArray);
192 floatSeq* getInitialConfig();
193 void addGoalConfig(const ::hpp::floatSeq& dofArray);
194 floatSeqSeq* getGoalConfigs();
195 void resetGoalConfigs();
196 void setGoalConstraints(const ::hpp::Names_t& constraints);
197 void resetGoalConstraints();
198 ::CORBA::Boolean applyConstraints(const ::hpp::floatSeq& input, ::hpp::floatSeq_out output, ::CORBA::Double& residualError);
199 ::CORBA::Boolean optimize(const ::hpp::floatSeq& input, ::hpp::floatSeq_out output, ::hpp::floatSeq_out residualError);
200 void computeValueAndJacobian(const ::hpp::floatSeq& config, ::hpp::floatSeq_out value, ::hpp::floatSeqSeq_out jacobian);
201 ::CORBA::Boolean generateValidConfig(::CORBA::ULong maxIter, ::hpp::floatSeq_out output, ::CORBA::Double& residualError);
202 void createOrientationConstraint(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::Quaternion_ p, const ::hpp::boolSeq& mask);
203 void createTransformationConstraint(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::Transform_ ref, const ::hpp::boolSeq& mask);
204 void createTransformationR3xSO3Constraint(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::Transform_ frame1, const ::hpp::Transform_ frame2, const ::hpp::boolSeq& mask);
205 void createTransformationConstraint2(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::Transform_ frame1, const ::hpp::Transform_ frame2, const ::hpp::boolSeq& mask);
206 void createLockedJoint(const char* lockedJointName, const char* jointName, const ::hpp::floatSeq& value);
207 void createLockedJointWithComp(const char* lockedJointName, const char* jointName, const ::hpp::floatSeq& value, const ::hpp::ComparisonTypes_t& comp);
208 void createLockedExtraDof(const char* lockedDofName, ::CORBA::ULong index, const ::hpp::floatSeq& value);
209 void createManipulability(const char* name, const char* function);
210 void createComBeetweenFeet(const char* constraintName, const char* comName, const char* jointLName, const char* jointRName, const ::hpp::floatSeq& pointL, const ::hpp::floatSeq& pointR, const char* jointRefName, const ::hpp::floatSeq& pointRef, const ::hpp::boolSeq& mask);
211 void createRelativeComConstraint(const char* constraintName, const char* comName, const char* jointLName, const ::hpp::floatSeq& point, const ::hpp::boolSeq& mask);
212 void createConvexShapeContactConstraint(const char* constraintName, const ::hpp::Names_t& floorJoints, const ::hpp::Names_t& objectJoints, const ::hpp::floatSeqSeq& pts, const ::hpp::intSeqSeq& objectTriangles, const ::hpp::intSeqSeq& floorTriangles);
213 void createPositionConstraint(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::floatSeq& point1, const ::hpp::floatSeq& point2, const ::hpp::boolSeq& mask);
214 void createConfigurationConstraint(const char* constraintName, const ::hpp::floatSeq& goal, const ::hpp::floatSeq& weights);
215 void createDistanceBetweenJointConstraint(const char* constraintName, const char* joint1Name, const char* joint2Name, ::CORBA::Double distance);
216 void createDistanceBetweenJointAndObjects(const char* constraintName, const char* joint1Name, const ::hpp::Names_t& objects, ::CORBA::Double distance);
217 void createIdentityConstraint(const char* constraintName, const ::hpp::Names_t& inJoints, const ::hpp::Names_t& outJoints);
218 void resetConstraints();
219 void resetConstraintMap();
220 void addPassiveDofs(const char* constraintName, const ::hpp::Names_t& jointNames);
221 void getConstraintDimensions(const char* constraintName, ::CORBA::ULong& inputSize, ::CORBA::ULong& inputDerivativeSize, ::CORBA::ULong& outputSize, ::CORBA::ULong& outputDerivativeSize);
222 void setConstantRightHandSide(const char* constraintName, ::CORBA::Boolean constant);
223 ::CORBA::Boolean getConstantRightHandSide(const char* constraintName);
224 floatSeq* getRightHandSide();
225 void setRightHandSide(const ::hpp::floatSeq& rhs);
226 void setRightHandSideFromConfig(const ::hpp::floatSeq& config);
227 void setRightHandSideByName(const char* constraintName, const ::hpp::floatSeq& rhs);
228 void setRightHandSideFromConfigByName(const char* constraintName, const ::hpp::floatSeq& config);
229 void addNumericalConstraints(const char* configProjName, const ::hpp::Names_t& constraintNames, const ::hpp::intSeq& priorities);
230 void setNumericalConstraintsLastPriorityOptional(::CORBA::Boolean optional);
231 void addLockedJointConstraints(const char* configProjName, const ::hpp::Names_t& lockedJointNames);
232 char* displayConstraints();
233 ::CORBA::Double getErrorThreshold();
234 void setErrorThreshold(::CORBA::Double threshold);
235 void setDefaultLineSearchType(const char* type);
236 ::CORBA::ULong getMaxIterProjection();
237 void setMaxIterProjection(::CORBA::ULong iterations);
238 ::CORBA::ULong getMaxIterPathPlanning();
239 void setMaxIterPathPlanning(::CORBA::ULong iterations);
240 void scCreateScalarMultiply(const char* outName, ::CORBA::Double scalar, const char* inName);
241 ::CORBA::Double getTimeOutPathPlanning();
242 void setTimeOutPathPlanning(::CORBA::Double timeOut);
243 void filterCollisionPairs();
244 void selectPathPlanner(const char* pathPlannerType);
245 void selectConfigurationShooter(const char* configurationShooterType);
246 void selectDistance(const char* distanceType);
247 void selectSteeringMethod(const char* steeringMethodType);
248 void addPathOptimizer(const char* pathOptimizerType);
249 void clearPathOptimizers();
250 void addConfigValidation(const char* configValidationType);
251 void clearConfigValidations();
252 void selectPathValidation(const char* pathValidationType, ::CORBA::Double tolerance);
253 void selectPathProjector(const char* pathProjectorType, ::CORBA::Double tolerance);
254 ::CORBA::Boolean prepareSolveStepByStep();
255 ::CORBA::Boolean executeOneStep();
256 void finishSolveStepByStep();
257 intSeq* solve();
258 ::CORBA::Boolean directPath(const ::hpp::floatSeq& startConfig, const ::hpp::floatSeq& endConfig, ::CORBA::Boolean validate, ::CORBA::ULong& pathId, ::CORBA::String_out report);
259 ::CORBA::Boolean reversePath(::CORBA::ULong pathId, ::CORBA::ULong& reversedPathId);
260 void addConfigToRoadmap(const ::hpp::floatSeq& config);
261 void addEdgeToRoadmap(const ::hpp::floatSeq& config1, const ::hpp::floatSeq& config2, ::CORBA::ULong pathId, ::CORBA::Boolean bothEdges);
262 void appendDirectPath(::CORBA::ULong pathId, const ::hpp::floatSeq& config, ::CORBA::Boolean validate);
263 void concatenatePath(::CORBA::ULong startId, ::CORBA::ULong endId);
264 void extractPath(::CORBA::ULong pathId, ::CORBA::Double start, ::CORBA::Double end);
265 void erasePath(::CORBA::ULong pathId);
266 ::CORBA::Boolean projectPath(::CORBA::ULong patId);
267 ::CORBA::Long numberPaths();
268 intSeq* optimizePath(::CORBA::ULong inPathId);
269 ::CORBA::Double pathLength(::CORBA::ULong inPathId);
270 floatSeq* configAtParam(::CORBA::ULong inPathId, ::CORBA::Double atDistance);
271 floatSeq* derivativeAtParam(::CORBA::ULong inPathId, ::CORBA::ULong orderId, ::CORBA::Double atDistance);
272 floatSeqSeq* getWaypoints(::CORBA::ULong pathId, ::hpp::floatSeq_out times);
273 void interruptPathPlanning();
274 floatSeqSeq* nodes();
275 ::CORBA::Long numberNodes();
276 floatSeq* node(::CORBA::ULong nodeId);
277 ::CORBA::Long connectedComponentOfEdge(::CORBA::ULong edgeId);
278 ::CORBA::Long connectedComponentOfNode(::CORBA::ULong nodeId);
279 ::CORBA::Long numberEdges();
280 void edge(::CORBA::ULong edgeId, ::hpp::floatSeq_out q1, ::hpp::floatSeq_out q2);
281 ::CORBA::Long numberConnectedComponents();
282 floatSeqSeq* nodesConnectedComponent(::CORBA::ULong connectedComponentId);
283 floatSeq* getNearestConfig(const ::hpp::floatSeq& config, ::CORBA::Long connectedComponentId, ::CORBA::Double& distance);
284 void clearRoadmap();
285 void resetRoadmap();
286 void saveRoadmap(const char* filename);
287 void loadRoadmap(const char* filename);
288 core_idl::Distance_ptr getDistance();
289 void setDistance(::hpp::core_idl::Distance_ptr distance);
290 core_idl::Path_ptr getPath(::CORBA::ULong pathId);
291 ::CORBA::ULong addPath(::hpp::core_idl::PathVector_ptr path);
292 void savePath(::hpp::core_idl::Path_ptr path, const char* filename);
293 core_idl::Path_ptr loadPath(const char* filename);
294 core_idl::SteeringMethod_ptr getSteeringMethod();
295 core_idl::PathValidation_ptr getPathValidation();
296 core_idl::PathPlanner_ptr getPathPlanner();
297 core_idl::Problem_ptr getProblem();
298 constraints_idl::Implicit_ptr getConstraint(const char* constraintName);
299 void setRobot(::hpp::pinocchio_idl::Device_ptr robot);
300 pinocchio_idl::CollisionObject_ptr getObstacle(const char* name);
301 core_idl::Problem_ptr createProblem(::hpp::pinocchio_idl::Device_ptr robot);
302 core_idl::Roadmap_ptr createRoadmap(::hpp::core_idl::Distance_ptr distance, ::hpp::pinocchio_idl::Device_ptr robot);
303 core_idl::Roadmap_ptr readRoadmap(const char* filename, ::hpp::pinocchio_idl::Device_ptr robot);
304 void writeRoadmap(const char* filename, ::hpp::core_idl::Roadmap_ptr roadmap, ::hpp::pinocchio_idl::Device_ptr robot);
305 core_idl::PathPlanner_ptr createPathPlanner(const char* type, ::hpp::core_idl::Problem_ptr problem, ::hpp::core_idl::Roadmap_ptr roadmap);
306 core_idl::PathOptimizer_ptr createPathOptimizer(const char* type, ::hpp::core_idl::Problem_ptr problem);
307 core_idl::ConfigValidation_ptr createConfigValidation(const char* type, ::hpp::pinocchio_idl::Device_ptr robot);
308 core_idl::PathValidation_ptr createPathValidation(const char* type, ::hpp::pinocchio_idl::Device_ptr robot, ::hpp::value_type parameter);
309 core_idl::PathProjector_ptr createPathProjector(const char* type, ::hpp::core_idl::Problem_ptr robot, ::hpp::value_type parameter);
310 core_idl::ConfigurationShooter_ptr createConfigurationShooter(const char* type, ::hpp::core_idl::Problem_ptr problem);
311 core_idl::Distance_ptr createDistance(const char* type, ::hpp::core_idl::Problem_ptr problem);
312 core_idl::SteeringMethod_ptr createSteeringMethod(const char* type, ::hpp::core_idl::Problem_ptr problem);
313 core_idl::Constraint_ptr createConstraintSet(::hpp::pinocchio_idl::Device_ptr robot, const char* name);
314 core_idl::Constraint_ptr createConfigProjector(::hpp::pinocchio_idl::Device_ptr robot, const char* name, ::CORBA::Double threshold, ::CORBA::ULong iterations);
315
316 // Constructors
317 inline _objref_Problem() { _PR_setobj(0); } // nil
318 _objref_Problem(omniIOR*, omniIdentity*);
319
320 protected:
321 virtual ~_objref_Problem();
322
323
324 private:
325 virtual void* _ptrToObjRef(const char*);
326
327 _objref_Problem(const _objref_Problem&);
328 _objref_Problem& operator = (const _objref_Problem&);
329 // not implemented
330
331 friend class Problem;
332 };
333
334 class _pof_Problem : public _OMNI_NS(proxyObjectFactory) {
335 public:
336 8 inline _pof_Problem() : _OMNI_NS(proxyObjectFactory)(Problem::_PD_repoId) {}
337 virtual ~_pof_Problem();
338
339 virtual omniObjRef* newObjRef(omniIOR*,omniIdentity*);
340 virtual _CORBA_Boolean is_a(const char*) const;
341 };
342
343 class _impl_Problem :
344 public virtual omniServant
345 {
346 public:
347 virtual ~_impl_Problem();
348
349 virtual void setRandomSeed(::CORBA::Long seed) = 0;
350 virtual void setMaxNumThreads(::CORBA::UShort n) = 0;
351 virtual ::CORBA::UShort getMaxNumThreads() = 0;
352 virtual Names_t* getAvailable(const char* type) = 0;
353 virtual Names_t* getSelected(const char* type) = 0;
354 virtual void setParameter(const char* name, const ::CORBA::Any& value) = 0;
355 virtual ::CORBA::Any* getParameter(const char* name) = 0;
356 virtual char* getParameterDoc(const char* name) = 0;
357 virtual ::CORBA::Boolean selectProblem(const char* name) = 0;
358 virtual void resetProblem() = 0;
359 virtual ::CORBA::Boolean loadPlugin(const char* pluginName) = 0;
360 virtual void movePathToProblem(::CORBA::ULong pathId, const char* problemName, const ::hpp::Names_t& jointNames) = 0;
361 virtual void setInitialConfig(const ::hpp::floatSeq& dofArray) = 0;
362 virtual floatSeq* getInitialConfig() = 0;
363 virtual void addGoalConfig(const ::hpp::floatSeq& dofArray) = 0;
364 virtual floatSeqSeq* getGoalConfigs() = 0;
365 virtual void resetGoalConfigs() = 0;
366 virtual void setGoalConstraints(const ::hpp::Names_t& constraints) = 0;
367 virtual void resetGoalConstraints() = 0;
368 virtual ::CORBA::Boolean applyConstraints(const ::hpp::floatSeq& input, ::hpp::floatSeq_out output, ::CORBA::Double& residualError) = 0;
369 virtual ::CORBA::Boolean optimize(const ::hpp::floatSeq& input, ::hpp::floatSeq_out output, ::hpp::floatSeq_out residualError) = 0;
370 virtual void computeValueAndJacobian(const ::hpp::floatSeq& config, ::hpp::floatSeq_out value, ::hpp::floatSeqSeq_out jacobian) = 0;
371 virtual ::CORBA::Boolean generateValidConfig(::CORBA::ULong maxIter, ::hpp::floatSeq_out output, ::CORBA::Double& residualError) = 0;
372 virtual void createOrientationConstraint(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::Quaternion_ p, const ::hpp::boolSeq& mask) = 0;
373 virtual void createTransformationConstraint(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::Transform_ ref, const ::hpp::boolSeq& mask) = 0;
374 virtual void createTransformationR3xSO3Constraint(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::Transform_ frame1, const ::hpp::Transform_ frame2, const ::hpp::boolSeq& mask) = 0;
375 virtual void createTransformationConstraint2(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::Transform_ frame1, const ::hpp::Transform_ frame2, const ::hpp::boolSeq& mask) = 0;
376 virtual void createLockedJoint(const char* lockedJointName, const char* jointName, const ::hpp::floatSeq& value) = 0;
377 virtual void createLockedJointWithComp(const char* lockedJointName, const char* jointName, const ::hpp::floatSeq& value, const ::hpp::ComparisonTypes_t& comp) = 0;
378 virtual void createLockedExtraDof(const char* lockedDofName, ::CORBA::ULong index, const ::hpp::floatSeq& value) = 0;
379 virtual void createManipulability(const char* name, const char* function) = 0;
380 virtual void createComBeetweenFeet(const char* constraintName, const char* comName, const char* jointLName, const char* jointRName, const ::hpp::floatSeq& pointL, const ::hpp::floatSeq& pointR, const char* jointRefName, const ::hpp::floatSeq& pointRef, const ::hpp::boolSeq& mask) = 0;
381 virtual void createRelativeComConstraint(const char* constraintName, const char* comName, const char* jointLName, const ::hpp::floatSeq& point, const ::hpp::boolSeq& mask) = 0;
382 virtual void createConvexShapeContactConstraint(const char* constraintName, const ::hpp::Names_t& floorJoints, const ::hpp::Names_t& objectJoints, const ::hpp::floatSeqSeq& pts, const ::hpp::intSeqSeq& objectTriangles, const ::hpp::intSeqSeq& floorTriangles) = 0;
383 virtual void createPositionConstraint(const char* constraintName, const char* joint1Name, const char* joint2Name, const ::hpp::floatSeq& point1, const ::hpp::floatSeq& point2, const ::hpp::boolSeq& mask) = 0;
384 virtual void createConfigurationConstraint(const char* constraintName, const ::hpp::floatSeq& goal, const ::hpp::floatSeq& weights) = 0;
385 virtual void createDistanceBetweenJointConstraint(const char* constraintName, const char* joint1Name, const char* joint2Name, ::CORBA::Double distance) = 0;
386 virtual void createDistanceBetweenJointAndObjects(const char* constraintName, const char* joint1Name, const ::hpp::Names_t& objects, ::CORBA::Double distance) = 0;
387 virtual void createIdentityConstraint(const char* constraintName, const ::hpp::Names_t& inJoints, const ::hpp::Names_t& outJoints) = 0;
388 virtual void resetConstraints() = 0;
389 virtual void resetConstraintMap() = 0;
390 virtual void addPassiveDofs(const char* constraintName, const ::hpp::Names_t& jointNames) = 0;
391 virtual void getConstraintDimensions(const char* constraintName, ::CORBA::ULong& inputSize, ::CORBA::ULong& inputDerivativeSize, ::CORBA::ULong& outputSize, ::CORBA::ULong& outputDerivativeSize) = 0;
392 virtual void setConstantRightHandSide(const char* constraintName, ::CORBA::Boolean constant) = 0;
393 virtual ::CORBA::Boolean getConstantRightHandSide(const char* constraintName) = 0;
394 virtual floatSeq* getRightHandSide() = 0;
395 virtual void setRightHandSide(const ::hpp::floatSeq& rhs) = 0;
396 virtual void setRightHandSideFromConfig(const ::hpp::floatSeq& config) = 0;
397 virtual void setRightHandSideByName(const char* constraintName, const ::hpp::floatSeq& rhs) = 0;
398 virtual void setRightHandSideFromConfigByName(const char* constraintName, const ::hpp::floatSeq& config) = 0;
399 virtual void addNumericalConstraints(const char* configProjName, const ::hpp::Names_t& constraintNames, const ::hpp::intSeq& priorities) = 0;
400 virtual void setNumericalConstraintsLastPriorityOptional(::CORBA::Boolean optional) = 0;
401 virtual void addLockedJointConstraints(const char* configProjName, const ::hpp::Names_t& lockedJointNames) = 0;
402 virtual char* displayConstraints() = 0;
403 virtual ::CORBA::Double getErrorThreshold() = 0;
404 virtual void setErrorThreshold(::CORBA::Double threshold) = 0;
405 virtual void setDefaultLineSearchType(const char* type) = 0;
406 virtual ::CORBA::ULong getMaxIterProjection() = 0;
407 virtual void setMaxIterProjection(::CORBA::ULong iterations) = 0;
408 virtual ::CORBA::ULong getMaxIterPathPlanning() = 0;
409 virtual void setMaxIterPathPlanning(::CORBA::ULong iterations) = 0;
410 virtual void scCreateScalarMultiply(const char* outName, ::CORBA::Double scalar, const char* inName) = 0;
411 virtual ::CORBA::Double getTimeOutPathPlanning() = 0;
412 virtual void setTimeOutPathPlanning(::CORBA::Double timeOut) = 0;
413 virtual void filterCollisionPairs() = 0;
414 virtual void selectPathPlanner(const char* pathPlannerType) = 0;
415 virtual void selectConfigurationShooter(const char* configurationShooterType) = 0;
416 virtual void selectDistance(const char* distanceType) = 0;
417 virtual void selectSteeringMethod(const char* steeringMethodType) = 0;
418 virtual void addPathOptimizer(const char* pathOptimizerType) = 0;
419 virtual void clearPathOptimizers() = 0;
420 virtual void addConfigValidation(const char* configValidationType) = 0;
421 virtual void clearConfigValidations() = 0;
422 virtual void selectPathValidation(const char* pathValidationType, ::CORBA::Double tolerance) = 0;
423 virtual void selectPathProjector(const char* pathProjectorType, ::CORBA::Double tolerance) = 0;
424 virtual ::CORBA::Boolean prepareSolveStepByStep() = 0;
425 virtual ::CORBA::Boolean executeOneStep() = 0;
426 virtual void finishSolveStepByStep() = 0;
427 virtual intSeq* solve() = 0;
428 virtual ::CORBA::Boolean directPath(const ::hpp::floatSeq& startConfig, const ::hpp::floatSeq& endConfig, ::CORBA::Boolean validate, ::CORBA::ULong& pathId, ::CORBA::String_out report) = 0;
429 virtual ::CORBA::Boolean reversePath(::CORBA::ULong pathId, ::CORBA::ULong& reversedPathId) = 0;
430 virtual void addConfigToRoadmap(const ::hpp::floatSeq& config) = 0;
431 virtual void addEdgeToRoadmap(const ::hpp::floatSeq& config1, const ::hpp::floatSeq& config2, ::CORBA::ULong pathId, ::CORBA::Boolean bothEdges) = 0;
432 virtual void appendDirectPath(::CORBA::ULong pathId, const ::hpp::floatSeq& config, ::CORBA::Boolean validate) = 0;
433 virtual void concatenatePath(::CORBA::ULong startId, ::CORBA::ULong endId) = 0;
434 virtual void extractPath(::CORBA::ULong pathId, ::CORBA::Double start, ::CORBA::Double end) = 0;
435 virtual void erasePath(::CORBA::ULong pathId) = 0;
436 virtual ::CORBA::Boolean projectPath(::CORBA::ULong patId) = 0;
437 virtual ::CORBA::Long numberPaths() = 0;
438 virtual intSeq* optimizePath(::CORBA::ULong inPathId) = 0;
439 virtual ::CORBA::Double pathLength(::CORBA::ULong inPathId) = 0;
440 virtual floatSeq* configAtParam(::CORBA::ULong inPathId, ::CORBA::Double atDistance) = 0;
441 virtual floatSeq* derivativeAtParam(::CORBA::ULong inPathId, ::CORBA::ULong orderId, ::CORBA::Double atDistance) = 0;
442 virtual floatSeqSeq* getWaypoints(::CORBA::ULong pathId, ::hpp::floatSeq_out times) = 0;
443 virtual void interruptPathPlanning() = 0;
444 virtual floatSeqSeq* nodes() = 0;
445 virtual ::CORBA::Long numberNodes() = 0;
446 virtual floatSeq* node(::CORBA::ULong nodeId) = 0;
447 virtual ::CORBA::Long connectedComponentOfEdge(::CORBA::ULong edgeId) = 0;
448 virtual ::CORBA::Long connectedComponentOfNode(::CORBA::ULong nodeId) = 0;
449 virtual ::CORBA::Long numberEdges() = 0;
450 virtual void edge(::CORBA::ULong edgeId, ::hpp::floatSeq_out q1, ::hpp::floatSeq_out q2) = 0;
451 virtual ::CORBA::Long numberConnectedComponents() = 0;
452 virtual floatSeqSeq* nodesConnectedComponent(::CORBA::ULong connectedComponentId) = 0;
453 virtual floatSeq* getNearestConfig(const ::hpp::floatSeq& config, ::CORBA::Long connectedComponentId, ::CORBA::Double& distance) = 0;
454 virtual void clearRoadmap() = 0;
455 virtual void resetRoadmap() = 0;
456 virtual void saveRoadmap(const char* filename) = 0;
457 virtual void loadRoadmap(const char* filename) = 0;
458 virtual core_idl::Distance_ptr getDistance() = 0;
459 virtual void setDistance(::hpp::core_idl::Distance_ptr distance) = 0;
460 virtual core_idl::Path_ptr getPath(::CORBA::ULong pathId) = 0;
461 virtual ::CORBA::ULong addPath(::hpp::core_idl::PathVector_ptr path) = 0;
462 virtual void savePath(::hpp::core_idl::Path_ptr path, const char* filename) = 0;
463 virtual core_idl::Path_ptr loadPath(const char* filename) = 0;
464 virtual core_idl::SteeringMethod_ptr getSteeringMethod() = 0;
465 virtual core_idl::PathValidation_ptr getPathValidation() = 0;
466 virtual core_idl::PathPlanner_ptr getPathPlanner() = 0;
467 virtual core_idl::Problem_ptr getProblem() = 0;
468 virtual constraints_idl::Implicit_ptr getConstraint(const char* constraintName) = 0;
469 virtual void setRobot(::hpp::pinocchio_idl::Device_ptr robot) = 0;
470 virtual pinocchio_idl::CollisionObject_ptr getObstacle(const char* name) = 0;
471 virtual core_idl::Problem_ptr createProblem(::hpp::pinocchio_idl::Device_ptr robot) = 0;
472 virtual core_idl::Roadmap_ptr createRoadmap(::hpp::core_idl::Distance_ptr distance, ::hpp::pinocchio_idl::Device_ptr robot) = 0;
473 virtual core_idl::Roadmap_ptr readRoadmap(const char* filename, ::hpp::pinocchio_idl::Device_ptr robot) = 0;
474 virtual void writeRoadmap(const char* filename, ::hpp::core_idl::Roadmap_ptr roadmap, ::hpp::pinocchio_idl::Device_ptr robot) = 0;
475 virtual core_idl::PathPlanner_ptr createPathPlanner(const char* type, ::hpp::core_idl::Problem_ptr problem, ::hpp::core_idl::Roadmap_ptr roadmap) = 0;
476 virtual core_idl::PathOptimizer_ptr createPathOptimizer(const char* type, ::hpp::core_idl::Problem_ptr problem) = 0;
477 virtual core_idl::ConfigValidation_ptr createConfigValidation(const char* type, ::hpp::pinocchio_idl::Device_ptr robot) = 0;
478 virtual core_idl::PathValidation_ptr createPathValidation(const char* type, ::hpp::pinocchio_idl::Device_ptr robot, ::hpp::value_type parameter) = 0;
479 virtual core_idl::PathProjector_ptr createPathProjector(const char* type, ::hpp::core_idl::Problem_ptr robot, ::hpp::value_type parameter) = 0;
480 virtual core_idl::ConfigurationShooter_ptr createConfigurationShooter(const char* type, ::hpp::core_idl::Problem_ptr problem) = 0;
481 virtual core_idl::Distance_ptr createDistance(const char* type, ::hpp::core_idl::Problem_ptr problem) = 0;
482 virtual core_idl::SteeringMethod_ptr createSteeringMethod(const char* type, ::hpp::core_idl::Problem_ptr problem) = 0;
483 virtual core_idl::Constraint_ptr createConstraintSet(::hpp::pinocchio_idl::Device_ptr robot, const char* name) = 0;
484 virtual core_idl::Constraint_ptr createConfigProjector(::hpp::pinocchio_idl::Device_ptr robot, const char* name, ::CORBA::Double threshold, ::CORBA::ULong iterations) = 0;
485
486 public: // Really protected, workaround for xlC
487 virtual _CORBA_Boolean _dispatch(omniCallHandle&);
488
489 private:
490 virtual void* _ptrToInterface(const char*);
491 virtual const char* _mostDerivedRepoId();
492
493 };
494
495
496 _CORBA_MODULE_END
497
498 _CORBA_MODULE_END
499
500
501
502 _CORBA_MODULE POA_hpp
503 _CORBA_MODULE_BEG
504
505 _CORBA_MODULE corbaserver
506 _CORBA_MODULE_BEG
507
508 class Problem :
509 public virtual hpp::corbaserver::_impl_Problem,
510 public virtual ::PortableServer::ServantBase
511 {
512 public:
513 virtual ~Problem();
514
515 17 inline ::hpp::corbaserver::Problem_ptr _this() {
516 17 return (::hpp::corbaserver::Problem_ptr) _do_this(::hpp::corbaserver::Problem::_PD_repoId);
517 }
518 };
519
520 _CORBA_MODULE_END
521
522 _CORBA_MODULE_END
523
524
525
526 _CORBA_MODULE OBV_hpp
527 _CORBA_MODULE_BEG
528
529 _CORBA_MODULE corbaserver
530 _CORBA_MODULE_BEG
531
532 _CORBA_MODULE_END
533
534 _CORBA_MODULE_END
535
536
537
538
539
540 #undef _core_attr
541 #undef _dyn_attr
542
543
544
545 inline void
546 hpp::corbaserver::Problem::_marshalObjRef(::hpp::corbaserver::Problem_ptr obj, cdrStream& s) {
547 omniObjRef::_marshal(obj->_PR_getobj(),s);
548 }
549
550
551
552 #ifdef USE_stub_in_nt_dll_NOT_DEFINED_problem
553 # undef USE_stub_in_nt_dll
554 # undef USE_stub_in_nt_dll_NOT_DEFINED_problem
555 #endif
556 #ifdef USE_core_stub_in_nt_dll_NOT_DEFINED_problem
557 # undef USE_core_stub_in_nt_dll
558 # undef USE_core_stub_in_nt_dll_NOT_DEFINED_problem
559 #endif
560 #ifdef USE_dyn_stub_in_nt_dll_NOT_DEFINED_problem
561 # undef USE_dyn_stub_in_nt_dll
562 # undef USE_dyn_stub_in_nt_dll_NOT_DEFINED_problem
563 #endif
564
565 #endif // __problem_hh__
566
567