24 #include <interfaces/FacialExpressionInterface.h>
26 #include <core/exceptions/software.h>
46 FacialExpressionInterface::FacialExpressionInterface() : Interface()
48 data_size =
sizeof(FacialExpressionInterface_data_t);
50 data = (FacialExpressionInterface_data_t *)
data_ptr;
53 enum_map_brows_t[(int)BROWS_DEFAULT] =
"BROWS_DEFAULT";
54 enum_map_brows_t[(int)BROWS_FROWN] =
"BROWS_FROWN";
55 enum_map_brows_t[(int)BROWS_LIFT] =
"BROWS_LIFT";
56 enum_map_eyes_t[(int)EYES_DEFAULT] =
"EYES_DEFAULT";
57 enum_map_eyes_t[(int)EYES_UP] =
"EYES_UP";
58 enum_map_eyes_t[(int)EYES_DOWN] =
"EYES_DOWN";
59 enum_map_eyes_t[(int)EYES_LEFT] =
"EYES_LEFT";
60 enum_map_eyes_t[(int)EYES_RIGHT] =
"EYES_RIGHT";
61 enum_map_eyes_t[(int)EYES_COOL] =
"EYES_COOL";
62 enum_map_eyes_t[(int)EYES_CROSS] =
"EYES_CROSS";
63 enum_map_eyes_t[(int)EYES_HEART] =
"EYES_HEART";
64 enum_map_eyes_t[(int)EYES_DOLLAR] =
"EYES_DOLLAR";
65 enum_map_jowl_t[(int)JOWL_DEFAULT] =
"JOWL_DEFAULT";
66 enum_map_jowl_t[(int)JOWL_BLUSH] =
"JOWL_BLUSH";
67 enum_map_jowl_t[(int)JOWL_TEARS] =
"JOWL_TEARS";
68 enum_map_mouth_t[(int)MOUTH_DEFAULT] =
"MOUTH_DEFAULT";
69 enum_map_mouth_t[(int)MOUTH_OPEN] =
"MOUTH_OPEN";
70 enum_map_mouth_t[(int)MOUTH_CLOSE] =
"MOUTH_CLOSE";
71 enum_map_mouth_t[(int)MOUTH_SMILE] =
"MOUTH_SMILE";
72 enum_map_mouth_t[(int)MOUTH_SCOWL] =
"MOUTH_SCOWL";
81 unsigned char tmp_hash[] = {0x1, 0xbd, 0xc6, 0x65, 0xb3, 0x10, 0xcb, 0x5f, 0xe8, 0x78, 0xdd, 0x6, 0xe, 0x82, 0x7f, 0x80};
86 FacialExpressionInterface::~FacialExpressionInterface()
98 case BROWS_DEFAULT:
return "BROWS_DEFAULT";
99 case BROWS_FROWN:
return "BROWS_FROWN";
100 case BROWS_LIFT:
return "BROWS_LIFT";
101 default:
return "UNKNOWN";
112 case EYES_DEFAULT:
return "EYES_DEFAULT";
113 case EYES_UP:
return "EYES_UP";
114 case EYES_DOWN:
return "EYES_DOWN";
115 case EYES_LEFT:
return "EYES_LEFT";
116 case EYES_RIGHT:
return "EYES_RIGHT";
117 case EYES_COOL:
return "EYES_COOL";
118 case EYES_CROSS:
return "EYES_CROSS";
119 case EYES_HEART:
return "EYES_HEART";
120 case EYES_DOLLAR:
return "EYES_DOLLAR";
121 default:
return "UNKNOWN";
132 case JOWL_DEFAULT:
return "JOWL_DEFAULT";
133 case JOWL_BLUSH:
return "JOWL_BLUSH";
134 case JOWL_TEARS:
return "JOWL_TEARS";
135 default:
return "UNKNOWN";
146 case MOUTH_DEFAULT:
return "MOUTH_DEFAULT";
147 case MOUTH_OPEN:
return "MOUTH_OPEN";
148 case MOUTH_CLOSE:
return "MOUTH_CLOSE";
149 case MOUTH_SMILE:
return "MOUTH_SMILE";
150 case MOUTH_SCOWL:
return "MOUTH_SCOWL";
151 default:
return "UNKNOWN";
279 if ( strncmp(
"MoveBrowsMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
281 }
else if ( strncmp(
"MoveEyesMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
283 }
else if ( strncmp(
"MoveJowlMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
285 }
else if ( strncmp(
"MoveMouthMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
289 "message type for this interface type.",
type);
305 memcpy(data, oi->data,
sizeof(FacialExpressionInterface_data_t));
311 if (strcmp(enumtype,
"brows_t") == 0) {
312 return tostring_brows_t((
brows_t)val);
314 if (strcmp(enumtype,
"eyes_t") == 0) {
315 return tostring_eyes_t((
eyes_t)val);
317 if (strcmp(enumtype,
"jowl_t") == 0) {
318 return tostring_jowl_t((
jowl_t)val);
320 if (strcmp(enumtype,
"mouth_t") == 0) {
321 return tostring_mouth_t((
mouth_t)val);
339 data_size =
sizeof(MoveBrowsMessage_data_t);
342 data = (MoveBrowsMessage_data_t *)
data_ptr;
344 data->brows_action = ini_brows_action;
346 enum_map_brows_t[(int)
BROWS_FROWN] =
"BROWS_FROWN";
347 enum_map_brows_t[(int)
BROWS_LIFT] =
"BROWS_LIFT";
349 enum_map_eyes_t[(int)
EYES_UP] =
"EYES_UP";
350 enum_map_eyes_t[(int)
EYES_DOWN] =
"EYES_DOWN";
351 enum_map_eyes_t[(int)
EYES_LEFT] =
"EYES_LEFT";
352 enum_map_eyes_t[(int)
EYES_RIGHT] =
"EYES_RIGHT";
353 enum_map_eyes_t[(int)
EYES_COOL] =
"EYES_COOL";
354 enum_map_eyes_t[(int)
EYES_CROSS] =
"EYES_CROSS";
355 enum_map_eyes_t[(int)
EYES_HEART] =
"EYES_HEART";
358 enum_map_jowl_t[(int)
JOWL_BLUSH] =
"JOWL_BLUSH";
359 enum_map_jowl_t[(int)
JOWL_TEARS] =
"JOWL_TEARS";
361 enum_map_mouth_t[(int)
MOUTH_OPEN] =
"MOUTH_OPEN";
362 enum_map_mouth_t[(int)
MOUTH_CLOSE] =
"MOUTH_CLOSE";
363 enum_map_mouth_t[(int)
MOUTH_SMILE] =
"MOUTH_SMILE";
364 enum_map_mouth_t[(int)
MOUTH_SCOWL] =
"MOUTH_SCOWL";
370 data_size =
sizeof(MoveBrowsMessage_data_t);
373 data = (MoveBrowsMessage_data_t *)
data_ptr;
376 enum_map_brows_t[(int)
BROWS_FROWN] =
"BROWS_FROWN";
377 enum_map_brows_t[(int)
BROWS_LIFT] =
"BROWS_LIFT";
379 enum_map_eyes_t[(int)
EYES_UP] =
"EYES_UP";
380 enum_map_eyes_t[(int)
EYES_DOWN] =
"EYES_DOWN";
381 enum_map_eyes_t[(int)
EYES_LEFT] =
"EYES_LEFT";
382 enum_map_eyes_t[(int)
EYES_RIGHT] =
"EYES_RIGHT";
383 enum_map_eyes_t[(int)
EYES_COOL] =
"EYES_COOL";
384 enum_map_eyes_t[(int)
EYES_CROSS] =
"EYES_CROSS";
385 enum_map_eyes_t[(int)
EYES_HEART] =
"EYES_HEART";
388 enum_map_jowl_t[(int)
JOWL_BLUSH] =
"JOWL_BLUSH";
389 enum_map_jowl_t[(int)
JOWL_TEARS] =
"JOWL_TEARS";
391 enum_map_mouth_t[(int)
MOUTH_OPEN] =
"MOUTH_OPEN";
392 enum_map_mouth_t[(int)
MOUTH_CLOSE] =
"MOUTH_CLOSE";
393 enum_map_mouth_t[(int)
MOUTH_SMILE] =
"MOUTH_SMILE";
394 enum_map_mouth_t[(int)
MOUTH_SCOWL] =
"MOUTH_SCOWL";
412 data = (MoveBrowsMessage_data_t *)
data_ptr;
469 data_size =
sizeof(MoveEyesMessage_data_t);
472 data = (MoveEyesMessage_data_t *)
data_ptr;
474 data->eyes_action = ini_eyes_action;
476 enum_map_brows_t[(int)
BROWS_FROWN] =
"BROWS_FROWN";
477 enum_map_brows_t[(int)
BROWS_LIFT] =
"BROWS_LIFT";
479 enum_map_eyes_t[(int)
EYES_UP] =
"EYES_UP";
480 enum_map_eyes_t[(int)
EYES_DOWN] =
"EYES_DOWN";
481 enum_map_eyes_t[(int)
EYES_LEFT] =
"EYES_LEFT";
482 enum_map_eyes_t[(int)
EYES_RIGHT] =
"EYES_RIGHT";
483 enum_map_eyes_t[(int)
EYES_COOL] =
"EYES_COOL";
484 enum_map_eyes_t[(int)
EYES_CROSS] =
"EYES_CROSS";
485 enum_map_eyes_t[(int)
EYES_HEART] =
"EYES_HEART";
488 enum_map_jowl_t[(int)
JOWL_BLUSH] =
"JOWL_BLUSH";
489 enum_map_jowl_t[(int)
JOWL_TEARS] =
"JOWL_TEARS";
491 enum_map_mouth_t[(int)
MOUTH_OPEN] =
"MOUTH_OPEN";
492 enum_map_mouth_t[(int)
MOUTH_CLOSE] =
"MOUTH_CLOSE";
493 enum_map_mouth_t[(int)
MOUTH_SMILE] =
"MOUTH_SMILE";
494 enum_map_mouth_t[(int)
MOUTH_SCOWL] =
"MOUTH_SCOWL";
500 data_size =
sizeof(MoveEyesMessage_data_t);
503 data = (MoveEyesMessage_data_t *)
data_ptr;
506 enum_map_brows_t[(int)
BROWS_FROWN] =
"BROWS_FROWN";
507 enum_map_brows_t[(int)
BROWS_LIFT] =
"BROWS_LIFT";
509 enum_map_eyes_t[(int)
EYES_UP] =
"EYES_UP";
510 enum_map_eyes_t[(int)
EYES_DOWN] =
"EYES_DOWN";
511 enum_map_eyes_t[(int)
EYES_LEFT] =
"EYES_LEFT";
512 enum_map_eyes_t[(int)
EYES_RIGHT] =
"EYES_RIGHT";
513 enum_map_eyes_t[(int)
EYES_COOL] =
"EYES_COOL";
514 enum_map_eyes_t[(int)
EYES_CROSS] =
"EYES_CROSS";
515 enum_map_eyes_t[(int)
EYES_HEART] =
"EYES_HEART";
518 enum_map_jowl_t[(int)
JOWL_BLUSH] =
"JOWL_BLUSH";
519 enum_map_jowl_t[(int)
JOWL_TEARS] =
"JOWL_TEARS";
521 enum_map_mouth_t[(int)
MOUTH_OPEN] =
"MOUTH_OPEN";
522 enum_map_mouth_t[(int)
MOUTH_CLOSE] =
"MOUTH_CLOSE";
523 enum_map_mouth_t[(int)
MOUTH_SMILE] =
"MOUTH_SMILE";
524 enum_map_mouth_t[(int)
MOUTH_SCOWL] =
"MOUTH_SCOWL";
542 data = (MoveEyesMessage_data_t *)
data_ptr;
599 data_size =
sizeof(MoveJowlMessage_data_t);
602 data = (MoveJowlMessage_data_t *)
data_ptr;
604 data->jowl_action = ini_jowl_action;
606 enum_map_brows_t[(int)
BROWS_FROWN] =
"BROWS_FROWN";
607 enum_map_brows_t[(int)
BROWS_LIFT] =
"BROWS_LIFT";
609 enum_map_eyes_t[(int)
EYES_UP] =
"EYES_UP";
610 enum_map_eyes_t[(int)
EYES_DOWN] =
"EYES_DOWN";
611 enum_map_eyes_t[(int)
EYES_LEFT] =
"EYES_LEFT";
612 enum_map_eyes_t[(int)
EYES_RIGHT] =
"EYES_RIGHT";
613 enum_map_eyes_t[(int)
EYES_COOL] =
"EYES_COOL";
614 enum_map_eyes_t[(int)
EYES_CROSS] =
"EYES_CROSS";
615 enum_map_eyes_t[(int)
EYES_HEART] =
"EYES_HEART";
618 enum_map_jowl_t[(int)
JOWL_BLUSH] =
"JOWL_BLUSH";
619 enum_map_jowl_t[(int)
JOWL_TEARS] =
"JOWL_TEARS";
621 enum_map_mouth_t[(int)
MOUTH_OPEN] =
"MOUTH_OPEN";
622 enum_map_mouth_t[(int)
MOUTH_CLOSE] =
"MOUTH_CLOSE";
623 enum_map_mouth_t[(int)
MOUTH_SMILE] =
"MOUTH_SMILE";
624 enum_map_mouth_t[(int)
MOUTH_SCOWL] =
"MOUTH_SCOWL";
630 data_size =
sizeof(MoveJowlMessage_data_t);
633 data = (MoveJowlMessage_data_t *)
data_ptr;
636 enum_map_brows_t[(int)
BROWS_FROWN] =
"BROWS_FROWN";
637 enum_map_brows_t[(int)
BROWS_LIFT] =
"BROWS_LIFT";
639 enum_map_eyes_t[(int)
EYES_UP] =
"EYES_UP";
640 enum_map_eyes_t[(int)
EYES_DOWN] =
"EYES_DOWN";
641 enum_map_eyes_t[(int)
EYES_LEFT] =
"EYES_LEFT";
642 enum_map_eyes_t[(int)
EYES_RIGHT] =
"EYES_RIGHT";
643 enum_map_eyes_t[(int)
EYES_COOL] =
"EYES_COOL";
644 enum_map_eyes_t[(int)
EYES_CROSS] =
"EYES_CROSS";
645 enum_map_eyes_t[(int)
EYES_HEART] =
"EYES_HEART";
648 enum_map_jowl_t[(int)
JOWL_BLUSH] =
"JOWL_BLUSH";
649 enum_map_jowl_t[(int)
JOWL_TEARS] =
"JOWL_TEARS";
651 enum_map_mouth_t[(int)
MOUTH_OPEN] =
"MOUTH_OPEN";
652 enum_map_mouth_t[(int)
MOUTH_CLOSE] =
"MOUTH_CLOSE";
653 enum_map_mouth_t[(int)
MOUTH_SMILE] =
"MOUTH_SMILE";
654 enum_map_mouth_t[(int)
MOUTH_SCOWL] =
"MOUTH_SCOWL";
672 data = (MoveJowlMessage_data_t *)
data_ptr;
729 data_size =
sizeof(MoveMouthMessage_data_t);
732 data = (MoveMouthMessage_data_t *)
data_ptr;
734 data->mouth_action = ini_mouth_action;
736 enum_map_brows_t[(int)
BROWS_FROWN] =
"BROWS_FROWN";
737 enum_map_brows_t[(int)
BROWS_LIFT] =
"BROWS_LIFT";
739 enum_map_eyes_t[(int)
EYES_UP] =
"EYES_UP";
740 enum_map_eyes_t[(int)
EYES_DOWN] =
"EYES_DOWN";
741 enum_map_eyes_t[(int)
EYES_LEFT] =
"EYES_LEFT";
742 enum_map_eyes_t[(int)
EYES_RIGHT] =
"EYES_RIGHT";
743 enum_map_eyes_t[(int)
EYES_COOL] =
"EYES_COOL";
744 enum_map_eyes_t[(int)
EYES_CROSS] =
"EYES_CROSS";
745 enum_map_eyes_t[(int)
EYES_HEART] =
"EYES_HEART";
748 enum_map_jowl_t[(int)
JOWL_BLUSH] =
"JOWL_BLUSH";
749 enum_map_jowl_t[(int)
JOWL_TEARS] =
"JOWL_TEARS";
751 enum_map_mouth_t[(int)
MOUTH_OPEN] =
"MOUTH_OPEN";
752 enum_map_mouth_t[(int)
MOUTH_CLOSE] =
"MOUTH_CLOSE";
753 enum_map_mouth_t[(int)
MOUTH_SMILE] =
"MOUTH_SMILE";
754 enum_map_mouth_t[(int)
MOUTH_SCOWL] =
"MOUTH_SCOWL";
760 data_size =
sizeof(MoveMouthMessage_data_t);
763 data = (MoveMouthMessage_data_t *)
data_ptr;
766 enum_map_brows_t[(int)
BROWS_FROWN] =
"BROWS_FROWN";
767 enum_map_brows_t[(int)
BROWS_LIFT] =
"BROWS_LIFT";
769 enum_map_eyes_t[(int)
EYES_UP] =
"EYES_UP";
770 enum_map_eyes_t[(int)
EYES_DOWN] =
"EYES_DOWN";
771 enum_map_eyes_t[(int)
EYES_LEFT] =
"EYES_LEFT";
772 enum_map_eyes_t[(int)
EYES_RIGHT] =
"EYES_RIGHT";
773 enum_map_eyes_t[(int)
EYES_COOL] =
"EYES_COOL";
774 enum_map_eyes_t[(int)
EYES_CROSS] =
"EYES_CROSS";
775 enum_map_eyes_t[(int)
EYES_HEART] =
"EYES_HEART";
778 enum_map_jowl_t[(int)
JOWL_BLUSH] =
"JOWL_BLUSH";
779 enum_map_jowl_t[(int)
JOWL_TEARS] =
"JOWL_TEARS";
781 enum_map_mouth_t[(int)
MOUTH_OPEN] =
"MOUTH_OPEN";
782 enum_map_mouth_t[(int)
MOUTH_CLOSE] =
"MOUTH_CLOSE";
783 enum_map_mouth_t[(int)
MOUTH_SMILE] =
"MOUTH_SMILE";
784 enum_map_mouth_t[(int)
MOUTH_SCOWL] =
"MOUTH_SCOWL";
802 data = (MoveMouthMessage_data_t *)
data_ptr;