24 #include <interfaces/NavigatorInterface.h>
26 #include <core/exceptions/software.h>
80 NavigatorInterface::NavigatorInterface() : Interface()
82 data_size =
sizeof(NavigatorInterface_data_t);
84 data = (NavigatorInterface_data_t *)
data_ptr;
87 enum_map_DriveMode[(int)MovingNotAllowed] =
"MovingNotAllowed";
88 enum_map_DriveMode[(int)Forward] =
"Forward";
89 enum_map_DriveMode[(int)AllowBackward] =
"AllowBackward";
90 enum_map_DriveMode[(int)Backward] =
"Backward";
91 enum_map_DriveMode[(int)ESCAPE] =
"ESCAPE";
93 enum_map_OrientationMode[(int)OrientDuringTravel] =
"OrientDuringTravel";
111 add_fieldinfo(
IFT_ENUM,
"orientation_mode", 1, &data->orientation_mode,
"OrientationMode", &enum_map_OrientationMode);
132 unsigned char tmp_hash[] = {0x5f, 0xf9, 0xaa, 0x1e, 0xb4, 0x6a, 0x4a, 0xa3, 0xe5, 0xe0, 0x2b, 0xbd, 0x73, 0x17, 0x66, 0xea};
137 NavigatorInterface::~NavigatorInterface()
149 case MovingNotAllowed:
return "MovingNotAllowed";
150 case Forward:
return "Forward";
151 case AllowBackward:
return "AllowBackward";
152 case Backward:
return "Backward";
153 case ESCAPE:
return "ESCAPE";
154 default:
return "UNKNOWN";
166 case OrientDuringTravel:
return "OrientDuringTravel";
167 default:
return "UNKNOWN";
200 data->flags = new_flags;
293 data->dest_x = new_dest_x;
324 data->dest_y = new_dest_y;
335 return data->dest_ori;
355 data->dest_ori = new_dest_ori;
366 return data->dest_dist;
386 data->dest_dist = new_dest_dist;
419 data->msgid = new_msgid;
452 data->final = new_final;
465 return data->error_code;
487 data->error_code = new_error_code;
498 return data->max_velocity;
518 data->max_velocity = new_max_velocity;
529 return data->max_rotation;
549 data->max_rotation = new_max_rotation;
560 return data->security_distance;
580 data->security_distance = new_security_distance;
592 return data->escaping_enabled;
613 data->escaping_enabled = new_escaping_enabled;
644 data->drive_mode = new_drive_mode;
657 return data->auto_drive_mode;
679 data->auto_drive_mode = new_auto_drive_mode;
690 return data->stop_at_target;
710 data->stop_at_target = new_stop_at_target;
741 data->orientation_mode = new_orientation_mode;
752 return data->target_frame;
772 strncpy(data->target_frame, new_target_frame,
sizeof(data->target_frame)-1);
773 data->target_frame[
sizeof(data->target_frame)-1] = 0;
781 if ( strncmp(
"StopMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
782 return new StopMessage();
783 }
else if ( strncmp(
"TurnMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
784 return new TurnMessage();
785 }
else if ( strncmp(
"CartesianGotoMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
786 return new CartesianGotoMessage();
787 }
else if ( strncmp(
"CartesianGotoWithToleranceMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
788 return new CartesianGotoWithToleranceMessage();
789 }
else if ( strncmp(
"CartesianGotoWithFrameMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
790 return new CartesianGotoWithFrameMessage();
791 }
else if ( strncmp(
"CartesianGotoWithFrameWithToleranceMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
792 return new CartesianGotoWithFrameWithToleranceMessage();
793 }
else if ( strncmp(
"PolarGotoMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
794 return new PolarGotoMessage();
795 }
else if ( strncmp(
"PlaceGotoMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
796 return new PlaceGotoMessage();
797 }
else if ( strncmp(
"PlaceWithOriGotoMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
798 return new PlaceWithOriGotoMessage();
799 }
else if ( strncmp(
"ObstacleMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
800 return new ObstacleMessage();
801 }
else if ( strncmp(
"ResetOdometryMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
802 return new ResetOdometryMessage();
803 }
else if ( strncmp(
"SetMaxVelocityMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
804 return new SetMaxVelocityMessage();
805 }
else if ( strncmp(
"SetMaxRotationMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
806 return new SetMaxRotationMessage();
807 }
else if ( strncmp(
"SetEscapingMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
808 return new SetEscapingMessage();
809 }
else if ( strncmp(
"SetSecurityDistanceMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
810 return new SetSecurityDistanceMessage();
811 }
else if ( strncmp(
"SetDriveModeMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
812 return new SetDriveModeMessage();
813 }
else if ( strncmp(
"SetStopAtTargetMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
814 return new SetStopAtTargetMessage();
815 }
else if ( strncmp(
"SetOrientationModeMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
816 return new SetOrientationModeMessage();
817 }
else if ( strncmp(
"ResetParametersMessage",
type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
818 return new ResetParametersMessage();
820 throw UnknownTypeException(
"The given type '%s' does not match any known "
821 "message type for this interface type.",
type);
832 const NavigatorInterface *oi = dynamic_cast<const NavigatorInterface *>(other);
835 type(), other->type());
837 memcpy(data, oi->data,
sizeof(NavigatorInterface_data_t));
843 if (strcmp(enumtype,
"DriveMode") == 0) {
844 return tostring_DriveMode((DriveMode)val);
846 if (strcmp(enumtype,
"OrientationMode") == 0) {
847 return tostring_OrientationMode((OrientationMode)val);
849 throw UnknownTypeException(
"Unknown enum type %s", enumtype);
868 data = (StopMessage_data_t *)
data_ptr;
870 data->msgid = ini_msgid;
872 enum_map_DriveMode[(int)
Forward] =
"Forward";
874 enum_map_DriveMode[(int)
Backward] =
"Backward";
875 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
886 data = (StopMessage_data_t *)
data_ptr;
889 enum_map_DriveMode[(int)
Forward] =
"Forward";
891 enum_map_DriveMode[(int)
Backward] =
"Backward";
892 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
912 data = (StopMessage_data_t *)
data_ptr;
960 data->msgid = new_msgid;
989 data = (TurnMessage_data_t *)
data_ptr;
991 data->angle = ini_angle;
992 data->velocity = ini_velocity;
994 enum_map_DriveMode[(int)
Forward] =
"Forward";
996 enum_map_DriveMode[(int)
Backward] =
"Backward";
997 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1009 data = (TurnMessage_data_t *)
data_ptr;
1012 enum_map_DriveMode[(int)
Forward] =
"Forward";
1014 enum_map_DriveMode[(int)
Backward] =
"Backward";
1015 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1016 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1036 data = (TurnMessage_data_t *)
data_ptr;
1068 data->angle = new_angle;
1079 return data->velocity;
1100 data->velocity = new_velocity;
1127 data_size =
sizeof(CartesianGotoMessage_data_t);
1130 data = (CartesianGotoMessage_data_t *)
data_ptr;
1134 data->orientation = ini_orientation;
1136 enum_map_DriveMode[(int)
Forward] =
"Forward";
1138 enum_map_DriveMode[(int)
Backward] =
"Backward";
1139 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1140 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1149 data_size =
sizeof(CartesianGotoMessage_data_t);
1152 data = (CartesianGotoMessage_data_t *)
data_ptr;
1155 enum_map_DriveMode[(int)
Forward] =
"Forward";
1157 enum_map_DriveMode[(int)
Backward] =
"Backward";
1158 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1159 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1180 data = (CartesianGotoMessage_data_t *)
data_ptr;
1252 return data->orientation;
1272 data->orientation = new_orientation;
1301 data_size =
sizeof(CartesianGotoWithToleranceMessage_data_t);
1304 data = (CartesianGotoWithToleranceMessage_data_t *)
data_ptr;
1308 data->orientation = ini_orientation;
1309 data->translation_tolerance = ini_translation_tolerance;
1310 data->orientation_tolerance = ini_orientation_tolerance;
1312 enum_map_DriveMode[(int)
Forward] =
"Forward";
1314 enum_map_DriveMode[(int)
Backward] =
"Backward";
1315 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1316 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1327 data_size =
sizeof(CartesianGotoWithToleranceMessage_data_t);
1330 data = (CartesianGotoWithToleranceMessage_data_t *)
data_ptr;
1333 enum_map_DriveMode[(int)
Forward] =
"Forward";
1335 enum_map_DriveMode[(int)
Backward] =
"Backward";
1336 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1337 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1360 data = (CartesianGotoWithToleranceMessage_data_t *)
data_ptr;
1432 return data->orientation;
1452 data->orientation = new_orientation;
1462 return data->translation_tolerance;
1482 data->translation_tolerance = new_translation_tolerance;
1492 return data->orientation_tolerance;
1512 data->orientation_tolerance = new_orientation_tolerance;
1540 data_size =
sizeof(CartesianGotoWithFrameMessage_data_t);
1543 data = (CartesianGotoWithFrameMessage_data_t *)
data_ptr;
1547 data->orientation = ini_orientation;
1548 strncpy(data->target_frame, ini_target_frame, 64-1);
1549 data->target_frame[64-1] = 0;
1551 enum_map_DriveMode[(int)
Forward] =
"Forward";
1553 enum_map_DriveMode[(int)
Backward] =
"Backward";
1554 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1555 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1565 data_size =
sizeof(CartesianGotoWithFrameMessage_data_t);
1568 data = (CartesianGotoWithFrameMessage_data_t *)
data_ptr;
1571 enum_map_DriveMode[(int)
Forward] =
"Forward";
1573 enum_map_DriveMode[(int)
Backward] =
"Backward";
1574 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1575 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1597 data = (CartesianGotoWithFrameMessage_data_t *)
data_ptr;
1669 return data->orientation;
1689 data->orientation = new_orientation;
1699 return data->target_frame;
1719 strncpy(data->target_frame, new_target_frame,
sizeof(data->target_frame)-1);
1720 data->target_frame[
sizeof(data->target_frame)-1] = 0;
1750 data_size =
sizeof(CartesianGotoWithFrameWithToleranceMessage_data_t);
1753 data = (CartesianGotoWithFrameWithToleranceMessage_data_t *)
data_ptr;
1757 data->orientation = ini_orientation;
1758 strncpy(data->target_frame, ini_target_frame, 64-1);
1759 data->target_frame[64-1] = 0;
1760 data->translation_tolerance = ini_translation_tolerance;
1761 data->orientation_tolerance = ini_orientation_tolerance;
1763 enum_map_DriveMode[(int)
Forward] =
"Forward";
1765 enum_map_DriveMode[(int)
Backward] =
"Backward";
1766 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1767 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1779 data_size =
sizeof(CartesianGotoWithFrameWithToleranceMessage_data_t);
1782 data = (CartesianGotoWithFrameWithToleranceMessage_data_t *)
data_ptr;
1785 enum_map_DriveMode[(int)
Forward] =
"Forward";
1787 enum_map_DriveMode[(int)
Backward] =
"Backward";
1788 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
1789 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
1813 data = (CartesianGotoWithFrameWithToleranceMessage_data_t *)
data_ptr;
1885 return data->orientation;
1905 data->orientation = new_orientation;
1915 return data->target_frame;
1935 strncpy(data->target_frame, new_target_frame,
sizeof(data->target_frame)-1);
1936 data->target_frame[
sizeof(data->target_frame)-1] = 0;
1946 return data->translation_tolerance;
1966 data->translation_tolerance = new_translation_tolerance;
1976 return data->orientation_tolerance;
1996 data->orientation_tolerance = new_orientation_tolerance;
2023 data_size =
sizeof(PolarGotoMessage_data_t);
2026 data = (PolarGotoMessage_data_t *)
data_ptr;
2028 data->phi = ini_phi;
2029 data->dist = ini_dist;
2030 data->orientation = ini_orientation;
2032 enum_map_DriveMode[(int)
Forward] =
"Forward";
2034 enum_map_DriveMode[(int)
Backward] =
"Backward";
2035 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2036 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2045 data_size =
sizeof(PolarGotoMessage_data_t);
2048 data = (PolarGotoMessage_data_t *)
data_ptr;
2051 enum_map_DriveMode[(int)
Forward] =
"Forward";
2053 enum_map_DriveMode[(int)
Backward] =
"Backward";
2054 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2055 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2076 data = (PolarGotoMessage_data_t *)
data_ptr;
2108 data->phi = new_phi;
2138 data->dist = new_dist;
2148 return data->orientation;
2168 data->orientation = new_orientation;
2193 data_size =
sizeof(PlaceGotoMessage_data_t);
2196 data = (PlaceGotoMessage_data_t *)
data_ptr;
2198 strncpy(data->place, ini_place, 64-1);
2199 data->place[64-1] = 0;
2201 enum_map_DriveMode[(int)
Forward] =
"Forward";
2203 enum_map_DriveMode[(int)
Backward] =
"Backward";
2204 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2205 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2212 data_size =
sizeof(PlaceGotoMessage_data_t);
2215 data = (PlaceGotoMessage_data_t *)
data_ptr;
2218 enum_map_DriveMode[(int)
Forward] =
"Forward";
2220 enum_map_DriveMode[(int)
Backward] =
"Backward";
2221 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2222 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2241 data = (PlaceGotoMessage_data_t *)
data_ptr;
2273 strncpy(data->place, new_place,
sizeof(data->place)-1);
2274 data->place[
sizeof(data->place)-1] = 0;
2300 data_size =
sizeof(PlaceWithOriGotoMessage_data_t);
2303 data = (PlaceWithOriGotoMessage_data_t *)
data_ptr;
2305 strncpy(data->place, ini_place, 64-1);
2306 data->place[64-1] = 0;
2307 data->orientation = ini_orientation;
2309 enum_map_DriveMode[(int)
Forward] =
"Forward";
2311 enum_map_DriveMode[(int)
Backward] =
"Backward";
2312 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2313 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2321 data_size =
sizeof(PlaceWithOriGotoMessage_data_t);
2324 data = (PlaceWithOriGotoMessage_data_t *)
data_ptr;
2327 enum_map_DriveMode[(int)
Forward] =
"Forward";
2329 enum_map_DriveMode[(int)
Backward] =
"Backward";
2330 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2331 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2351 data = (PlaceWithOriGotoMessage_data_t *)
data_ptr;
2383 strncpy(data->place, new_place,
sizeof(data->place)-1);
2384 data->place[
sizeof(data->place)-1] = 0;
2394 return data->orientation;
2414 data->orientation = new_orientation;
2441 data_size =
sizeof(ObstacleMessage_data_t);
2444 data = (ObstacleMessage_data_t *)
data_ptr;
2448 data->width = ini_width;
2450 enum_map_DriveMode[(int)
Forward] =
"Forward";
2452 enum_map_DriveMode[(int)
Backward] =
"Backward";
2453 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2454 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2463 data_size =
sizeof(ObstacleMessage_data_t);
2466 data = (ObstacleMessage_data_t *)
data_ptr;
2469 enum_map_DriveMode[(int)
Forward] =
"Forward";
2471 enum_map_DriveMode[(int)
Backward] =
"Backward";
2472 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2473 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2494 data = (ObstacleMessage_data_t *)
data_ptr;
2586 data->width = new_width;
2609 data_size =
sizeof(ResetOdometryMessage_data_t);
2612 data = (ResetOdometryMessage_data_t *)
data_ptr;
2615 enum_map_DriveMode[(int)
Forward] =
"Forward";
2617 enum_map_DriveMode[(int)
Backward] =
"Backward";
2618 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2619 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2637 data = (ResetOdometryMessage_data_t *)
data_ptr;
2664 data_size =
sizeof(SetMaxVelocityMessage_data_t);
2667 data = (SetMaxVelocityMessage_data_t *)
data_ptr;
2669 data->max_velocity = ini_max_velocity;
2671 enum_map_DriveMode[(int)
Forward] =
"Forward";
2673 enum_map_DriveMode[(int)
Backward] =
"Backward";
2674 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2675 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2682 data_size =
sizeof(SetMaxVelocityMessage_data_t);
2685 data = (SetMaxVelocityMessage_data_t *)
data_ptr;
2688 enum_map_DriveMode[(int)
Forward] =
"Forward";
2690 enum_map_DriveMode[(int)
Backward] =
"Backward";
2691 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2692 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2711 data = (SetMaxVelocityMessage_data_t *)
data_ptr;
2723 return data->max_velocity;
2743 data->max_velocity = new_max_velocity;
2768 data_size =
sizeof(SetMaxRotationMessage_data_t);
2771 data = (SetMaxRotationMessage_data_t *)
data_ptr;
2773 data->max_rotation = ini_max_rotation;
2775 enum_map_DriveMode[(int)
Forward] =
"Forward";
2777 enum_map_DriveMode[(int)
Backward] =
"Backward";
2778 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2779 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2786 data_size =
sizeof(SetMaxRotationMessage_data_t);
2789 data = (SetMaxRotationMessage_data_t *)
data_ptr;
2792 enum_map_DriveMode[(int)
Forward] =
"Forward";
2794 enum_map_DriveMode[(int)
Backward] =
"Backward";
2795 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2796 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2815 data = (SetMaxRotationMessage_data_t *)
data_ptr;
2827 return data->max_rotation;
2847 data->max_rotation = new_max_rotation;
2872 data_size =
sizeof(SetEscapingMessage_data_t);
2875 data = (SetEscapingMessage_data_t *)
data_ptr;
2877 data->escaping_enabled = ini_escaping_enabled;
2879 enum_map_DriveMode[(int)
Forward] =
"Forward";
2881 enum_map_DriveMode[(int)
Backward] =
"Backward";
2882 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2883 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2890 data_size =
sizeof(SetEscapingMessage_data_t);
2893 data = (SetEscapingMessage_data_t *)
data_ptr;
2896 enum_map_DriveMode[(int)
Forward] =
"Forward";
2898 enum_map_DriveMode[(int)
Backward] =
"Backward";
2899 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2900 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2919 data = (SetEscapingMessage_data_t *)
data_ptr;
2932 return data->escaping_enabled;
2953 data->escaping_enabled = new_escaping_enabled;
2978 data_size =
sizeof(SetSecurityDistanceMessage_data_t);
2981 data = (SetSecurityDistanceMessage_data_t *)
data_ptr;
2983 data->security_distance = ini_security_distance;
2985 enum_map_DriveMode[(int)
Forward] =
"Forward";
2987 enum_map_DriveMode[(int)
Backward] =
"Backward";
2988 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
2989 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
2996 data_size =
sizeof(SetSecurityDistanceMessage_data_t);
2999 data = (SetSecurityDistanceMessage_data_t *)
data_ptr;
3002 enum_map_DriveMode[(int)
Forward] =
"Forward";
3004 enum_map_DriveMode[(int)
Backward] =
"Backward";
3005 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
3006 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
3025 data = (SetSecurityDistanceMessage_data_t *)
data_ptr;
3037 return data->security_distance;
3057 data->security_distance = new_security_distance;
3082 data_size =
sizeof(SetDriveModeMessage_data_t);
3085 data = (SetDriveModeMessage_data_t *)
data_ptr;
3087 data->drive_mode = ini_drive_mode;
3089 enum_map_DriveMode[(int)
Forward] =
"Forward";
3091 enum_map_DriveMode[(int)
Backward] =
"Backward";
3092 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
3093 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
3100 data_size =
sizeof(SetDriveModeMessage_data_t);
3103 data = (SetDriveModeMessage_data_t *)
data_ptr;
3106 enum_map_DriveMode[(int)
Forward] =
"Forward";
3108 enum_map_DriveMode[(int)
Backward] =
"Backward";
3109 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
3110 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
3129 data = (SetDriveModeMessage_data_t *)
data_ptr;
3161 data->drive_mode = new_drive_mode;
3186 data_size =
sizeof(SetStopAtTargetMessage_data_t);
3189 data = (SetStopAtTargetMessage_data_t *)
data_ptr;
3191 data->stop_at_target = ini_stop_at_target;
3193 enum_map_DriveMode[(int)
Forward] =
"Forward";
3195 enum_map_DriveMode[(int)
Backward] =
"Backward";
3196 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
3197 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
3204 data_size =
sizeof(SetStopAtTargetMessage_data_t);
3207 data = (SetStopAtTargetMessage_data_t *)
data_ptr;
3210 enum_map_DriveMode[(int)
Forward] =
"Forward";
3212 enum_map_DriveMode[(int)
Backward] =
"Backward";
3213 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
3214 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
3233 data = (SetStopAtTargetMessage_data_t *)
data_ptr;
3245 return data->stop_at_target;
3265 data->stop_at_target = new_stop_at_target;
3290 data_size =
sizeof(SetOrientationModeMessage_data_t);
3293 data = (SetOrientationModeMessage_data_t *)
data_ptr;
3295 data->orientation_mode = ini_orientation_mode;
3297 enum_map_DriveMode[(int)
Forward] =
"Forward";
3299 enum_map_DriveMode[(int)
Backward] =
"Backward";
3300 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
3301 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
3303 add_fieldinfo(
IFT_ENUM,
"orientation_mode", 1, &data->orientation_mode,
"OrientationMode", &enum_map_OrientationMode);
3308 data_size =
sizeof(SetOrientationModeMessage_data_t);
3311 data = (SetOrientationModeMessage_data_t *)
data_ptr;
3314 enum_map_DriveMode[(int)
Forward] =
"Forward";
3316 enum_map_DriveMode[(int)
Backward] =
"Backward";
3317 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
3318 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
3320 add_fieldinfo(
IFT_ENUM,
"orientation_mode", 1, &data->orientation_mode,
"OrientationMode", &enum_map_OrientationMode);
3337 data = (SetOrientationModeMessage_data_t *)
data_ptr;
3369 data->orientation_mode = new_orientation_mode;
3392 data_size =
sizeof(ResetParametersMessage_data_t);
3395 data = (ResetParametersMessage_data_t *)
data_ptr;
3398 enum_map_DriveMode[(int)
Forward] =
"Forward";
3400 enum_map_DriveMode[(int)
Backward] =
"Backward";
3401 enum_map_DriveMode[(int)
ESCAPE] =
"ESCAPE";
3402 enum_map_OrientationMode[(int)
OrientAtTarget] =
"OrientAtTarget";
3420 data = (ResetParametersMessage_data_t *)
data_ptr;
3442 const StopMessage *m0 = dynamic_cast<const StopMessage *>(message);
3446 const TurnMessage *m1 = dynamic_cast<const TurnMessage *>(message);
3450 const CartesianGotoMessage *m2 = dynamic_cast<const CartesianGotoMessage *>(message);
3454 const CartesianGotoWithToleranceMessage *m3 = dynamic_cast<const CartesianGotoWithToleranceMessage *>(message);
3458 const CartesianGotoWithFrameMessage *m4 = dynamic_cast<const CartesianGotoWithFrameMessage *>(message);
3462 const CartesianGotoWithFrameWithToleranceMessage *m5 = dynamic_cast<const CartesianGotoWithFrameWithToleranceMessage *>(message);
3466 const PolarGotoMessage *m6 = dynamic_cast<const PolarGotoMessage *>(message);
3470 const PlaceGotoMessage *m7 = dynamic_cast<const PlaceGotoMessage *>(message);
3474 const PlaceWithOriGotoMessage *m8 = dynamic_cast<const PlaceWithOriGotoMessage *>(message);
3478 const ObstacleMessage *m9 = dynamic_cast<const ObstacleMessage *>(message);
3482 const ResetOdometryMessage *m10 = dynamic_cast<const ResetOdometryMessage *>(message);
3483 if ( m10 != NULL ) {
3486 const SetMaxVelocityMessage *m11 = dynamic_cast<const SetMaxVelocityMessage *>(message);
3487 if ( m11 != NULL ) {
3490 const SetMaxRotationMessage *m12 = dynamic_cast<const SetMaxRotationMessage *>(message);
3491 if ( m12 != NULL ) {
3494 const SetEscapingMessage *m13 = dynamic_cast<const SetEscapingMessage *>(message);
3495 if ( m13 != NULL ) {
3498 const SetSecurityDistanceMessage *m14 = dynamic_cast<const SetSecurityDistanceMessage *>(message);
3499 if ( m14 != NULL ) {
3502 const SetDriveModeMessage *m15 = dynamic_cast<const SetDriveModeMessage *>(message);
3503 if ( m15 != NULL ) {
3506 const SetStopAtTargetMessage *m16 = dynamic_cast<const SetStopAtTargetMessage *>(message);
3507 if ( m16 != NULL ) {
3510 const SetOrientationModeMessage *m17 = dynamic_cast<const SetOrientationModeMessage *>(message);
3511 if ( m17 != NULL ) {
3514 const ResetParametersMessage *m18 = dynamic_cast<const ResetParametersMessage *>(message);
3515 if ( m18 != NULL ) {
3522 EXPORT_INTERFACE(NavigatorInterface)