1 #ifndef hpp_pinocchio_idl__robots_hxx__ 2 #define hpp_pinocchio_idl__robots_hxx__ 23 namespace pinocchio_impl {
24 template <
typename _Base,
typename _Storage>
31 template <
typename _Base,
typename _Storage>
39 template <
typename _Base,
typename _Storage>
44 _ServantBase::deleteThis();
45 }
catch (
const std::exception& e) {
46 throw ::hpp::Error (e.what());
50 template <
typename _Base,
typename _Storage>
59 }
catch (
const std::exception& e) {
60 throw ::hpp::Error (e.what());
64 template <
typename _Base,
typename _Storage>
73 }
catch (
const std::exception& e) {
74 throw ::hpp::Error (e.what());
78 template <
typename _Base,
typename _Storage>
87 }
catch (
const std::exception& e) {
88 throw ::hpp::Error (e.what());
92 template <
typename _Base,
typename _Storage>
101 }
catch (
const std::exception& e) {
102 throw ::hpp::Error (e.what());
116 namespace pinocchio_impl {
117 template <
typename _Base,
typename _Storage>
120 :
hpp::corbaServer::ServantBase<
hpp::pinocchio::
Device, _Storage> (server, s)
124 template <
typename _Base,
typename _Storage>
132 template <
typename _Base,
typename _Storage>
137 _ServantBase::deleteThis();
138 }
catch (
const std::exception& e) {
139 throw ::hpp::Error (e.what());
143 template <
typename _Base,
typename _Storage>
152 }
catch (
const std::exception& e) {
153 throw ::hpp::Error (e.what());
157 template <
typename _Base,
typename _Storage>
166 }
catch (
const std::exception& e) {
167 throw ::hpp::Error (e.what());
171 template <
typename _Base,
typename _Storage>
178 hpp::pinocchio::integrate<false, hpp::pinocchio::DefaultLieGroupMap> (d,
184 }
catch (
const std::exception& e) {
185 throw ::hpp::Error (e.what());
189 template <
typename _Base,
typename _Storage>
196 hpp::pinocchio::difference<hpp::pinocchio::DefaultLieGroupMap> (d,
202 }
catch (
const std::exception& e) {
203 throw ::hpp::Error (e.what());
207 template <
typename _Base,
typename _Storage>
214 hpp::pinocchio::interpolate<hpp::pinocchio::DefaultLieGroupMap> (d,
221 }
catch (
const std::exception& e) {
222 throw ::hpp::Error (e.what());
226 template <
typename _Base,
typename _Storage>
233 hpp::pinocchio::ArrayXb sat (d->numberDof());
234 hpp::pinocchio::saturate (d, q, sat);
238 }
catch (
const std::exception& e) {
239 throw ::hpp::Error (e.what());
243 template <
typename _Base,
typename _Storage>
249 hpp::pinocchio::replaceGeometryByConvexHull(d->geomModel(),
250 ::hpp::corbaServer::toStrings<std::vector<std::string> >(geometryNames));
253 }
catch (
const std::exception& e) {
254 throw ::hpp::Error (e.what());
258 template <
typename _Base,
typename _Storage>
267 }
catch (
const std::exception& e) {
268 throw ::hpp::Error (e.what());
272 template <
typename _Base,
typename _Storage>
278 ::CORBA::Boolean __return__ (getT()->currentConfiguration (_configuration));
281 }
catch (
const std::exception& e) {
282 throw ::hpp::Error (e.what());
286 template <
typename _Base,
typename _Storage>
292 (getT()->computeForwardKinematics ());
295 }
catch (
const std::exception& e) {
296 throw ::hpp::Error (e.what());
300 template <
typename _Base,
typename _Storage>
306 (getT()->computeFramesForwardKinematics ());
309 }
catch (
const std::exception& e) {
310 throw ::hpp::Error (e.what());
314 template <
typename _Base,
typename _Storage>
320 (getT()->updateGeometryPlacements ());
323 }
catch (
const std::exception& e) {
324 throw ::hpp::Error (e.what());
328 template <
typename _Base,
typename _Storage>
333 return (
frame_index) getT()->getFrameByName(name).index();
335 }
catch (
const std::exception& e) {
336 throw ::hpp::Error (e.what());
340 template <
typename _Base,
typename _Storage>
345 if (getT()->model().nframes <= (
int)frame_id)
throw hpp::Error(
"Index out of range");
349 }
catch (
const std::exception& e) {
350 throw ::hpp::Error (e.what());
354 template <
typename _Base,
typename _Storage>
359 if (getT()->model().nframes <= (
int)frame_id)
throw hpp::Error(
"Index out of range");
360 if (!(getT()->computationFlag() & hpp::pinocchio::JACOBIAN))
361 throw hpp::Error(
"Invalid computation flags");
365 }
catch (
const std::exception& e) {
366 throw ::hpp::Error (e.what());
370 template <
typename _Base,
typename _Storage>
375 typedef std::vector<std::string> strings_t;strings_t _joints = hpp::corbaServer::toStrings<strings_t> (joints);
377 (getT()->removeJoints (_joints, _refConfig));
380 }
catch (
const std::exception& e) {
381 throw ::hpp::Error (e.what());
395 namespace pinocchio_impl {
396 template <
typename _Base,
typename _Storage>
403 template <
typename _Base,
typename _Storage>
411 template <
typename _Base,
typename _Storage>
416 _ServantBase::deleteThis();
417 }
catch (
const std::exception& e) {
418 throw ::hpp::Error (e.what());
431 #endif // hpp_pinocchio_idl__robots_hxx__ pinocchio::DevicePtr_t DevicePtr_t
Definition: fwd.hh:74
virtual ~CenterOfMassComputationServant()
Definition: robots.hh:32
hpp::value_type mass()
Definition: robots.hh:79
boolSeq * toBoolSeq(InputIt begin, InputIt end)
Definition: conversions.hh:141
Definition: robots-fwd.hh:79
Implement CORBA interface `‘Obstacle’'.
Definition: client.hh:46
::CORBA::Boolean setCurrentConfiguration(const hpp::floatSeq &configuration)
Definition: robots.hh:273
hpp::floatSeqSeq * jacobian()
Definition: robots.hh:93
double value_type
Definition: common.idl:18
hpp::floatSeq * com()
Definition: robots.hh:65
void computeFramesForwardKinematics()
Definition: robots.hh:301
sequence< floatSeq > floatSeqSeq
Definition: common.idl:35
void deleteThis()
Definition: robots.hh:412
virtual ~DeviceServant()
Definition: robots.hh:125
void saturate(const hpp::floatSeq &qin, hpp::floatSeq_out qout, hpp::boolSeq_out saturation)
Definition: robots.hh:227
void integrate(const hpp::floatSeq &config_in, const hpp::floatSeq &velocity, hpp::floatSeq_out result)
Definition: robots.hh:172
void computeForwardKinematics()
Definition: robots.hh:287
void updateGeometryPlacements()
Definition: robots.hh:315
void deleteThis()
Definition: robots.hh:133
void replaceGeometryByConvexHull(const hpp::Names_t &geometryNames)
Definition: robots.hh:244
vector_t floatSeqToVector(const floatSeq &dofArray, const size_type expectedSize=-1)
void compute()
Definition: robots.hh:51
Corba exception travelling through the Corba channel.
Definition: common.idl:26
char * c_str(const std::string &in)
Definition: conversions.hh:96
pinocchio::Frame Frame
Definition: fwd.hh:81
sequence< string > Names_t
Sequence of names.
Definition: common.idl:23
unsigned long frame_index
Definition: common.idl:20
char * name()
Definition: robots.hh:144
pinocchio::vector_t vector_t
Definition: fwd.hh:109
CenterOfMassComputationServant(::hpp::corbaServer::Server *server, const _Storage &s)
Definition: robots.hh:25
hpp::frame_index getFrameByName(const char *name)
Definition: robots.hh:329
DeviceServant(::hpp::corbaServer::Server *server, const _Storage &s)
Definition: robots.hh:118
hpp::floatSeq * getCurrentConfiguration()
Definition: robots.hh:259
pinocchio::Configuration_t Configuration_t
Definition: fwd.hh:66
void toHppTransform(const Transform3f &in, Transform_ out)
hpp::floatSeqSeq * getFrameJacobian(hpp::frame_index frame_id)
Definition: robots.hh:355
Definition: robots-fwd.hh:166
Implementation of Hpp module Corba server.
Definition: server.hh:77
void removeJoints(const hpp::Names_t &joints, const hpp::floatSeq &refConfig)
Definition: robots.hh:371
CollisionObjectServant(::hpp::corbaServer::Server *server, const _Storage &s)
Definition: robots.hh:397
Definition: robots-fwd.hh:28
void difference(const hpp::floatSeq &q1, const hpp::floatSeq &q2, hpp::floatSeq_out result)
Definition: robots.hh:190
floatSeqSeq * matrixToFloatSeqSeq(core::matrixIn_t input)
Returns a sequence of the rows of the input matrix.
hpp::floatSeq * neutralConfiguration()
Definition: robots.hh:158
void interpolate(const hpp::floatSeq &q1, const hpp::floatSeq &q2, ::CORBA::Float u, hpp::floatSeq_out result)
Definition: robots.hh:208
floatSeq * vectorToFloatSeq(core::vectorIn_t input)
hpp::Transform__slice * getFramePosition(hpp::frame_index frame_id)
Definition: robots.hh:341
void deleteThis()
Definition: robots.hh:40
sequence< double > floatSeq
Robot configuration is defined by a sequence of dof value.
Definition: common.idl:34
::CORBA::Double Transform__slice
Definition: common-idl.hh:916
virtual ~CollisionObjectServant()
Definition: robots.hh:404