5 #ifndef __CORBA_H_EXTERNAL_GUARD__ 6 #include <omniORB4/CORBA.h> 9 #ifndef USE_stub_in_nt_dll 10 # define USE_stub_in_nt_dll_NOT_DEFINED_robot 12 #ifndef USE_core_stub_in_nt_dll 13 # define USE_core_stub_in_nt_dll_NOT_DEFINED_robot 15 #ifndef USE_dyn_stub_in_nt_dll 16 # define USE_dyn_stub_in_nt_dll_NOT_DEFINED_robot 21 #ifndef __common_hh_EXTERNAL_GUARD__ 22 #define __common_hh_EXTERNAL_GUARD__ 25 #ifndef __robots_hh_EXTERNAL_GUARD__ 26 #define __robots_hh_EXTERNAL_GUARD__ 32 #ifdef USE_stub_in_nt_dll 33 # ifndef USE_core_stub_in_nt_dll 34 # define USE_core_stub_in_nt_dll 36 # ifndef USE_dyn_stub_in_nt_dll 37 # define USE_dyn_stub_in_nt_dll 42 # error "A local CPP macro _core_attr has already been defined." 44 # ifdef USE_core_stub_in_nt_dll 45 # define _core_attr _OMNIORB_NTDLL_IMPORT 52 # error "A local CPP macro _dyn_attr has already been defined." 54 # ifdef USE_dyn_stub_in_nt_dll 55 # define _dyn_attr _OMNIORB_NTDLL_IMPORT 67 _CORBA_MODULE corbaserver
71 #ifndef __hpp_mcorbaserver_mRobot__ 72 #define __hpp_mcorbaserver_mRobot__ 84 static _ptr_type
_nil();
85 static _CORBA_Boolean
is_nil(_ptr_type);
92 typedef _CORBA_ObjRef_Var<_objref_Robot, Robot_Helper>
Robot_var;
93 typedef _CORBA_ObjRef_OUT_arg<_objref_Robot,Robot_Helper >
Robot_out;
104 static _ptr_type _duplicate(_ptr_type);
105 static _ptr_type _narrow(::CORBA::Object_ptr);
106 static _ptr_type _unchecked_narrow(::CORBA::Object_ptr);
108 static _ptr_type
_nil();
110 static inline void _marshalObjRef(_ptr_type, cdrStream&);
113 omniObjRef* o = omniObjRef::_unMarshal(_PD_repoId,s);
115 return (_ptr_type) o->_ptrToObjRef(_PD_repoId);
122 return (_ptr_type) o->_ptrToObjRef(_PD_repoId);
134 public virtual ::CORBA::Object,
135 public virtual omniObjRef
139 void loadRobotModel(
const char* robotName,
const char* rootJointType,
const char* urdfName,
const char* srdfName);
140 void loadHumanoidModel(
const char* robotName,
const char* rootJointType,
const char* urdfName,
const char* srdfName);
141 void loadRobotModelFromString(
const char* robotName,
const char* rootJointType,
const char* urdfString,
const char* srdfString);
142 void loadHumanoidModelFromString(
const char* robotName,
const char* rootJointType,
const char* urdfString,
const char* srdfString);
143 ::CORBA::Long getConfigSize();
144 ::CORBA::Long getNumberDof();
148 char* getParentJointName(
const char* jointName);
149 floatSeq* getJointConfig(
const char* jointName);
151 char* getJointType(
const char* jointName);
153 floatSeqSeq* getCurrentTransformation(
const char* jointName);
156 floatSeq* getJointVelocity(
const char* jointName);
157 floatSeq* getJointVelocityInLocalFrame(
const char* jointName);
162 ::CORBA::Long getJointNumberDof(
const char* jointName);
163 ::CORBA::Long getJointConfigSize(
const char* jointName);
165 floatSeq* getJointBounds(
const char* jointName);
168 Names_t* getLinkNames(
const char* jointName);
169 void setDimensionExtraConfigSpace(::CORBA::ULong dimension);
170 ::CORBA::ULong getDimensionExtraConfigSpace();
177 Names_t* getJointInnerObjects(
const char* jointName);
178 Names_t* getJointOuterObjects(
const char* jointName);
180 void isConfigValid(
const ::hpp::floatSeq& dofArray, ::CORBA::Boolean& validity, ::CORBA::String_out report);
181 void distancesToCollision(::hpp::floatSeq_out distances, ::hpp::Names_t_out innerObjects, ::hpp::Names_t_out outerObjects, ::hpp::floatSeqSeq_out innerPoints, ::hpp::floatSeqSeq_out outerPoints);
182 void autocollisionCheck(::hpp::boolSeq_out collide);
183 void autocollisionPairs(::hpp::Names_t_out innerObjects, ::hpp::Names_t_out outerObjects, ::hpp::boolSeq_out active);
184 void setAutoCollision(
const char* innerObject,
const char* outerObject, ::CORBA::Boolean active);
186 ::CORBA::Double getMass();
188 floatSeq* getCenterOfMassVelocity();
191 floatSeq* getPartialCom(
const char* comName);
192 floatSeqSeq* getJacobianPartialCom(
const char* comName);
193 floatSeq* getVelocityPartialCom(
const char* comName);
194 char* getRobotName();
196 void createRobot(
const char* robotName);
197 void appendJoint(
const char* parentJoint,
const char* jointName,
const char* jointType,
const ::hpp::Transform_ pos);
198 void createPolyhedron(
const char* inPolyName);
199 void createBox(
const char* name, ::CORBA::Double x, ::CORBA::Double y, ::CORBA::Double z);
200 void createSphere(
const char* name, ::CORBA::Double radius);
201 void createCylinder(
const char* name, ::CORBA::Double radius, ::CORBA::Double length);
202 ::CORBA::ULong addPoint(
const char* inPolyName, ::CORBA::Double x, ::CORBA::Double y, ::CORBA::Double z);
203 ::CORBA::ULong addTriangle(
const char* inPolyName, ::CORBA::ULong pt1, ::CORBA::ULong pt2, ::CORBA::ULong pt3);
215 virtual void* _ptrToObjRef(
const char*);
229 virtual omniObjRef* newObjRef(omniIOR*,omniIdentity*);
230 virtual _CORBA_Boolean is_a(
const char*)
const;
234 public virtual omniServant
239 virtual void loadRobotModel(
const char* robotName,
const char* rootJointType,
const char* urdfName,
const char* srdfName) = 0;
240 virtual void loadHumanoidModel(
const char* robotName,
const char* rootJointType,
const char* urdfName,
const char* srdfName) = 0;
241 virtual void loadRobotModelFromString(
const char* robotName,
const char* rootJointType,
const char* urdfString,
const char* srdfString) = 0;
242 virtual void loadHumanoidModelFromString(
const char* robotName,
const char* rootJointType,
const char* urdfString,
const char* srdfString) = 0;
243 virtual ::CORBA::Long getConfigSize() = 0;
244 virtual ::CORBA::Long getNumberDof() = 0;
245 virtual Names_t* getJointNames() = 0;
246 virtual Names_t* getJointTypes() = 0;
247 virtual Names_t* getAllJointNames() = 0;
248 virtual char* getParentJointName(
const char* jointName) = 0;
249 virtual floatSeq* getJointConfig(
const char* jointName) = 0;
251 virtual char* getJointType(
const char* jointName) = 0;
253 virtual floatSeqSeq* getCurrentTransformation(
const char* jointName) = 0;
256 virtual floatSeq* getJointVelocity(
const char* jointName) = 0;
257 virtual floatSeq* getJointVelocityInLocalFrame(
const char* jointName) = 0;
258 virtual Transform__slice* getJointPositionInParentFrame(
const char* jointName) = 0;
262 virtual ::CORBA::Long getJointNumberDof(
const char* jointName) = 0;
263 virtual ::CORBA::Long getJointConfigSize(
const char* jointName) = 0;
265 virtual floatSeq* getJointBounds(
const char* jointName) = 0;
268 virtual Names_t* getLinkNames(
const char* jointName) = 0;
269 virtual void setDimensionExtraConfigSpace(::CORBA::ULong dimension) = 0;
270 virtual ::CORBA::ULong getDimensionExtraConfigSpace() = 0;
272 virtual floatSeq* getCurrentConfig() = 0;
273 virtual floatSeq* shootRandomConfig() = 0;
275 virtual floatSeq* getCurrentVelocity() = 0;
277 virtual Names_t* getJointInnerObjects(
const char* jointName) = 0;
278 virtual Names_t* getJointOuterObjects(
const char* jointName) = 0;
279 virtual void getObjectPosition(
const char* objectName, ::
hpp::Transform_ cfg) = 0;
280 virtual void isConfigValid(
const ::hpp::floatSeq& dofArray, ::CORBA::Boolean& validity, ::CORBA::String_out report) = 0;
281 virtual void distancesToCollision(::hpp::floatSeq_out distances, ::hpp::Names_t_out innerObjects, ::hpp::Names_t_out outerObjects, ::hpp::floatSeqSeq_out innerPoints, ::hpp::floatSeqSeq_out outerPoints) = 0;
282 virtual void autocollisionCheck(::hpp::boolSeq_out collide) = 0;
283 virtual void autocollisionPairs(::hpp::Names_t_out innerObjects, ::hpp::Names_t_out outerObjects, ::hpp::boolSeq_out active) = 0;
284 virtual void setAutoCollision(
const char* innerObject,
const char* outerObject, ::CORBA::Boolean active) = 0;
285 virtual floatSeq* getRobotAABB() = 0;
286 virtual ::CORBA::Double getMass() = 0;
287 virtual floatSeq* getCenterOfMass() = 0;
288 virtual floatSeq* getCenterOfMassVelocity() = 0;
289 virtual floatSeqSeq* getJacobianCenterOfMass() = 0;
291 virtual floatSeq* getPartialCom(
const char* comName) = 0;
292 virtual floatSeqSeq* getJacobianPartialCom(
const char* comName) = 0;
293 virtual floatSeq* getVelocityPartialCom(
const char* comName) = 0;
294 virtual char* getRobotName() = 0;
296 virtual void createRobot(
const char* robotName) = 0;
297 virtual void appendJoint(
const char* parentJoint,
const char* jointName,
const char* jointType,
const ::hpp::Transform_ pos) = 0;
298 virtual void createPolyhedron(
const char* inPolyName) = 0;
299 virtual void createBox(
const char* name, ::CORBA::Double x, ::CORBA::Double y, ::CORBA::Double z) = 0;
300 virtual void createSphere(
const char* name, ::CORBA::Double radius) = 0;
301 virtual void createCylinder(
const char* name, ::CORBA::Double radius, ::CORBA::Double length) = 0;
302 virtual ::CORBA::ULong addPoint(
const char* inPolyName, ::CORBA::Double x, ::CORBA::Double y, ::CORBA::Double z) = 0;
303 virtual ::CORBA::ULong addTriangle(
const char* inPolyName, ::CORBA::ULong pt1, ::CORBA::ULong pt2, ::CORBA::ULong pt3) = 0;
307 virtual _CORBA_Boolean _dispatch(omniCallHandle&);
310 virtual void* _ptrToInterface(
const char*);
311 virtual const char* _mostDerivedRepoId();
322 _CORBA_MODULE POA_hpp
325 _CORBA_MODULE corbaserver
329 public virtual hpp::corbaserver::_impl_Robot,
330 public virtual ::PortableServer::ServantBase
346 _CORBA_MODULE OBV_hpp
349 _CORBA_MODULE corbaserver
367 omniObjRef::_marshal(obj->_PR_getobj(),s);
372 #ifdef USE_stub_in_nt_dll_NOT_DEFINED_robot 373 # undef USE_stub_in_nt_dll 374 # undef USE_stub_in_nt_dll_NOT_DEFINED_robot 376 #ifdef USE_core_stub_in_nt_dll_NOT_DEFINED_robot 377 # undef USE_core_stub_in_nt_dll 378 # undef USE_core_stub_in_nt_dll_NOT_DEFINED_robot 380 #ifdef USE_dyn_stub_in_nt_dll_NOT_DEFINED_robot 381 # undef USE_dyn_stub_in_nt_dll 382 # undef USE_dyn_stub_in_nt_dll_NOT_DEFINED_robot 385 #endif // __robot_hh__
#define _core_attr
Definition: robot-idl.hh:47
Definition: robot-idl.hh:80
Definition: robot-idl.hh:98
static void release(_ptr_type)
Implement CORBA interface ``Obstacle''.
Definition: basic-server.hh:27
static _CORBA_Boolean is_nil(_ptr_type)
Robot_ptr _ptr_type
Definition: robot-idl.hh:101
_objref_Robot * Robot_ptr
Definition: robot-idl.hh:75
_CORBA_ObjRef_OUT_arg< _objref_Robot, Robot_Helper > Robot_out
Definition: robot-idl.hh:93
Robot_var _var_type
Definition: robot-idl.hh:102
sequence< string > Names_t
Sequence of names.
Definition: common.idl:22
Definition: robot-idl.hh:133
::CORBA::Double Transform_[7]
Definition: common-idl.hh:796
Definition: common-idl.hh:73
Definition: common-idl.hh:684
Robot_ptr _ptr_type
Definition: robot-idl.hh:82
_pof_Robot()
Definition: robot-idl.hh:226
static _ptr_type _fromObjRef(omniObjRef *o)
Definition: robot-idl.hh:120
static _ptr_type unmarshalObjRef(cdrStream &)
_CORBA_ObjRef_Var< _objref_Robot, Robot_Helper > Robot_var
Definition: robot-idl.hh:92
_objref_CenterOfMassComputation * CenterOfMassComputation_ptr
Definition: robots-idl.hh:71
Robot_ptr RobotRef
Definition: robot-idl.hh:78
double Transform_[7]
Element of SE(3) represented by a vector and a unit quaternion.
Definition: common.idl:36
inline ::hpp::corbaserver::Robot_ptr _this()
Definition: robot-idl.hh:335
_objref_Robot()
Definition: robot-idl.hh:207
static void duplicate(_ptr_type)
Definition: robot-idl.hh:233
Definition: common-idl.hh:570
static _ptr_type _unmarshalObjRef(cdrStream &s)
Definition: robot-idl.hh:112
sequence< double > floatSeq
Robot configuration is defined by a sequence of dof value.
Definition: common.idl:32
static void marshalObjRef(_ptr_type, cdrStream &)
Definition: robot-idl.hh:224
static _core_attr const char * _PD_repoId
Definition: robot-idl.hh:127
::CORBA::Double Transform__slice
Definition: common-idl.hh:797