24 #include <interfaces/HumanSkeletonProjectionInterface.h> 26 #include <core/exceptions/software.h> 48 HumanSkeletonProjectionInterface::HumanSkeletonProjectionInterface() : Interface()
50 data_size =
sizeof(HumanSkeletonProjectionInterface_data_t);
51 data_ptr = malloc(data_size);
52 data = (HumanSkeletonProjectionInterface_data_t *)data_ptr;
53 data_ts = (interface_data_ts_t *)data_ptr;
54 memset(data_ptr, 0, data_size);
55 add_fieldinfo(IFT_FLOAT,
"horizontal_fov", 1, &data->horizontal_fov);
56 add_fieldinfo(IFT_FLOAT,
"vertical_fov", 1, &data->vertical_fov);
57 add_fieldinfo(IFT_UINT32,
"res_x", 1, &data->res_x);
58 add_fieldinfo(IFT_UINT32,
"res_y", 1, &data->res_y);
59 add_fieldinfo(IFT_UINT16,
"max_depth", 1, &data->max_depth);
60 add_fieldinfo(IFT_FLOAT,
"proj_com", 2, &data->proj_com);
61 add_fieldinfo(IFT_FLOAT,
"proj_head", 2, &data->proj_head);
62 add_fieldinfo(IFT_FLOAT,
"proj_neck", 2, &data->proj_neck);
63 add_fieldinfo(IFT_FLOAT,
"proj_torso", 2, &data->proj_torso);
64 add_fieldinfo(IFT_FLOAT,
"proj_waist", 2, &data->proj_waist);
65 add_fieldinfo(IFT_FLOAT,
"proj_left_collar", 2, &data->proj_left_collar);
66 add_fieldinfo(IFT_FLOAT,
"proj_left_shoulder", 2, &data->proj_left_shoulder);
67 add_fieldinfo(IFT_FLOAT,
"proj_left_elbow", 2, &data->proj_left_elbow);
68 add_fieldinfo(IFT_FLOAT,
"proj_left_wrist", 2, &data->proj_left_wrist);
69 add_fieldinfo(IFT_FLOAT,
"proj_left_hand", 2, &data->proj_left_hand);
70 add_fieldinfo(IFT_FLOAT,
"proj_left_fingertip", 2, &data->proj_left_fingertip);
71 add_fieldinfo(IFT_FLOAT,
"proj_right_collar", 2, &data->proj_right_collar);
72 add_fieldinfo(IFT_FLOAT,
"proj_right_shoulder", 2, &data->proj_right_shoulder);
73 add_fieldinfo(IFT_FLOAT,
"proj_right_elbow", 2, &data->proj_right_elbow);
74 add_fieldinfo(IFT_FLOAT,
"proj_right_wrist", 2, &data->proj_right_wrist);
75 add_fieldinfo(IFT_FLOAT,
"proj_right_hand", 2, &data->proj_right_hand);
76 add_fieldinfo(IFT_FLOAT,
"proj_right_fingertip", 2, &data->proj_right_fingertip);
77 add_fieldinfo(IFT_FLOAT,
"proj_left_hip", 2, &data->proj_left_hip);
78 add_fieldinfo(IFT_FLOAT,
"proj_left_knee", 2, &data->proj_left_knee);
79 add_fieldinfo(IFT_FLOAT,
"proj_left_ankle", 2, &data->proj_left_ankle);
80 add_fieldinfo(IFT_FLOAT,
"proj_left_foot", 2, &data->proj_left_foot);
81 add_fieldinfo(IFT_FLOAT,
"proj_right_hip", 2, &data->proj_right_hip);
82 add_fieldinfo(IFT_FLOAT,
"proj_right_knee", 2, &data->proj_right_knee);
83 add_fieldinfo(IFT_FLOAT,
"proj_right_ankle", 2, &data->proj_right_ankle);
84 add_fieldinfo(IFT_FLOAT,
"proj_right_foot", 2, &data->proj_right_foot);
85 unsigned char tmp_hash[] = {0x71, 0xb2, 0x40, 0x3e, 0xa, 0x85, 0xd5, 0xcc, 0x77, 0xeb, 0xf2, 0xf1, 0xa9, 0x9c, 0xec, 0xf3};
90 HumanSkeletonProjectionInterface::~HumanSkeletonProjectionInterface()
100 HumanSkeletonProjectionInterface::horizontal_fov()
const 102 return data->horizontal_fov;
110 HumanSkeletonProjectionInterface::maxlenof_horizontal_fov()
const 120 HumanSkeletonProjectionInterface::set_horizontal_fov(
const float new_horizontal_fov)
122 data->horizontal_fov = new_horizontal_fov;
131 HumanSkeletonProjectionInterface::vertical_fov()
const 133 return data->vertical_fov;
141 HumanSkeletonProjectionInterface::maxlenof_vertical_fov()
const 151 HumanSkeletonProjectionInterface::set_vertical_fov(
const float new_vertical_fov)
153 data->vertical_fov = new_vertical_fov;
162 HumanSkeletonProjectionInterface::res_x()
const 172 HumanSkeletonProjectionInterface::maxlenof_res_x()
const 182 HumanSkeletonProjectionInterface::set_res_x(
const uint32_t new_res_x)
184 data->res_x = new_res_x;
193 HumanSkeletonProjectionInterface::res_y()
const 203 HumanSkeletonProjectionInterface::maxlenof_res_y()
const 213 HumanSkeletonProjectionInterface::set_res_y(
const uint32_t new_res_y)
215 data->res_y = new_res_y;
224 HumanSkeletonProjectionInterface::max_depth()
const 226 return data->max_depth;
234 HumanSkeletonProjectionInterface::maxlenof_max_depth()
const 244 HumanSkeletonProjectionInterface::set_max_depth(
const uint16_t new_max_depth)
246 data->max_depth = new_max_depth;
255 HumanSkeletonProjectionInterface::proj_com()
const 257 return data->proj_com;
267 HumanSkeletonProjectionInterface::proj_com(
unsigned int index)
const 270 throw Exception(
"Index value %u out of bounds (0..2)", index);
272 return data->proj_com[index];
280 HumanSkeletonProjectionInterface::maxlenof_proj_com()
const 290 HumanSkeletonProjectionInterface::set_proj_com(
const float * new_proj_com)
292 memcpy(data->proj_com, new_proj_com,
sizeof(
float) * 2);
302 HumanSkeletonProjectionInterface::set_proj_com(
unsigned int index,
const float new_proj_com)
305 throw Exception(
"Index value %u out of bounds (0..2)", index);
307 data->proj_com[index] = new_proj_com;
315 HumanSkeletonProjectionInterface::proj_head()
const 317 return data->proj_head;
327 HumanSkeletonProjectionInterface::proj_head(
unsigned int index)
const 330 throw Exception(
"Index value %u out of bounds (0..2)", index);
332 return data->proj_head[index];
340 HumanSkeletonProjectionInterface::maxlenof_proj_head()
const 350 HumanSkeletonProjectionInterface::set_proj_head(
const float * new_proj_head)
352 memcpy(data->proj_head, new_proj_head,
sizeof(
float) * 2);
362 HumanSkeletonProjectionInterface::set_proj_head(
unsigned int index,
const float new_proj_head)
365 throw Exception(
"Index value %u out of bounds (0..2)", index);
367 data->proj_head[index] = new_proj_head;
375 HumanSkeletonProjectionInterface::proj_neck()
const 377 return data->proj_neck;
387 HumanSkeletonProjectionInterface::proj_neck(
unsigned int index)
const 390 throw Exception(
"Index value %u out of bounds (0..2)", index);
392 return data->proj_neck[index];
400 HumanSkeletonProjectionInterface::maxlenof_proj_neck()
const 410 HumanSkeletonProjectionInterface::set_proj_neck(
const float * new_proj_neck)
412 memcpy(data->proj_neck, new_proj_neck,
sizeof(
float) * 2);
422 HumanSkeletonProjectionInterface::set_proj_neck(
unsigned int index,
const float new_proj_neck)
425 throw Exception(
"Index value %u out of bounds (0..2)", index);
427 data->proj_neck[index] = new_proj_neck;
435 HumanSkeletonProjectionInterface::proj_torso()
const 437 return data->proj_torso;
447 HumanSkeletonProjectionInterface::proj_torso(
unsigned int index)
const 450 throw Exception(
"Index value %u out of bounds (0..2)", index);
452 return data->proj_torso[index];
460 HumanSkeletonProjectionInterface::maxlenof_proj_torso()
const 470 HumanSkeletonProjectionInterface::set_proj_torso(
const float * new_proj_torso)
472 memcpy(data->proj_torso, new_proj_torso,
sizeof(
float) * 2);
482 HumanSkeletonProjectionInterface::set_proj_torso(
unsigned int index,
const float new_proj_torso)
485 throw Exception(
"Index value %u out of bounds (0..2)", index);
487 data->proj_torso[index] = new_proj_torso;
495 HumanSkeletonProjectionInterface::proj_waist()
const 497 return data->proj_waist;
507 HumanSkeletonProjectionInterface::proj_waist(
unsigned int index)
const 510 throw Exception(
"Index value %u out of bounds (0..2)", index);
512 return data->proj_waist[index];
520 HumanSkeletonProjectionInterface::maxlenof_proj_waist()
const 530 HumanSkeletonProjectionInterface::set_proj_waist(
const float * new_proj_waist)
532 memcpy(data->proj_waist, new_proj_waist,
sizeof(
float) * 2);
542 HumanSkeletonProjectionInterface::set_proj_waist(
unsigned int index,
const float new_proj_waist)
545 throw Exception(
"Index value %u out of bounds (0..2)", index);
547 data->proj_waist[index] = new_proj_waist;
556 HumanSkeletonProjectionInterface::proj_left_collar()
const 558 return data->proj_left_collar;
569 HumanSkeletonProjectionInterface::proj_left_collar(
unsigned int index)
const 572 throw Exception(
"Index value %u out of bounds (0..2)", index);
574 return data->proj_left_collar[index];
582 HumanSkeletonProjectionInterface::maxlenof_proj_left_collar()
const 593 HumanSkeletonProjectionInterface::set_proj_left_collar(
const float * new_proj_left_collar)
595 memcpy(data->proj_left_collar, new_proj_left_collar,
sizeof(
float) * 2);
606 HumanSkeletonProjectionInterface::set_proj_left_collar(
unsigned int index,
const float new_proj_left_collar)
609 throw Exception(
"Index value %u out of bounds (0..2)", index);
611 data->proj_left_collar[index] = new_proj_left_collar;
620 HumanSkeletonProjectionInterface::proj_left_shoulder()
const 622 return data->proj_left_shoulder;
633 HumanSkeletonProjectionInterface::proj_left_shoulder(
unsigned int index)
const 636 throw Exception(
"Index value %u out of bounds (0..2)", index);
638 return data->proj_left_shoulder[index];
646 HumanSkeletonProjectionInterface::maxlenof_proj_left_shoulder()
const 657 HumanSkeletonProjectionInterface::set_proj_left_shoulder(
const float * new_proj_left_shoulder)
659 memcpy(data->proj_left_shoulder, new_proj_left_shoulder,
sizeof(
float) * 2);
670 HumanSkeletonProjectionInterface::set_proj_left_shoulder(
unsigned int index,
const float new_proj_left_shoulder)
673 throw Exception(
"Index value %u out of bounds (0..2)", index);
675 data->proj_left_shoulder[index] = new_proj_left_shoulder;
684 HumanSkeletonProjectionInterface::proj_left_elbow()
const 686 return data->proj_left_elbow;
697 HumanSkeletonProjectionInterface::proj_left_elbow(
unsigned int index)
const 700 throw Exception(
"Index value %u out of bounds (0..2)", index);
702 return data->proj_left_elbow[index];
710 HumanSkeletonProjectionInterface::maxlenof_proj_left_elbow()
const 721 HumanSkeletonProjectionInterface::set_proj_left_elbow(
const float * new_proj_left_elbow)
723 memcpy(data->proj_left_elbow, new_proj_left_elbow,
sizeof(
float) * 2);
734 HumanSkeletonProjectionInterface::set_proj_left_elbow(
unsigned int index,
const float new_proj_left_elbow)
737 throw Exception(
"Index value %u out of bounds (0..2)", index);
739 data->proj_left_elbow[index] = new_proj_left_elbow;
748 HumanSkeletonProjectionInterface::proj_left_wrist()
const 750 return data->proj_left_wrist;
761 HumanSkeletonProjectionInterface::proj_left_wrist(
unsigned int index)
const 764 throw Exception(
"Index value %u out of bounds (0..2)", index);
766 return data->proj_left_wrist[index];
774 HumanSkeletonProjectionInterface::maxlenof_proj_left_wrist()
const 785 HumanSkeletonProjectionInterface::set_proj_left_wrist(
const float * new_proj_left_wrist)
787 memcpy(data->proj_left_wrist, new_proj_left_wrist,
sizeof(
float) * 2);
798 HumanSkeletonProjectionInterface::set_proj_left_wrist(
unsigned int index,
const float new_proj_left_wrist)
801 throw Exception(
"Index value %u out of bounds (0..2)", index);
803 data->proj_left_wrist[index] = new_proj_left_wrist;
812 HumanSkeletonProjectionInterface::proj_left_hand()
const 814 return data->proj_left_hand;
825 HumanSkeletonProjectionInterface::proj_left_hand(
unsigned int index)
const 828 throw Exception(
"Index value %u out of bounds (0..2)", index);
830 return data->proj_left_hand[index];
838 HumanSkeletonProjectionInterface::maxlenof_proj_left_hand()
const 849 HumanSkeletonProjectionInterface::set_proj_left_hand(
const float * new_proj_left_hand)
851 memcpy(data->proj_left_hand, new_proj_left_hand,
sizeof(
float) * 2);
862 HumanSkeletonProjectionInterface::set_proj_left_hand(
unsigned int index,
const float new_proj_left_hand)
865 throw Exception(
"Index value %u out of bounds (0..2)", index);
867 data->proj_left_hand[index] = new_proj_left_hand;
876 HumanSkeletonProjectionInterface::proj_left_fingertip()
const 878 return data->proj_left_fingertip;
889 HumanSkeletonProjectionInterface::proj_left_fingertip(
unsigned int index)
const 892 throw Exception(
"Index value %u out of bounds (0..2)", index);
894 return data->proj_left_fingertip[index];
902 HumanSkeletonProjectionInterface::maxlenof_proj_left_fingertip()
const 913 HumanSkeletonProjectionInterface::set_proj_left_fingertip(
const float * new_proj_left_fingertip)
915 memcpy(data->proj_left_fingertip, new_proj_left_fingertip,
sizeof(
float) * 2);
926 HumanSkeletonProjectionInterface::set_proj_left_fingertip(
unsigned int index,
const float new_proj_left_fingertip)
929 throw Exception(
"Index value %u out of bounds (0..2)", index);
931 data->proj_left_fingertip[index] = new_proj_left_fingertip;
940 HumanSkeletonProjectionInterface::proj_right_collar()
const 942 return data->proj_right_collar;
953 HumanSkeletonProjectionInterface::proj_right_collar(
unsigned int index)
const 956 throw Exception(
"Index value %u out of bounds (0..2)", index);
958 return data->proj_right_collar[index];
966 HumanSkeletonProjectionInterface::maxlenof_proj_right_collar()
const 977 HumanSkeletonProjectionInterface::set_proj_right_collar(
const float * new_proj_right_collar)
979 memcpy(data->proj_right_collar, new_proj_right_collar,
sizeof(
float) * 2);
990 HumanSkeletonProjectionInterface::set_proj_right_collar(
unsigned int index,
const float new_proj_right_collar)
993 throw Exception(
"Index value %u out of bounds (0..2)", index);
995 data->proj_right_collar[index] = new_proj_right_collar;
1004 HumanSkeletonProjectionInterface::proj_right_shoulder()
const 1006 return data->proj_right_shoulder;
1017 HumanSkeletonProjectionInterface::proj_right_shoulder(
unsigned int index)
const 1020 throw Exception(
"Index value %u out of bounds (0..2)", index);
1022 return data->proj_right_shoulder[index];
1030 HumanSkeletonProjectionInterface::maxlenof_proj_right_shoulder()
const 1041 HumanSkeletonProjectionInterface::set_proj_right_shoulder(
const float * new_proj_right_shoulder)
1043 memcpy(data->proj_right_shoulder, new_proj_right_shoulder,
sizeof(
float) * 2);
1044 data_changed =
true;
1054 HumanSkeletonProjectionInterface::set_proj_right_shoulder(
unsigned int index,
const float new_proj_right_shoulder)
1057 throw Exception(
"Index value %u out of bounds (0..2)", index);
1059 data->proj_right_shoulder[index] = new_proj_right_shoulder;
1060 data_changed =
true;
1068 HumanSkeletonProjectionInterface::proj_right_elbow()
const 1070 return data->proj_right_elbow;
1081 HumanSkeletonProjectionInterface::proj_right_elbow(
unsigned int index)
const 1084 throw Exception(
"Index value %u out of bounds (0..2)", index);
1086 return data->proj_right_elbow[index];
1094 HumanSkeletonProjectionInterface::maxlenof_proj_right_elbow()
const 1105 HumanSkeletonProjectionInterface::set_proj_right_elbow(
const float * new_proj_right_elbow)
1107 memcpy(data->proj_right_elbow, new_proj_right_elbow,
sizeof(
float) * 2);
1108 data_changed =
true;
1118 HumanSkeletonProjectionInterface::set_proj_right_elbow(
unsigned int index,
const float new_proj_right_elbow)
1121 throw Exception(
"Index value %u out of bounds (0..2)", index);
1123 data->proj_right_elbow[index] = new_proj_right_elbow;
1124 data_changed =
true;
1132 HumanSkeletonProjectionInterface::proj_right_wrist()
const 1134 return data->proj_right_wrist;
1145 HumanSkeletonProjectionInterface::proj_right_wrist(
unsigned int index)
const 1148 throw Exception(
"Index value %u out of bounds (0..2)", index);
1150 return data->proj_right_wrist[index];
1158 HumanSkeletonProjectionInterface::maxlenof_proj_right_wrist()
const 1169 HumanSkeletonProjectionInterface::set_proj_right_wrist(
const float * new_proj_right_wrist)
1171 memcpy(data->proj_right_wrist, new_proj_right_wrist,
sizeof(
float) * 2);
1172 data_changed =
true;
1182 HumanSkeletonProjectionInterface::set_proj_right_wrist(
unsigned int index,
const float new_proj_right_wrist)
1185 throw Exception(
"Index value %u out of bounds (0..2)", index);
1187 data->proj_right_wrist[index] = new_proj_right_wrist;
1188 data_changed =
true;
1196 HumanSkeletonProjectionInterface::proj_right_hand()
const 1198 return data->proj_right_hand;
1209 HumanSkeletonProjectionInterface::proj_right_hand(
unsigned int index)
const 1212 throw Exception(
"Index value %u out of bounds (0..2)", index);
1214 return data->proj_right_hand[index];
1222 HumanSkeletonProjectionInterface::maxlenof_proj_right_hand()
const 1233 HumanSkeletonProjectionInterface::set_proj_right_hand(
const float * new_proj_right_hand)
1235 memcpy(data->proj_right_hand, new_proj_right_hand,
sizeof(
float) * 2);
1236 data_changed =
true;
1246 HumanSkeletonProjectionInterface::set_proj_right_hand(
unsigned int index,
const float new_proj_right_hand)
1249 throw Exception(
"Index value %u out of bounds (0..2)", index);
1251 data->proj_right_hand[index] = new_proj_right_hand;
1252 data_changed =
true;
1260 HumanSkeletonProjectionInterface::proj_right_fingertip()
const 1262 return data->proj_right_fingertip;
1273 HumanSkeletonProjectionInterface::proj_right_fingertip(
unsigned int index)
const 1276 throw Exception(
"Index value %u out of bounds (0..2)", index);
1278 return data->proj_right_fingertip[index];
1286 HumanSkeletonProjectionInterface::maxlenof_proj_right_fingertip()
const 1297 HumanSkeletonProjectionInterface::set_proj_right_fingertip(
const float * new_proj_right_fingertip)
1299 memcpy(data->proj_right_fingertip, new_proj_right_fingertip,
sizeof(
float) * 2);
1300 data_changed =
true;
1310 HumanSkeletonProjectionInterface::set_proj_right_fingertip(
unsigned int index,
const float new_proj_right_fingertip)
1313 throw Exception(
"Index value %u out of bounds (0..2)", index);
1315 data->proj_right_fingertip[index] = new_proj_right_fingertip;
1316 data_changed =
true;
1324 HumanSkeletonProjectionInterface::proj_left_hip()
const 1326 return data->proj_left_hip;
1337 HumanSkeletonProjectionInterface::proj_left_hip(
unsigned int index)
const 1340 throw Exception(
"Index value %u out of bounds (0..2)", index);
1342 return data->proj_left_hip[index];
1350 HumanSkeletonProjectionInterface::maxlenof_proj_left_hip()
const 1361 HumanSkeletonProjectionInterface::set_proj_left_hip(
const float * new_proj_left_hip)
1363 memcpy(data->proj_left_hip, new_proj_left_hip,
sizeof(
float) * 2);
1364 data_changed =
true;
1374 HumanSkeletonProjectionInterface::set_proj_left_hip(
unsigned int index,
const float new_proj_left_hip)
1377 throw Exception(
"Index value %u out of bounds (0..2)", index);
1379 data->proj_left_hip[index] = new_proj_left_hip;
1380 data_changed =
true;
1388 HumanSkeletonProjectionInterface::proj_left_knee()
const 1390 return data->proj_left_knee;
1401 HumanSkeletonProjectionInterface::proj_left_knee(
unsigned int index)
const 1404 throw Exception(
"Index value %u out of bounds (0..2)", index);
1406 return data->proj_left_knee[index];
1414 HumanSkeletonProjectionInterface::maxlenof_proj_left_knee()
const 1425 HumanSkeletonProjectionInterface::set_proj_left_knee(
const float * new_proj_left_knee)
1427 memcpy(data->proj_left_knee, new_proj_left_knee,
sizeof(
float) * 2);
1428 data_changed =
true;
1438 HumanSkeletonProjectionInterface::set_proj_left_knee(
unsigned int index,
const float new_proj_left_knee)
1441 throw Exception(
"Index value %u out of bounds (0..2)", index);
1443 data->proj_left_knee[index] = new_proj_left_knee;
1444 data_changed =
true;
1452 HumanSkeletonProjectionInterface::proj_left_ankle()
const 1454 return data->proj_left_ankle;
1465 HumanSkeletonProjectionInterface::proj_left_ankle(
unsigned int index)
const 1468 throw Exception(
"Index value %u out of bounds (0..2)", index);
1470 return data->proj_left_ankle[index];
1478 HumanSkeletonProjectionInterface::maxlenof_proj_left_ankle()
const 1489 HumanSkeletonProjectionInterface::set_proj_left_ankle(
const float * new_proj_left_ankle)
1491 memcpy(data->proj_left_ankle, new_proj_left_ankle,
sizeof(
float) * 2);
1492 data_changed =
true;
1502 HumanSkeletonProjectionInterface::set_proj_left_ankle(
unsigned int index,
const float new_proj_left_ankle)
1505 throw Exception(
"Index value %u out of bounds (0..2)", index);
1507 data->proj_left_ankle[index] = new_proj_left_ankle;
1508 data_changed =
true;
1516 HumanSkeletonProjectionInterface::proj_left_foot()
const 1518 return data->proj_left_foot;
1529 HumanSkeletonProjectionInterface::proj_left_foot(
unsigned int index)
const 1532 throw Exception(
"Index value %u out of bounds (0..2)", index);
1534 return data->proj_left_foot[index];
1542 HumanSkeletonProjectionInterface::maxlenof_proj_left_foot()
const 1553 HumanSkeletonProjectionInterface::set_proj_left_foot(
const float * new_proj_left_foot)
1555 memcpy(data->proj_left_foot, new_proj_left_foot,
sizeof(
float) * 2);
1556 data_changed =
true;
1566 HumanSkeletonProjectionInterface::set_proj_left_foot(
unsigned int index,
const float new_proj_left_foot)
1569 throw Exception(
"Index value %u out of bounds (0..2)", index);
1571 data->proj_left_foot[index] = new_proj_left_foot;
1572 data_changed =
true;
1580 HumanSkeletonProjectionInterface::proj_right_hip()
const 1582 return data->proj_right_hip;
1593 HumanSkeletonProjectionInterface::proj_right_hip(
unsigned int index)
const 1596 throw Exception(
"Index value %u out of bounds (0..2)", index);
1598 return data->proj_right_hip[index];
1606 HumanSkeletonProjectionInterface::maxlenof_proj_right_hip()
const 1617 HumanSkeletonProjectionInterface::set_proj_right_hip(
const float * new_proj_right_hip)
1619 memcpy(data->proj_right_hip, new_proj_right_hip,
sizeof(
float) * 2);
1620 data_changed =
true;
1630 HumanSkeletonProjectionInterface::set_proj_right_hip(
unsigned int index,
const float new_proj_right_hip)
1633 throw Exception(
"Index value %u out of bounds (0..2)", index);
1635 data->proj_right_hip[index] = new_proj_right_hip;
1636 data_changed =
true;
1644 HumanSkeletonProjectionInterface::proj_right_knee()
const 1646 return data->proj_right_knee;
1657 HumanSkeletonProjectionInterface::proj_right_knee(
unsigned int index)
const 1660 throw Exception(
"Index value %u out of bounds (0..2)", index);
1662 return data->proj_right_knee[index];
1670 HumanSkeletonProjectionInterface::maxlenof_proj_right_knee()
const 1681 HumanSkeletonProjectionInterface::set_proj_right_knee(
const float * new_proj_right_knee)
1683 memcpy(data->proj_right_knee, new_proj_right_knee,
sizeof(
float) * 2);
1684 data_changed =
true;
1694 HumanSkeletonProjectionInterface::set_proj_right_knee(
unsigned int index,
const float new_proj_right_knee)
1697 throw Exception(
"Index value %u out of bounds (0..2)", index);
1699 data->proj_right_knee[index] = new_proj_right_knee;
1700 data_changed =
true;
1708 HumanSkeletonProjectionInterface::proj_right_ankle()
const 1710 return data->proj_right_ankle;
1721 HumanSkeletonProjectionInterface::proj_right_ankle(
unsigned int index)
const 1724 throw Exception(
"Index value %u out of bounds (0..2)", index);
1726 return data->proj_right_ankle[index];
1734 HumanSkeletonProjectionInterface::maxlenof_proj_right_ankle()
const 1745 HumanSkeletonProjectionInterface::set_proj_right_ankle(
const float * new_proj_right_ankle)
1747 memcpy(data->proj_right_ankle, new_proj_right_ankle,
sizeof(
float) * 2);
1748 data_changed =
true;
1758 HumanSkeletonProjectionInterface::set_proj_right_ankle(
unsigned int index,
const float new_proj_right_ankle)
1761 throw Exception(
"Index value %u out of bounds (0..2)", index);
1763 data->proj_right_ankle[index] = new_proj_right_ankle;
1764 data_changed =
true;
1772 HumanSkeletonProjectionInterface::proj_right_foot()
const 1774 return data->proj_right_foot;
1785 HumanSkeletonProjectionInterface::proj_right_foot(
unsigned int index)
const 1788 throw Exception(
"Index value %u out of bounds (0..2)", index);
1790 return data->proj_right_foot[index];
1798 HumanSkeletonProjectionInterface::maxlenof_proj_right_foot()
const 1809 HumanSkeletonProjectionInterface::set_proj_right_foot(
const float * new_proj_right_foot)
1811 memcpy(data->proj_right_foot, new_proj_right_foot,
sizeof(
float) * 2);
1812 data_changed =
true;
1822 HumanSkeletonProjectionInterface::set_proj_right_foot(
unsigned int index,
const float new_proj_right_foot)
1825 throw Exception(
"Index value %u out of bounds (0..2)", index);
1827 data->proj_right_foot[index] = new_proj_right_foot;
1828 data_changed =
true;
1832 HumanSkeletonProjectionInterface::create_message(
const char *type)
const 1835 "message type for this interface type.", type);
1843 HumanSkeletonProjectionInterface::copy_values(
const Interface *other)
1848 type(), other->
type());
1850 memcpy(data, oi->data,
sizeof(HumanSkeletonProjectionInterface_data_t));
1854 HumanSkeletonProjectionInterface::enum_tostring(
const char *enumtype,
int val)
const 1865 HumanSkeletonProjectionInterface::message_valid(
const Message *message)
const
Base class for all messages passed through interfaces in Fawkes BlackBoard.
HumanSkeletonProjectionInterface Fawkes BlackBoard Interface.
Fawkes library namespace.
Base class for all Fawkes BlackBoard interfaces.
const char * type() const
Get type of interface.
Base class for exceptions in Fawkes.