24 #include <interfaces/OpenRaveInterface.h>
26 #include <core/exceptions/software.h>
44 OpenRaveInterface::OpenRaveInterface() : Interface()
46 data_size =
sizeof(OpenRaveInterface_data_t);
47 data_ptr = malloc(data_size);
48 data = (OpenRaveInterface_data_t *)data_ptr;
49 data_ts = (interface_data_ts_t *)data_ptr;
50 memset(data_ptr, 0, data_size);
51 add_fieldinfo(
IFT_UINT32,
"msgid", 1, &data->msgid);
52 add_fieldinfo(
IFT_BOOL,
"final", 1, &data->final);
53 add_fieldinfo(
IFT_UINT32,
"error_code", 1, &data->error_code);
54 add_fieldinfo(
IFT_BOOL,
"success", 1, &data->success);
55 add_messageinfo(
"AddObjectMessage");
56 add_messageinfo(
"DeleteObjectMessage");
57 add_messageinfo(
"AttachObjectMessage");
58 add_messageinfo(
"ReleaseObjectMessage");
59 add_messageinfo(
"ReleaseAllObjectsMessage");
60 add_messageinfo(
"MoveObjectMessage");
61 add_messageinfo(
"RotateObjectQuatMessage");
62 add_messageinfo(
"RotateObjectMessage");
63 add_messageinfo(
"RenameObjectMessage");
64 unsigned char tmp_hash[] = {0x7f, 0x87, 0xdf, 0x38, 0x2b, 0x2d, 0xbe, 0x36, 0x88, 0x5a, 0xf7, 0x95, 0x15, 0xb4, 0x1b, 0xaa};
69 OpenRaveInterface::~OpenRaveInterface()
103 data->msgid = new_msgid;
136 data->final = new_final;
149 return data->error_code;
171 data->error_code = new_error_code;
182 return data->success;
202 data->success = new_success;
210 if ( strncmp(
"AddObjectMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
212 }
else if ( strncmp(
"DeleteObjectMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
214 }
else if ( strncmp(
"AttachObjectMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
216 }
else if ( strncmp(
"ReleaseObjectMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
218 }
else if ( strncmp(
"ReleaseAllObjectsMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
220 }
else if ( strncmp(
"MoveObjectMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
222 }
else if ( strncmp(
"RotateObjectQuatMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
224 }
else if ( strncmp(
"RotateObjectMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
226 }
else if ( strncmp(
"RenameObjectMessage", type, __INTERFACE_MESSAGE_TYPE_SIZE) == 0 ) {
230 "message type for this interface type.", type);
246 memcpy(data, oi->data,
sizeof(OpenRaveInterface_data_t));
269 data_size =
sizeof(AddObjectMessage_data_t);
272 data = (AddObjectMessage_data_t *)
data_ptr;
274 strncpy(data->name, ini_name, 30);
275 strncpy(data->path, ini_path, 1024);
282 data_size =
sizeof(AddObjectMessage_data_t);
285 data = (AddObjectMessage_data_t *)
data_ptr;
305 data = (AddObjectMessage_data_t *)
data_ptr;
337 strncpy(data->name, new_name,
sizeof(data->name));
367 strncpy(data->path, new_path,
sizeof(data->path));
392 data_size =
sizeof(DeleteObjectMessage_data_t);
395 data = (DeleteObjectMessage_data_t *)
data_ptr;
397 strncpy(data->name, ini_name, 30);
403 data_size =
sizeof(DeleteObjectMessage_data_t);
406 data = (DeleteObjectMessage_data_t *)
data_ptr;
425 data = (DeleteObjectMessage_data_t *)
data_ptr;
457 strncpy(data->name, new_name,
sizeof(data->name));
482 data_size =
sizeof(AttachObjectMessage_data_t);
485 data = (AttachObjectMessage_data_t *)
data_ptr;
487 strncpy(data->name, ini_name, 30);
493 data_size =
sizeof(AttachObjectMessage_data_t);
496 data = (AttachObjectMessage_data_t *)
data_ptr;
515 data = (AttachObjectMessage_data_t *)
data_ptr;
547 strncpy(data->name, new_name,
sizeof(data->name));
572 data_size =
sizeof(ReleaseObjectMessage_data_t);
575 data = (ReleaseObjectMessage_data_t *)
data_ptr;
577 strncpy(data->name, ini_name, 30);
583 data_size =
sizeof(ReleaseObjectMessage_data_t);
586 data = (ReleaseObjectMessage_data_t *)
data_ptr;
605 data = (ReleaseObjectMessage_data_t *)
data_ptr;
637 strncpy(data->name, new_name,
sizeof(data->name));
660 data_size =
sizeof(ReleaseAllObjectsMessage_data_t);
663 data = (ReleaseAllObjectsMessage_data_t *)
data_ptr;
681 data = (ReleaseAllObjectsMessage_data_t *)
data_ptr;
711 data_size =
sizeof(MoveObjectMessage_data_t);
714 data = (MoveObjectMessage_data_t *)
data_ptr;
716 strncpy(data->name, ini_name, 30);
728 data_size =
sizeof(MoveObjectMessage_data_t);
731 data = (MoveObjectMessage_data_t *)
data_ptr;
753 data = (MoveObjectMessage_data_t *)
data_ptr;
785 strncpy(data->name, new_name,
sizeof(data->name));
904 data_size =
sizeof(RotateObjectQuatMessage_data_t);
907 data = (RotateObjectQuatMessage_data_t *)
data_ptr;
909 strncpy(data->name, ini_name, 30);
923 data_size =
sizeof(RotateObjectQuatMessage_data_t);
926 data = (RotateObjectQuatMessage_data_t *)
data_ptr;
949 data = (RotateObjectQuatMessage_data_t *)
data_ptr;
981 strncpy(data->name, new_name,
sizeof(data->name));
1129 data_size =
sizeof(RotateObjectMessage_data_t);
1132 data = (RotateObjectMessage_data_t *)
data_ptr;
1134 strncpy(data->name, ini_name, 30);
1146 data_size =
sizeof(RotateObjectMessage_data_t);
1149 data = (RotateObjectMessage_data_t *)
data_ptr;
1171 data = (RotateObjectMessage_data_t *)
data_ptr;
1203 strncpy(data->name, new_name,
sizeof(data->name));
1319 data_size =
sizeof(RenameObjectMessage_data_t);
1322 data = (RenameObjectMessage_data_t *)
data_ptr;
1324 strncpy(data->name, ini_name, 30);
1325 strncpy(data->newName, ini_newName, 30);
1332 data_size =
sizeof(RenameObjectMessage_data_t);
1335 data = (RenameObjectMessage_data_t *)
data_ptr;
1355 data = (RenameObjectMessage_data_t *)
data_ptr;
1387 strncpy(data->name, new_name,
sizeof(data->name));
1397 return data->newName;
1417 strncpy(data->newName, new_newName,
sizeof(data->newName));
size_t maxlenof_x() const
Get maximum length of x value.
void set_name(const char *new_name)
Set name value.
size_t maxlenof_x() const
Get maximum length of x value.
virtual Message * clone() const
Clone this message.
void set_path(const char *new_path)
Set path value.
void * data_ptr
Pointer to memory that contains local data.
RotateObjectQuatMessage Fawkes BlackBoard Interface Message.
virtual Message * clone() const
Clone this message.
Base class for all messages passed through interfaces in Fawkes BlackBoard.
void set_name(const char *new_name)
Set name value.
~RotateObjectQuatMessage()
Destructor.
void set_x(const float new_x)
Set x value.
size_t maxlenof_path() const
Get maximum length of path value.
char * name() const
Get name value.
void set_error_code(const uint32_t new_error_code)
Set error_code value.
~AddObjectMessage()
Destructor.
~RenameObjectMessage()
Destructor.
void set_success(const bool new_success)
Set success value.
ReleaseAllObjectsMessage Fawkes BlackBoard Interface Message.
~ReleaseAllObjectsMessage()
Destructor.
char * name() const
Get name value.
Fawkes library namespace.
Timestamp data, must be present and first entries for each interface data structs! This leans on time...
float y() const
Get y value.
MoveObjectMessage()
Constructor.
uint32_t error_code() const
Get error_code value.
virtual void copy_values(const Interface *other)
Copy values from other interface.
float z() const
Get z value.
void set_final(const bool new_final)
Set final value.
void set_y(const float new_y)
Set y value.
float z() const
Get z value.
char * name() const
Get name value.
char * name() const
Get name value.
size_t maxlenof_name() const
Get maximum length of name value.
virtual Message * clone() const
Clone this message.
void set_z(const float new_z)
Set z value.
char * name() const
Get name value.
Base class for all Fawkes BlackBoard interfaces.
size_t maxlenof_final() const
Get maximum length of final value.
size_t maxlenof_error_code() const
Get maximum length of error_code value.
virtual Message * clone() const
Clone this message.
RotateObjectMessage Fawkes BlackBoard Interface Message.
message_data_ts_t * data_ts
data timestamp aliasing pointer
unsigned int data_size
Size of memory needed to hold all data.
char * name() const
Get name value.
virtual const char * enum_tostring(const char *enumtype, int val) const
Convert arbitrary enum value to string.
void set_x(const float new_x)
Set x value.
size_t maxlenof_z() const
Get maximum length of z value.
RotateObjectQuatMessage()
Constructor.
~MoveObjectMessage()
Destructor.
ReleaseObjectMessage()
Constructor.
void set_y(const float new_y)
Set y value.
size_t maxlenof_name() const
Get maximum length of name value.
virtual Message * clone() const
Clone this message.
bool data_changed
Indicator if data has changed.
size_t maxlenof_y() const
Get maximum length of y value.
~AttachObjectMessage()
Destructor.
AddObjectMessage()
Constructor.
uint32_t msgid() const
Get msgid value.
void set_newName(const char *new_newName)
Set newName value.
void * data_ptr
Pointer to local memory storage.
void set_msgid(const uint32_t new_msgid)
Set msgid value.
virtual bool message_valid(const Message *message) const
Check if message is valid and can be enqueued.
AttachObjectMessage Fawkes BlackBoard Interface Message.
float x() const
Get x value.
bool is_success() const
Get success value.
char * newName() const
Get newName value.
virtual Message * clone() const
Clone this message.
void set_y(const float new_y)
Set y value.
size_t maxlenof_name() const
Get maximum length of name value.
bool is_final() const
Get final value.
float x() const
Get x value.
float x() const
Get x value.
void set_z(const float new_z)
Set z value.
RotateObjectMessage()
Constructor.
float z() const
Get z value.
virtual Message * clone() const
Clone this message.
size_t maxlenof_newName() const
Get maximum length of newName value.
char * path() const
Get path value.
size_t maxlenof_y() const
Get maximum length of y value.
ReleaseObjectMessage Fawkes BlackBoard Interface Message.
void set_x(const float new_x)
Set x value.
size_t maxlenof_name() const
Get maximum length of name value.
~RotateObjectMessage()
Destructor.
void set_z(const float new_z)
Set z value.
void set_name(const char *new_name)
Set name value.
size_t maxlenof_msgid() const
Get maximum length of msgid value.
RenameObjectMessage Fawkes BlackBoard Interface Message.
size_t maxlenof_name() const
Get maximum length of name value.
~ReleaseObjectMessage()
Destructor.
size_t maxlenof_z() const
Get maximum length of z value.
void set_name(const char *new_name)
Set name value.
void set_name(const char *new_name)
Set name value.
RenameObjectMessage()
Constructor.
size_t maxlenof_z() const
Get maximum length of z value.
size_t maxlenof_x() const
Get maximum length of x value.
void add_fieldinfo(interface_fieldtype_t type, const char *name, size_t length, void *value, const char *enumtype=0)
Add an entry to the info list.
void set_name(const char *new_name)
Set name value.
float y() const
Get y value.
char * name() const
Get name value.
size_t maxlenof_w() const
Get maximum length of w value.
void set_name(const char *new_name)
Set name value.
float y() const
Get y value.
float w() const
Get w value.
~DeleteObjectMessage()
Destructor.
virtual Message * clone() const
Clone this message.
size_t maxlenof_y() const
Get maximum length of y value.
DeleteObjectMessage()
Constructor.
virtual Message * create_message(const char *type) const
Create message based on type name.
void set_name(const char *new_name)
Set name value.
size_t maxlenof_name() const
Get maximum length of name value.
DeleteObjectMessage Fawkes BlackBoard Interface Message.
AttachObjectMessage()
Constructor.
void set_w(const float new_w)
Set w value.
const char * type() const
Get type of interface.
MoveObjectMessage Fawkes BlackBoard Interface Message.
size_t maxlenof_success() const
Get maximum length of success value.
virtual Message * clone() const
Clone this message.
ReleaseAllObjectsMessage()
Constructor.
32 bit unsigned integer field
size_t maxlenof_name() const
Get maximum length of name value.
OpenRaveInterface Fawkes BlackBoard Interface.
char * name() const
Get name value.
size_t maxlenof_name() const
Get maximum length of name value.
AddObjectMessage Fawkes BlackBoard Interface Message.