00001
00002
00003 #ifndef _REC_ROBOTINO_COM_C_MANIPULATOR_H_
00004 #define _REC_ROBOTINO_COM_C_MANIPULATOR_H_
00005
00006 #include "rec/robotino/com/c/globals.h"
00007 #include "rec/robotino/com/c/Com.h"
00008
00017 typedef int ManipulatorId;
00018
00019 #define INVALID_MANIPULATORID -1
00020
00025 DLLEXPORT ManipulatorId Manipulator_construct();
00026
00032 DLLEXPORT BOOL Manipulator_destroy( ManipulatorId id );
00033
00038 DLLEXPORT BOOL Manipulator_setComId( ManipulatorId id, ComId comId );
00039
00045 DLLEXPORT BOOL Manipulator_grab( ManipulatorId id );
00046
00076 DLLEXPORT BOOL Manipulator_getReadings(
00077 ManipulatorId id,
00078 unsigned int* seq,
00079 float* angles,
00080 unsigned int* numAngles,
00081 float* speeds,
00082 unsigned int* numSpeeds,
00083 int* errors,
00084 unsigned int* numErrors,
00085 int* motors_enabled,
00086 int* store_current_position,
00087 float* cwAxesLimits,
00088 unsigned int* numCwAxesLimits,
00089 float* ccwAxesLimits,
00090 unsigned int* numCcwAxesLimits
00091 );
00092
00101 DLLEXPORT BOOL Manipulator_setAxis( ManipulatorId id, unsigned int axis, float angle, float speed );
00102
00112 DLLEXPORT BOOL Manipulator_setAxes( ManipulatorId id, const float* angles, unsigned int numAngles, const float* speeds, unsigned int numSpeeds );
00113
00121 DLLEXPORT BOOL Manipulator_setPowerEnabled( ManipulatorId id, unsigned int channel, int enable );
00122
00128 DLLEXPORT BOOL Manipulator_toggleTorque( ManipulatorId id );
00129
00130 #endif //_REC_ROBOTINO_COM_C_MANIPULATOR_H_