24 #include <interfaces/KatanaInterface.h> 26 #include <core/exceptions/software.h> 91 KatanaInterface::KatanaInterface() : Interface()
93 data_size =
sizeof(KatanaInterface_data_t);
94 data_ptr = malloc(data_size);
95 data = (KatanaInterface_data_t *)data_ptr;
96 data_ts = (interface_data_ts_t *)data_ptr;
97 memset(data_ptr, 0, data_size);
98 add_fieldinfo(IFT_BYTE,
"sensor_value", 16, &data->sensor_value);
99 add_fieldinfo(IFT_FLOAT,
"x", 1, &data->x);
100 add_fieldinfo(IFT_FLOAT,
"y", 1, &data->y);
101 add_fieldinfo(IFT_FLOAT,
"z", 1, &data->z);
102 add_fieldinfo(IFT_FLOAT,
"phi", 1, &data->phi);
103 add_fieldinfo(IFT_FLOAT,
"theta", 1, &data->theta);
104 add_fieldinfo(IFT_FLOAT,
"psi", 1, &data->psi);
105 add_fieldinfo(IFT_INT32,
"encoders", 6, &data->encoders);
106 add_fieldinfo(IFT_FLOAT,
"angles", 6, &data->angles);
107 add_fieldinfo(IFT_UINT32,
"msgid", 1, &data->msgid);
108 add_fieldinfo(IFT_BOOL,
"final", 1, &data->final);
109 add_fieldinfo(IFT_UINT32,
"error_code", 1, &data->error_code);
110 add_fieldinfo(IFT_BOOL,
"enabled", 1, &data->enabled);
111 add_fieldinfo(IFT_BOOL,
"calibrated", 1, &data->calibrated);
112 add_fieldinfo(IFT_BYTE,
"max_velocity", 1, &data->max_velocity);
113 add_fieldinfo(IFT_BYTE,
"num_motors", 1, &data->num_motors);
114 add_messageinfo(
"StopMessage");
115 add_messageinfo(
"FlushMessage");
116 add_messageinfo(
"ParkMessage");
117 add_messageinfo(
"LinearGotoMessage");
118 add_messageinfo(
"LinearGotoKniMessage");
119 add_messageinfo(
"ObjectGotoMessage");
120 add_messageinfo(
"CalibrateMessage");
121 add_messageinfo(
"OpenGripperMessage");
122 add_messageinfo(
"CloseGripperMessage");
123 add_messageinfo(
"SetEnabledMessage");
124 add_messageinfo(
"SetMaxVelocityMessage");
125 add_messageinfo(
"SetPlannerParamsMessage");
126 add_messageinfo(
"SetMotorEncoderMessage");
127 add_messageinfo(
"MoveMotorEncoderMessage");
128 add_messageinfo(
"SetMotorAngleMessage");
129 add_messageinfo(
"MoveMotorAngleMessage");
130 unsigned char tmp_hash[] = {0x63, 0x62, 0xb0, 0x97, 0x9, 0x8f, 0x58, 0x40, 0x61, 0xdc, 0x9a, 0xcc, 0xa, 0x97, 0xf8, 0xcd};
135 KatanaInterface::~KatanaInterface()
146 KatanaInterface::sensor_value()
const 148 return data->sensor_value;
159 KatanaInterface::sensor_value(
unsigned int index)
const 162 throw Exception(
"Index value %u out of bounds (0..16)", index);
164 return data->sensor_value[index];
172 KatanaInterface::maxlenof_sensor_value()
const 183 KatanaInterface::set_sensor_value(
const uint8_t * new_sensor_value)
185 memcpy(data->sensor_value, new_sensor_value,
sizeof(uint8_t) * 16);
196 KatanaInterface::set_sensor_value(
unsigned int index,
const uint8_t new_sensor_value)
199 throw Exception(
"Index value %u out of bounds (0..16)", index);
201 data->sensor_value[index] = new_sensor_value;
210 KatanaInterface::x()
const 220 KatanaInterface::maxlenof_x()
const 231 KatanaInterface::set_x(
const float new_x)
243 KatanaInterface::y()
const 253 KatanaInterface::maxlenof_y()
const 264 KatanaInterface::set_y(
const float new_y)
276 KatanaInterface::z()
const 286 KatanaInterface::maxlenof_z()
const 297 KatanaInterface::set_z(
const float new_z)
308 KatanaInterface::phi()
const 318 KatanaInterface::maxlenof_phi()
const 328 KatanaInterface::set_phi(
const float new_phi)
339 KatanaInterface::theta()
const 349 KatanaInterface::maxlenof_theta()
const 359 KatanaInterface::set_theta(
const float new_theta)
361 data->theta = new_theta;
370 KatanaInterface::psi()
const 380 KatanaInterface::maxlenof_psi()
const 390 KatanaInterface::set_psi(
const float new_psi)
401 KatanaInterface::encoders()
const 403 return data->encoders;
413 KatanaInterface::encoders(
unsigned int index)
const 416 throw Exception(
"Index value %u out of bounds (0..6)", index);
418 return data->encoders[index];
426 KatanaInterface::maxlenof_encoders()
const 436 KatanaInterface::set_encoders(
const int32_t * new_encoders)
438 memcpy(data->encoders, new_encoders,
sizeof(int32_t) * 6);
448 KatanaInterface::set_encoders(
unsigned int index,
const int32_t new_encoders)
451 throw Exception(
"Index value %u out of bounds (0..6)", index);
453 data->encoders[index] = new_encoders;
461 KatanaInterface::angles()
const 473 KatanaInterface::angles(
unsigned int index)
const 476 throw Exception(
"Index value %u out of bounds (0..6)", index);
478 return data->angles[index];
486 KatanaInterface::maxlenof_angles()
const 496 KatanaInterface::set_angles(
const float * new_angles)
498 memcpy(data->angles, new_angles,
sizeof(
float) * 6);
508 KatanaInterface::set_angles(
unsigned int index,
const float new_angles)
511 throw Exception(
"Index value %u out of bounds (0..6)", index);
513 data->angles[index] = new_angles;
522 KatanaInterface::msgid()
const 532 KatanaInterface::maxlenof_msgid()
const 543 KatanaInterface::set_msgid(
const uint32_t new_msgid)
545 data->msgid = new_msgid;
555 KatanaInterface::is_final()
const 565 KatanaInterface::maxlenof_final()
const 576 KatanaInterface::set_final(
const bool new_final)
578 data->final = new_final;
589 KatanaInterface::error_code()
const 591 return data->error_code;
599 KatanaInterface::maxlenof_error_code()
const 611 KatanaInterface::set_error_code(
const uint32_t new_error_code)
613 data->error_code = new_error_code;
622 KatanaInterface::is_enabled()
const 624 return data->enabled;
632 KatanaInterface::maxlenof_enabled()
const 642 KatanaInterface::set_enabled(
const bool new_enabled)
644 data->enabled = new_enabled;
653 KatanaInterface::is_calibrated()
const 655 return data->calibrated;
663 KatanaInterface::maxlenof_calibrated()
const 673 KatanaInterface::set_calibrated(
const bool new_calibrated)
675 data->calibrated = new_calibrated;
684 KatanaInterface::max_velocity()
const 686 return data->max_velocity;
694 KatanaInterface::maxlenof_max_velocity()
const 704 KatanaInterface::set_max_velocity(
const uint8_t new_max_velocity)
706 data->max_velocity = new_max_velocity;
715 KatanaInterface::num_motors()
const 717 return data->num_motors;
725 KatanaInterface::maxlenof_num_motors()
const 735 KatanaInterface::set_num_motors(
const uint8_t new_num_motors)
737 data->num_motors = new_num_motors;
743 KatanaInterface::create_message(
const char *type)
const 745 if ( strncmp(
"StopMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
747 }
else if ( strncmp(
"FlushMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
749 }
else if ( strncmp(
"ParkMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
751 }
else if ( strncmp(
"LinearGotoMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
753 }
else if ( strncmp(
"LinearGotoKniMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
755 }
else if ( strncmp(
"ObjectGotoMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
757 }
else if ( strncmp(
"CalibrateMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
759 }
else if ( strncmp(
"OpenGripperMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
761 }
else if ( strncmp(
"CloseGripperMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
763 }
else if ( strncmp(
"SetEnabledMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
765 }
else if ( strncmp(
"SetMaxVelocityMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
767 }
else if ( strncmp(
"SetPlannerParamsMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
769 }
else if ( strncmp(
"SetMotorEncoderMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
771 }
else if ( strncmp(
"MoveMotorEncoderMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
773 }
else if ( strncmp(
"SetMotorAngleMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
775 }
else if ( strncmp(
"MoveMotorAngleMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
779 "message type for this interface type.", type);
793 type(), other->
type());
795 memcpy(data, oi->data,
sizeof(KatanaInterface_data_t));
799 KatanaInterface::enum_tostring(
const char *enumtype,
int val)
const 813 KatanaInterface::StopMessage::StopMessage() :
Message(
"StopMessage")
818 data = (StopMessage_data_t *)
data_ptr;
836 data = (StopMessage_data_t *)
data_ptr;
864 data = (FlushMessage_data_t *)
data_ptr;
882 data = (FlushMessage_data_t *)
data_ptr;
910 data = (ParkMessage_data_t *)
data_ptr;
928 data = (ParkMessage_data_t *)
data_ptr;
963 KatanaInterface::LinearGotoMessage::LinearGotoMessage(
const float ini_theta_error,
const float ini_offset_xy,
const bool ini_straight,
const char * ini_trans_frame,
const char * ini_rot_frame,
const float ini_x,
const float ini_y,
const float ini_z,
const float ini_phi,
const float ini_theta,
const float ini_psi) :
Message(
"LinearGotoMessage")
965 data_size =
sizeof(LinearGotoMessage_data_t);
968 data = (LinearGotoMessage_data_t *)
data_ptr;
970 data->theta_error = ini_theta_error;
971 data->offset_xy = ini_offset_xy;
972 data->straight = ini_straight;
973 strncpy(data->trans_frame, ini_trans_frame, 32);
974 strncpy(data->rot_frame, ini_rot_frame, 32);
979 data->theta = ini_theta;
996 data_size =
sizeof(LinearGotoMessage_data_t);
999 data = (LinearGotoMessage_data_t *)
data_ptr;
1028 data = (LinearGotoMessage_data_t *)
data_ptr;
1041 return data->theta_error;
1062 data->theta_error = new_theta_error;
1072 return data->offset_xy;
1092 data->offset_xy = new_offset_xy;
1102 return data->straight;
1122 data->straight = new_straight;
1133 return data->trans_frame;
1154 strncpy(data->trans_frame, new_trans_frame,
sizeof(data->trans_frame));
1165 return data->rot_frame;
1186 strncpy(data->rot_frame, new_rot_frame,
sizeof(data->rot_frame));
1312 data->phi = new_phi;
1342 data->theta = new_theta;
1372 data->psi = new_psi;
1402 data_size =
sizeof(LinearGotoKniMessage_data_t);
1405 data = (LinearGotoKniMessage_data_t *)
data_ptr;
1410 data->phi = ini_phi;
1411 data->theta = ini_theta;
1412 data->psi = ini_psi;
1423 data_size =
sizeof(LinearGotoKniMessage_data_t);
1426 data = (LinearGotoKniMessage_data_t *)
data_ptr;
1450 data = (LinearGotoKniMessage_data_t *)
data_ptr;
1578 data->phi = new_phi;
1608 data->theta = new_theta;
1638 data->psi = new_psi;
1664 data_size =
sizeof(ObjectGotoMessage_data_t);
1667 data = (ObjectGotoMessage_data_t *)
data_ptr;
1669 strncpy(data->object, ini_object, 32);
1670 data->rot_x = ini_rot_x;
1677 data_size =
sizeof(ObjectGotoMessage_data_t);
1680 data = (ObjectGotoMessage_data_t *)
data_ptr;
1700 data = (ObjectGotoMessage_data_t *)
data_ptr;
1712 return data->object;
1732 strncpy(data->object, new_object,
sizeof(data->object));
1762 data->rot_x = new_rot_x;
1785 data_size =
sizeof(CalibrateMessage_data_t);
1788 data = (CalibrateMessage_data_t *)
data_ptr;
1806 data = (CalibrateMessage_data_t *)
data_ptr;
1831 data_size =
sizeof(OpenGripperMessage_data_t);
1834 data = (OpenGripperMessage_data_t *)
data_ptr;
1852 data = (OpenGripperMessage_data_t *)
data_ptr;
1877 data_size =
sizeof(CloseGripperMessage_data_t);
1880 data = (CloseGripperMessage_data_t *)
data_ptr;
1898 data = (CloseGripperMessage_data_t *)
data_ptr;
1925 data_size =
sizeof(SetEnabledMessage_data_t);
1928 data = (SetEnabledMessage_data_t *)
data_ptr;
1930 data->enabled = ini_enabled;
1936 data_size =
sizeof(SetEnabledMessage_data_t);
1939 data = (SetEnabledMessage_data_t *)
data_ptr;
1958 data = (SetEnabledMessage_data_t *)
data_ptr;
1970 return data->enabled;
1990 data->enabled = new_enabled;
2015 data_size =
sizeof(SetMaxVelocityMessage_data_t);
2018 data = (SetMaxVelocityMessage_data_t *)
data_ptr;
2020 data->max_velocity = ini_max_velocity;
2026 data_size =
sizeof(SetMaxVelocityMessage_data_t);
2029 data = (SetMaxVelocityMessage_data_t *)
data_ptr;
2048 data = (SetMaxVelocityMessage_data_t *)
data_ptr;
2060 return data->max_velocity;
2080 data->max_velocity = new_max_velocity;
2106 data_size =
sizeof(SetPlannerParamsMessage_data_t);
2109 data = (SetPlannerParamsMessage_data_t *)
data_ptr;
2111 strncpy(data->plannerparams, ini_plannerparams, 1024);
2112 data->straight = ini_straight;
2119 data_size =
sizeof(SetPlannerParamsMessage_data_t);
2122 data = (SetPlannerParamsMessage_data_t *)
data_ptr;
2142 data = (SetPlannerParamsMessage_data_t *)
data_ptr;
2154 return data->plannerparams;
2174 strncpy(data->plannerparams, new_plannerparams,
sizeof(data->plannerparams));
2184 return data->straight;
2204 data->straight = new_straight;
2230 data_size =
sizeof(SetMotorEncoderMessage_data_t);
2233 data = (SetMotorEncoderMessage_data_t *)
data_ptr;
2236 data->enc = ini_enc;
2243 data_size =
sizeof(SetMotorEncoderMessage_data_t);
2246 data = (SetMotorEncoderMessage_data_t *)
data_ptr;
2266 data = (SetMotorEncoderMessage_data_t *)
data_ptr;
2328 data->enc = new_enc;
2354 data_size =
sizeof(MoveMotorEncoderMessage_data_t);
2357 data = (MoveMotorEncoderMessage_data_t *)
data_ptr;
2360 data->enc = ini_enc;
2367 data_size =
sizeof(MoveMotorEncoderMessage_data_t);
2370 data = (MoveMotorEncoderMessage_data_t *)
data_ptr;
2390 data = (MoveMotorEncoderMessage_data_t *)
data_ptr;
2452 data->enc = new_enc;
2478 data_size =
sizeof(SetMotorAngleMessage_data_t);
2481 data = (SetMotorAngleMessage_data_t *)
data_ptr;
2484 data->angle = ini_angle;
2491 data_size =
sizeof(SetMotorAngleMessage_data_t);
2494 data = (SetMotorAngleMessage_data_t *)
data_ptr;
2514 data = (SetMotorAngleMessage_data_t *)
data_ptr;
2576 data->angle = new_angle;
2602 data_size =
sizeof(MoveMotorAngleMessage_data_t);
2605 data = (MoveMotorAngleMessage_data_t *)
data_ptr;
2608 data->angle = ini_angle;
2615 data_size =
sizeof(MoveMotorAngleMessage_data_t);
2618 data = (MoveMotorAngleMessage_data_t *)
data_ptr;
2638 data = (MoveMotorAngleMessage_data_t *)
data_ptr;
2700 data->angle = new_angle;
2761 if ( m10 != NULL ) {
2765 if ( m11 != NULL ) {
2769 if ( m12 != NULL ) {
2773 if ( m13 != NULL ) {
2777 if ( m14 != NULL ) {
2781 if ( m15 != NULL ) {
virtual Message * clone() const
Clone this message.
SetMotorAngleMessage()
Constructor.
static const uint32_t SENSOR_IR_LEFT_INNER_FRONT
SENSOR_IR_LEFT_INNER_FRONT constant.
void set_z(const float new_z)
Set z value.
void set_object(const char *new_object)
Set object value.
ParkMessage()
Constructor.
static const uint32_t ERROR_NO_SOLUTION
ERROR_NO_SOLUTION constant.
static const uint32_t SENSOR_IR_RIGHT_INNER_FRONT
SENSOR_IR_RIGHT_INNER_FRONT constant.
void * data_ptr
Pointer to memory that contains local data.
virtual Message * clone() const
Clone this message.
float rot_x() const
Get rot_x value.
size_t maxlenof_psi() const
Get maximum length of psi value.
FlushMessage()
Constructor.
Base class for all messages passed through interfaces in Fawkes BlackBoard.
void set_max_velocity(const uint8_t new_max_velocity)
Set max_velocity value.
virtual Message * clone() const
Clone this message.
uint32_t nr() const
Get nr value.
size_t maxlenof_y() const
Get maximum length of y value.
~SetMaxVelocityMessage()
Destructor.
void set_angle(const float new_angle)
Set angle value.
virtual Message * clone() const
Clone this message.
size_t maxlenof_phi() const
Get maximum length of phi value.
uint8_t max_velocity() const
Get max_velocity value.
size_t maxlenof_offset_xy() const
Get maximum length of offset_xy value.
virtual Message * clone() const
Clone this message.
size_t maxlenof_y() const
Get maximum length of y value.
float x() const
Get x value.
static const uint32_t SENSOR_IR_CENTER_GRIPPER
SENSOR_IR_CENTER_GRIPPER constant.
LinearGotoKniMessage Fawkes BlackBoard Interface Message.
float psi() const
Get psi value.
void set_offset_xy(const float new_offset_xy)
Set offset_xy value.
size_t maxlenof_z() const
Get maximum length of z value.
float theta_error() const
Get theta_error value.
float z() const
Get z value.
Fawkes library namespace.
CalibrateMessage Fawkes BlackBoard Interface Message.
void set_phi(const float new_phi)
Set phi value.
void set_enc(const uint32_t new_enc)
Set enc value.
size_t maxlenof_nr() const
Get maximum length of nr value.
Timestamp data, must be present and first entries for each interface data structs! This leans on time...
static const uint32_t SENSOR_IR_LEFT_INNER_MIDDLE
SENSOR_IR_LEFT_INNER_MIDDLE constant.
~ObjectGotoMessage()
Destructor.
float phi() const
Get phi value.
bool is_enabled() const
Get enabled value.
~CalibrateMessage()
Destructor.
SetMotorEncoderMessage Fawkes BlackBoard Interface Message.
MoveMotorAngleMessage()
Constructor.
static const uint32_t SENSOR_IR_RIGHT_BOTTOM_FRONT
SENSOR_IR_RIGHT_BOTTOM_FRONT constant.
size_t maxlenof_rot_x() const
Get maximum length of rot_x value.
static const uint32_t SENSOR_IR_LEFT_OUTER_FRONT
SENSOR_IR_LEFT_OUTER_FRONT constant.
float y() const
Get y value.
static const uint32_t SENSOR_FORCE_LEFT_FRONT
SENSOR_FORCE_LEFT_FRONT constant.
byte field, alias for uint8
CalibrateMessage()
Constructor.
void set_psi(const float new_psi)
Set psi value.
void set_psi(const float new_psi)
Set psi value.
size_t maxlenof_straight() const
Get maximum length of straight value.
size_t maxlenof_max_velocity() const
Get maximum length of max_velocity value.
void set_plannerparams(const char *new_plannerparams)
Set plannerparams value.
void set_straight(const bool new_straight)
Set straight value.
SetMotorAngleMessage Fawkes BlackBoard Interface Message.
bool is_straight() const
Get straight value.
void set_enabled(const bool new_enabled)
Set enabled value.
Base class for all Fawkes BlackBoard interfaces.
void set_angle(const float new_angle)
Set angle value.
void set_y(const float new_y)
Set y value.
~LinearGotoKniMessage()
Destructor.
size_t maxlenof_object() const
Get maximum length of object value.
ObjectGotoMessage()
Constructor.
static const uint32_t SENSOR_COND_BOTH
SENSOR_COND_BOTH constant.
size_t maxlenof_phi() const
Get maximum length of phi value.
size_t maxlenof_x() const
Get maximum length of x value.
uint32_t enc() const
Get enc value.
static const uint32_t ERROR_UNSPECIFIC
ERROR_UNSPECIFIC constant.
uint32_t nr() const
Get nr value.
virtual Message * clone() const
Clone this message.
MoveMotorEncoderMessage()
Constructor.
void set_trans_frame(const char *new_trans_frame)
Set trans_frame value.
message_data_ts_t * data_ts
data timestamp aliasing pointer
static const uint32_t SENSOR_FORCE_RIGHT_REAR
SENSOR_FORCE_RIGHT_REAR constant.
char * object() const
Get object value.
unsigned int data_size
Size of memory needed to hold all data.
uint32_t enc() const
Get enc value.
ObjectGotoMessage Fawkes BlackBoard Interface Message.
SetPlannerParamsMessage()
Constructor.
~SetMotorEncoderMessage()
Destructor.
~SetEnabledMessage()
Destructor.
static const uint32_t SENSOR_RESERVED_2
SENSOR_RESERVED_2 constant.
float angle() const
Get angle value.
~CloseGripperMessage()
Destructor.
virtual Message * clone() const
Clone this message.
virtual Message * clone() const
Clone this message.
void set_theta(const float new_theta)
Set theta value.
uint32_t nr() const
Get nr value.
static const uint32_t ERROR_COMMUNICATION
ERROR_COMMUNICATION constant.
OpenGripperMessage Fawkes BlackBoard Interface Message.
size_t maxlenof_z() const
Get maximum length of z value.
uint32_t nr() const
Get nr value.
~LinearGotoMessage()
Destructor.
~SetPlannerParamsMessage()
Destructor.
size_t maxlenof_x() const
Get maximum length of x value.
const char * type() const
Get type of interface.
~ParkMessage()
Destructor.
void set_straight(const bool new_straight)
Set straight value.
KatanaInterface Fawkes BlackBoard Interface.
static const uint32_t SENSOR_IR_RIGHT_OUTER_FRONT
SENSOR_IR_RIGHT_OUTER_FRONT constant.
size_t maxlenof_nr() const
Get maximum length of nr value.
Base class for exceptions in Fawkes.
void set_x(const float new_x)
Set x value.
SetMaxVelocityMessage()
Constructor.
LinearGotoMessage Fawkes BlackBoard Interface Message.
virtual Message * clone() const
Clone this message.
float psi() const
Get psi value.
size_t maxlenof_theta() const
Get maximum length of theta value.
void set_phi(const float new_phi)
Set phi value.
size_t maxlenof_plannerparams() const
Get maximum length of plannerparams value.
virtual Message * clone() const
Clone this message.
SetPlannerParamsMessage Fawkes BlackBoard Interface Message.
virtual Message * clone() const
Clone this message.
static const uint32_t ERROR_NONE
ERROR_NONE constant.
SetMaxVelocityMessage Fawkes BlackBoard Interface Message.
size_t maxlenof_rot_frame() const
Get maximum length of rot_frame value.
void set_theta(const float new_theta)
Set theta value.
size_t maxlenof_angle() const
Get maximum length of angle value.
size_t maxlenof_nr() const
Get maximum length of nr value.
size_t maxlenof_enc() const
Get maximum length of enc value.
void set_x(const float new_x)
Set x value.
static const uint32_t ERROR_MOTOR_CRASHED
ERROR_MOTOR_CRASHED constant.
char * rot_frame() const
Get rot_frame value.
float angle() const
Get angle value.
void set_z(const float new_z)
Set z value.
CloseGripperMessage Fawkes BlackBoard Interface Message.
float y() const
Get y value.
~StopMessage()
Destructor.
SetMotorEncoderMessage()
Constructor.
size_t maxlenof_enabled() const
Get maximum length of enabled value.
static const uint32_t SENSOR_FORCE_LEFT_REAR
SENSOR_FORCE_LEFT_REAR constant.
virtual Message * clone() const
Clone this message.
void set_theta_error(const float new_theta_error)
Set theta_error value.
SetEnabledMessage()
Constructor.
size_t maxlenof_enc() const
Get maximum length of enc value.
~MoveMotorEncoderMessage()
Destructor.
LinearGotoKniMessage()
Constructor.
StopMessage Fawkes BlackBoard Interface Message.
void set_rot_x(const float new_rot_x)
Set rot_x value.
float offset_xy() const
Get offset_xy value.
MoveMotorAngleMessage Fawkes BlackBoard Interface Message.
size_t maxlenof_angle() const
Get maximum length of angle value.
virtual Message * clone() const
Clone this message.
OpenGripperMessage()
Constructor.
char * plannerparams() const
Get plannerparams value.
size_t maxlenof_nr() const
Get maximum length of nr value.
void set_rot_frame(const char *new_rot_frame)
Set rot_frame value.
~SetMotorAngleMessage()
Destructor.
float theta() const
Get theta value.
static const uint32_t SENSOR_FORCE_RIGHT_FRONT
SENSOR_FORCE_RIGHT_FRONT constant.
static const uint32_t SENSOR_IR_RIGHT_INNER_MIDDLE
SENSOR_IR_RIGHT_INNER_MIDDLE constant.
size_t maxlenof_theta_error() const
Get maximum length of theta_error value.
virtual Message * clone() const
Clone this message.
float x() const
Get x value.
MoveMotorEncoderMessage Fawkes BlackBoard Interface Message.
CloseGripperMessage()
Constructor.
static const uint32_t SENSOR_IR_LEFT_BOTTOM_FRONT
SENSOR_IR_LEFT_BOTTOM_FRONT constant.
virtual Message * clone() const
Clone this message.
float phi() const
Get phi value.
ParkMessage Fawkes BlackBoard Interface Message.
virtual Message * clone() const
Clone this message.
char * trans_frame() const
Get trans_frame value.
void add_fieldinfo(interface_fieldtype_t type, const char *name, size_t length, void *value, const char *enumtype=0, const interface_enum_map_t *enum_map=0)
Add an entry to the info list.
StopMessage()
Constructor.
~MoveMotorAngleMessage()
Destructor.
FlushMessage Fawkes BlackBoard Interface Message.
float theta() const
Get theta value.
size_t maxlenof_theta() const
Get maximum length of theta value.
size_t maxlenof_psi() const
Get maximum length of psi value.
LinearGotoMessage()
Constructor.
void set_y(const float new_y)
Set y value.
~OpenGripperMessage()
Destructor.
32 bit unsigned integer field
void set_nr(const uint32_t new_nr)
Set nr value.
size_t maxlenof_trans_frame() const
Get maximum length of trans_frame value.
void set_nr(const uint32_t new_nr)
Set nr value.
float z() const
Get z value.
virtual bool message_valid(const Message *message) const
Check if message is valid and can be enqueued.
static const uint32_t SENSOR_RESERVED_10
SENSOR_RESERVED_10 constant.
void set_nr(const uint32_t new_nr)
Set nr value.
SetEnabledMessage Fawkes BlackBoard Interface Message.
void set_enc(const uint32_t new_enc)
Set enc value.
bool is_straight() const
Get straight value.
void set_nr(const uint32_t new_nr)
Set nr value.
~FlushMessage()
Destructor.
static const uint32_t ERROR_CMD_START_FAILED
ERROR_CMD_START_FAILED constant.
size_t maxlenof_straight() const
Get maximum length of straight value.