1#ifndef hpp_pinocchio_idl__robots_hxx__
2#define hpp_pinocchio_idl__robots_hxx__
23namespace pinocchio_impl {
24template <
typename _Base,
typename _Storage>
31template <
typename _Base,
typename _Storage>
39template <
typename _Base,
typename _Storage>
44 _ServantBase::deleteThis();
45 }
catch (
const std::exception& e) {
46 throw ::hpp::Error (e.what());
50template <
typename _Base,
typename _Storage>
55 return _ServantBase::deleteIfExpired();
56 }
catch (
const std::exception& e) {
57 throw ::hpp::Error (e.what());
61template <
typename _Base,
typename _Storage>
66 _ServantBase::persistantStorage(persistant);
67 }
catch (
const std::exception& e) {
68 throw ::hpp::Error (e.what());
72template <
typename _Base,
typename _Storage>
81 }
catch (
const std::exception& e) {
82 throw ::hpp::Error (e.what());
86template <
typename _Base,
typename _Storage>
95 }
catch (
const std::exception& e) {
96 throw ::hpp::Error (e.what());
100template <
typename _Base,
typename _Storage>
109 }
catch (
const std::exception& e) {
110 throw ::hpp::Error (e.what());
114template <
typename _Base,
typename _Storage>
123 }
catch (
const std::exception& e) {
124 throw ::hpp::Error (e.what());
138namespace pinocchio_impl {
139template <
typename _Base,
typename _Storage>
142 :
hpp::corbaServer::ServantBase<
hpp::pinocchio::
Device, _Storage> (server, s)
146template <
typename _Base,
typename _Storage>
154template <
typename _Base,
typename _Storage>
159 _ServantBase::deleteThis();
160 }
catch (
const std::exception& e) {
161 throw ::hpp::Error (e.what());
165template <
typename _Base,
typename _Storage>
170 return _ServantBase::deleteIfExpired();
171 }
catch (
const std::exception& e) {
172 throw ::hpp::Error (e.what());
176template <
typename _Base,
typename _Storage>
181 _ServantBase::persistantStorage(persistant);
182 }
catch (
const std::exception& e) {
183 throw ::hpp::Error (e.what());
187template <
typename _Base,
typename _Storage>
196 }
catch (
const std::exception& e) {
197 throw ::hpp::Error (e.what());
201template <
typename _Base,
typename _Storage>
210 }
catch (
const std::exception& e) {
211 throw ::hpp::Error (e.what());
215template <
typename _Base,
typename _Storage>
224 }
catch (
const std::exception& e) {
225 throw ::hpp::Error (e.what());
229template <
typename _Base,
typename _Storage>
238 }
catch (
const std::exception& e) {
239 throw ::hpp::Error (e.what());
243template <
typename _Base,
typename _Storage>
248 hpp::pinocchio::DevicePtr_t d = getT();
249 hpp::pinocchio::Configuration_t res (d->configSize());
250 hpp::pinocchio::integrate<false, hpp::pinocchio::DefaultLieGroupMap> (d,
256 }
catch (
const std::exception& e) {
257 throw ::hpp::Error (e.what());
261template <
typename _Base,
typename _Storage>
266 hpp::pinocchio::DevicePtr_t d = getT();
267 hpp::pinocchio::Configuration_t res (d->numberDof());
268 hpp::pinocchio::difference<hpp::pinocchio::DefaultLieGroupMap> (d,
274 }
catch (
const std::exception& e) {
275 throw ::hpp::Error (e.what());
279template <
typename _Base,
typename _Storage>
284 hpp::pinocchio::DevicePtr_t d = getT();
285 hpp::pinocchio::Configuration_t res (d->configSize());
286 hpp::pinocchio::interpolate<hpp::pinocchio::DefaultLieGroupMap> (d,
293 }
catch (
const std::exception& e) {
294 throw ::hpp::Error (e.what());
298template <
typename _Base,
typename _Storage>
303 hpp::pinocchio::DevicePtr_t d = getT();
305 hpp::pinocchio::ArrayXb sat (d->numberDof());
306 hpp::pinocchio::saturate (d, q, sat);
310 }
catch (
const std::exception& e) {
311 throw ::hpp::Error (e.what());
315template <
typename _Base,
typename _Storage>
320 hpp::pinocchio::DevicePtr_t d = getT();
321 hpp::pinocchio::replaceGeometryByConvexHull(d->geomModel(),
325 }
catch (
const std::exception& e) {
326 throw ::hpp::Error (e.what());
330template <
typename _Base,
typename _Storage>
339 }
catch (
const std::exception& e) {
340 throw ::hpp::Error (e.what());
344template <
typename _Base,
typename _Storage>
350 ::CORBA::Boolean __return__ (getT()->currentConfiguration (_configuration));
353 }
catch (
const std::exception& e) {
354 throw ::hpp::Error (e.what());
358template <
typename _Base,
typename _Storage>
367 }
catch (
const std::exception& e) {
368 throw ::hpp::Error (e.what());
372template <
typename _Base,
typename _Storage>
378 ::CORBA::Boolean __return__ (getT()->currentVelocity (_velocity));
381 }
catch (
const std::exception& e) {
382 throw ::hpp::Error (e.what());
386template <
typename _Base,
typename _Storage>
395 }
catch (
const std::exception& e) {
396 throw ::hpp::Error (e.what());
400template <
typename _Base,
typename _Storage>
406 ::CORBA::Boolean __return__ (getT()->currentAcceleration (_acceleration));
409 }
catch (
const std::exception& e) {
410 throw ::hpp::Error (e.what());
414template <
typename _Base,
typename _Storage>
420 ::CORBA::Short __return__ (getT()->computationFlag ());
423 }
catch (
const std::exception& e) {
424 throw ::hpp::Error (e.what());
428template <
typename _Base,
typename _Storage>
433 getT()->controlComputation(hpp::pinocchio::Computation_t(flag));
435 }
catch (
const std::exception& e) {
436 throw ::hpp::Error (e.what());
440template <
typename _Base,
typename _Storage>
446 (getT()->computeForwardKinematics (computationFlag));
449 }
catch (
const std::exception& e) {
450 throw ::hpp::Error (e.what());
454template <
typename _Base,
typename _Storage>
460 (getT()->computeFramesForwardKinematics ());
463 }
catch (
const std::exception& e) {
464 throw ::hpp::Error (e.what());
468template <
typename _Base,
typename _Storage>
474 (getT()->updateGeometryPlacements ());
477 }
catch (
const std::exception& e) {
478 throw ::hpp::Error (e.what());
482template <
typename _Base,
typename _Storage>
487 return (
frame_index) getT()->getFrameByName(name).index();
489 }
catch (
const std::exception& e) {
490 throw ::hpp::Error (e.what());
494template <
typename _Base,
typename _Storage>
499 if (getT()->model().nframes <= (
int)frame_id)
throw hpp::Error(
"Index out of range");
500 hpp::pinocchio::Frame frame(getT(), frame_id);
503 }
catch (
const std::exception& e) {
504 throw ::hpp::Error (e.what());
508template <
typename _Base,
typename _Storage>
513 if (getT()->model().nframes <= (
int)frame_id)
throw hpp::Error(
"Index out of range");
514 if (!(getT()->computationFlag() & hpp::pinocchio::JACOBIAN))
515 throw hpp::Error(
"Invalid computation flags");
516 hpp::pinocchio::Frame frame(getT(), frame_id);
519 }
catch (
const std::exception& e) {
520 throw ::hpp::Error (e.what());
524template <
typename _Base,
typename _Storage>
531 (getT()->removeJoints (_joints, _refConfig));
534 }
catch (
const std::exception& e) {
535 throw ::hpp::Error (e.what());
549namespace pinocchio_impl {
550template <
typename _Base,
typename _Storage>
557template <
typename _Base,
typename _Storage>
565template <
typename _Base,
typename _Storage>
570 _ServantBase::deleteThis();
571 }
catch (
const std::exception& e) {
572 throw ::hpp::Error (e.what());
576template <
typename _Base,
typename _Storage>
581 return _ServantBase::deleteIfExpired();
582 }
catch (
const std::exception& e) {
583 throw ::hpp::Error (e.what());
587template <
typename _Base,
typename _Storage>
592 _ServantBase::persistantStorage(persistant);
593 }
catch (
const std::exception& e) {
594 throw ::hpp::Error (e.what());
bool persistantStorage() const
See persistantStorage(bool)
Definition servant-base.hh:166
Implementation of Hpp module Corba server.
Definition server.hh:78
Definition robots-fwd.hh:30
hpp::floatSeq * com()
Definition robots.hh:87
CenterOfMassComputationServant(::hpp::corbaServer::Server *server, const _Storage &s)
Definition robots.hh:25
hpp::floatSeqSeq * jacobian()
Definition robots.hh:115
void deleteThis()
Definition robots.hh:40
void compute()
Definition robots.hh:73
hpp::value_type mass()
Definition robots.hh:101
::CORBA::Boolean deleteIfExpired()
Definition robots.hh:51
virtual ~CenterOfMassComputationServant()
Definition robots.hh:32
Definition robots-fwd.hh:204
CollisionObjectServant(::hpp::corbaServer::Server *server, const _Storage &s)
Definition robots.hh:551
virtual ~CollisionObjectServant()
Definition robots.hh:558
::CORBA::Boolean deleteIfExpired()
Definition robots.hh:577
void deleteThis()
Definition robots.hh:566
Definition robots-fwd.hh:87
void difference(const hpp::floatSeq &q1, const hpp::floatSeq &q2, hpp::floatSeq_out result)
Definition robots.hh:262
void deleteThis()
Definition robots.hh:155
char * name()
Definition robots.hh:188
void interpolate(const hpp::floatSeq &q1, const hpp::floatSeq &q2, ::CORBA::Float u, hpp::floatSeq_out result)
Definition robots.hh:280
hpp::floatSeq * getCurrentVelocity()
Definition robots.hh:359
void computeFramesForwardKinematics()
Definition robots.hh:455
hpp::frame_index getFrameByName(const char *name)
Definition robots.hh:483
void saturate(const hpp::floatSeq &qin, hpp::floatSeq_out qout, hpp::boolSeq_out saturation)
Definition robots.hh:299
hpp::size_type numberDof()
Definition robots.hh:230
::CORBA::Boolean deleteIfExpired()
Definition robots.hh:166
hpp::size_type configSize()
Definition robots.hh:216
::CORBA::Boolean setCurrentConfiguration(const hpp::floatSeq &configuration)
Definition robots.hh:345
void integrate(const hpp::floatSeq &config_in, const hpp::floatSeq &velocity, hpp::floatSeq_out result)
Definition robots.hh:244
void replaceGeometryByConvexHull(const hpp::Names_t &geometryNames)
Definition robots.hh:316
virtual ~DeviceServant()
Definition robots.hh:147
::CORBA::Boolean setCurrentAcceleration(const hpp::floatSeq &acceleration)
Definition robots.hh:401
void computeForwardKinematics(::CORBA::Short computationFlag)
Definition robots.hh:441
hpp::Transform__slice * getFramePosition(hpp::frame_index frame_id)
Definition robots.hh:495
DeviceServant(::hpp::corbaServer::Server *server, const _Storage &s)
Definition robots.hh:140
hpp::floatSeq * getCurrentConfiguration()
Definition robots.hh:331
void controlComputation(::CORBA::Short flag)
Definition robots.hh:429
void updateGeometryPlacements()
Definition robots.hh:469
::CORBA::Boolean setCurrentVelocity(const hpp::floatSeq &velocity)
Definition robots.hh:373
::CORBA::Short computationFlag()
Definition robots.hh:415
hpp::floatSeq * neutralConfiguration()
Definition robots.hh:202
void removeJoints(const hpp::Names_t &joints, const hpp::floatSeq &refConfig)
Definition robots.hh:525
hpp::floatSeqSeq * getFrameJacobian(hpp::frame_index frame_id)
Definition robots.hh:509
hpp::floatSeq * getCurrentAcceleration()
Definition robots.hh:387
Corba exception travelling through the Corba channel.
Definition common.idl:27
ReturnType::Object_var makeServantDownCast(Server *server, const typename ServantBaseType::Storage &t)
Definition servant-base.hh:407
boolSeq * toBoolSeq(InputIt begin, InputIt end)
Definition conversions.hh:132
void toHppTransform(const Transform3s &in, Transform_ out)
floatSeq * vectorToFloatSeq(core::vectorIn_t input)
OutputType toStrings(const Names_t &names)
Definition conversions.hh:147
vector_t floatSeqToVector(const floatSeq &dofArray, const size_type expectedSize=-1)
floatSeqSeq * matrixToFloatSeqSeq(core::matrixIn_t input)
Returns a sequence of the rows of the input matrix.
char * c_str(const std::string &in)
Definition conversions.hh:87
Implement CORBA interface `‘Obstacle’'.
Definition client.hh:46
long long size_type
Definition common.idl:19
sequence< double > floatSeq
Robot configuration is defined by a sequence of dof value.
Definition common.idl:34
sequence< floatSeq > floatSeqSeq
Definition common.idl:35
sequence< string > Names_t
Sequence of names.
Definition common.idl:23
unsigned long frame_index
Definition common.idl:20
double value_type
Definition common.idl:18