convertLaneDataAttribute.h
Go to the documentation of this file.
1 
53 #pragma once
54 
60 #ifdef ROS1
61 #include <etsi_its_mapem_ts_msgs/LaneDataAttribute.h>
62 namespace mapem_ts_msgs = etsi_its_mapem_ts_msgs;
63 #else
64 #include <etsi_its_mapem_ts_msgs/msg/lane_data_attribute.hpp>
65 namespace mapem_ts_msgs = etsi_its_mapem_ts_msgs::msg;
66 #endif
67 
68 
70 
71 void toRos_LaneDataAttribute(const mapem_ts_LaneDataAttribute_t& in, mapem_ts_msgs::LaneDataAttribute& out) {
72  switch (in.present) {
74  toRos_DeltaAngle(in.choice.pathEndPointAngle, out.path_end_point_angle);
75  out.choice = mapem_ts_msgs::LaneDataAttribute::CHOICE_PATH_END_POINT_ANGLE;
76  break;
78  toRos_RoadwayCrownAngle(in.choice.laneCrownPointCenter, out.lane_crown_point_center);
79  out.choice = mapem_ts_msgs::LaneDataAttribute::CHOICE_LANE_CROWN_POINT_CENTER;
80  break;
82  toRos_RoadwayCrownAngle(in.choice.laneCrownPointLeft, out.lane_crown_point_left);
83  out.choice = mapem_ts_msgs::LaneDataAttribute::CHOICE_LANE_CROWN_POINT_LEFT;
84  break;
86  toRos_RoadwayCrownAngle(in.choice.laneCrownPointRight, out.lane_crown_point_right);
87  out.choice = mapem_ts_msgs::LaneDataAttribute::CHOICE_LANE_CROWN_POINT_RIGHT;
88  break;
90  toRos_MergeDivergeNodeAngle(in.choice.laneAngle, out.lane_angle);
91  out.choice = mapem_ts_msgs::LaneDataAttribute::CHOICE_LANE_ANGLE;
92  break;
94  toRos_SpeedLimitList(in.choice.speedLimits, out.speed_limits);
95  out.choice = mapem_ts_msgs::LaneDataAttribute::CHOICE_SPEED_LIMITS;
96  break;
97  default: break;
98  }
99 }
100 
101 void toStruct_LaneDataAttribute(const mapem_ts_msgs::LaneDataAttribute& in, mapem_ts_LaneDataAttribute_t& out) {
102  memset(&out, 0, sizeof(mapem_ts_LaneDataAttribute_t));
103  switch (in.choice) {
104  case mapem_ts_msgs::LaneDataAttribute::CHOICE_PATH_END_POINT_ANGLE:
105  toStruct_DeltaAngle(in.path_end_point_angle, out.choice.pathEndPointAngle);
106  out.present = mapem_ts_LaneDataAttribute_PR::mapem_ts_LaneDataAttribute_PR_pathEndPointAngle;
107  break;
108  case mapem_ts_msgs::LaneDataAttribute::CHOICE_LANE_CROWN_POINT_CENTER:
109  toStruct_RoadwayCrownAngle(in.lane_crown_point_center, out.choice.laneCrownPointCenter);
110  out.present = mapem_ts_LaneDataAttribute_PR::mapem_ts_LaneDataAttribute_PR_laneCrownPointCenter;
111  break;
112  case mapem_ts_msgs::LaneDataAttribute::CHOICE_LANE_CROWN_POINT_LEFT:
113  toStruct_RoadwayCrownAngle(in.lane_crown_point_left, out.choice.laneCrownPointLeft);
114  out.present = mapem_ts_LaneDataAttribute_PR::mapem_ts_LaneDataAttribute_PR_laneCrownPointLeft;
115  break;
116  case mapem_ts_msgs::LaneDataAttribute::CHOICE_LANE_CROWN_POINT_RIGHT:
117  toStruct_RoadwayCrownAngle(in.lane_crown_point_right, out.choice.laneCrownPointRight);
118  out.present = mapem_ts_LaneDataAttribute_PR::mapem_ts_LaneDataAttribute_PR_laneCrownPointRight;
119  break;
120  case mapem_ts_msgs::LaneDataAttribute::CHOICE_LANE_ANGLE:
121  toStruct_MergeDivergeNodeAngle(in.lane_angle, out.choice.laneAngle);
122  out.present = mapem_ts_LaneDataAttribute_PR::mapem_ts_LaneDataAttribute_PR_laneAngle;
123  break;
124  case mapem_ts_msgs::LaneDataAttribute::CHOICE_SPEED_LIMITS:
125  toStruct_SpeedLimitList(in.speed_limits, out.choice.speedLimits);
126  out.present = mapem_ts_LaneDataAttribute_PR::mapem_ts_LaneDataAttribute_PR_speedLimits;
127  break;
128  default: break;
129  }
130 }
131 
132 }
mapem_ts_LaneDataAttribute_PR_laneCrownPointRight
mapem_ts_LaneDataAttribute_PR_laneCrownPointRight
etsi_its_mapem_ts_conversion::toStruct_RoadwayCrownAngle
void toStruct_RoadwayCrownAngle(const mapem_ts_msgs::RoadwayCrownAngle &in, mapem_ts_RoadwayCrownAngle_t &out)
Definition: convertRoadwayCrownAngle.h:63
mapem_ts_LaneDataAttribute::choice
union mapem_ts_LaneDataAttribute::mapem_ts_LaneDataAttribute_u choice
convertRoadwayCrownAngle.h
etsi_its_mapem_ts_conversion::toRos_SpeedLimitList
void toRos_SpeedLimitList(const mapem_ts_SpeedLimitList_t &in, mapem_ts_msgs::SpeedLimitList &out)
Definition: convertSpeedLimitList.h:64
convertDeltaAngle.h
etsi_its_mapem_ts_conversion::toStruct_SpeedLimitList
void toStruct_SpeedLimitList(const mapem_ts_msgs::SpeedLimitList &in, mapem_ts_SpeedLimitList_t &out)
Definition: convertSpeedLimitList.h:72
convertSpeedLimitList.h
etsi_its_mapem_ts_conversion::toRos_LaneDataAttribute
void toRos_LaneDataAttribute(const mapem_ts_LaneDataAttribute_t &in, mapem_ts_msgs::LaneDataAttribute &out)
Definition: convertLaneDataAttribute.h:71
etsi_its_mapem_ts_conversion::toStruct_DeltaAngle
void toStruct_DeltaAngle(const mapem_ts_msgs::DeltaAngle &in, mapem_ts_DeltaAngle_t &out)
Definition: convertDeltaAngle.h:63
convertMergeDivergeNodeAngle.h
etsi_its_mapem_ts_conversion::toStruct_LaneDataAttribute
void toStruct_LaneDataAttribute(const mapem_ts_msgs::LaneDataAttribute &in, mapem_ts_LaneDataAttribute_t &out)
Definition: convertLaneDataAttribute.h:101
mapem_ts_LaneDataAttribute_PR_speedLimits
mapem_ts_LaneDataAttribute_PR_speedLimits
mapem_ts_LaneDataAttribute::mapem_ts_LaneDataAttribute_u::laneAngle
mapem_ts_MergeDivergeNodeAngle_t laneAngle
mapem_ts_LaneDataAttribute_PR_laneAngle
mapem_ts_LaneDataAttribute_PR_laneAngle
mapem_ts_LaneDataAttribute::mapem_ts_LaneDataAttribute_u::laneCrownPointRight
mapem_ts_RoadwayCrownAngle_t laneCrownPointRight
mapem_ts_LaneDataAttribute.h
etsi_its_mapem_ts_conversion
Definition: convertAllowedManeuvers.h:70
etsi_its_mapem_ts_conversion::toRos_MergeDivergeNodeAngle
void toRos_MergeDivergeNodeAngle(const mapem_ts_MergeDivergeNodeAngle_t &in, mapem_ts_msgs::MergeDivergeNodeAngle &out)
Definition: convertMergeDivergeNodeAngle.h:59
mapem_ts_LaneDataAttribute_PR_pathEndPointAngle
mapem_ts_LaneDataAttribute_PR_pathEndPointAngle
etsi_its_mapem_ts_conversion::toRos_RoadwayCrownAngle
void toRos_RoadwayCrownAngle(const mapem_ts_RoadwayCrownAngle_t &in, mapem_ts_msgs::RoadwayCrownAngle &out)
Definition: convertRoadwayCrownAngle.h:59
mapem_ts_LaneDataAttribute::mapem_ts_LaneDataAttribute_u::speedLimits
mapem_ts_SpeedLimitList_t speedLimits
etsi_its_mapem_ts_conversion::toRos_DeltaAngle
void toRos_DeltaAngle(const mapem_ts_DeltaAngle_t &in, mapem_ts_msgs::DeltaAngle &out)
Definition: convertDeltaAngle.h:59
mapem_ts_LaneDataAttribute
mapem_ts_LaneDataAttribute::mapem_ts_LaneDataAttribute_u::laneCrownPointLeft
mapem_ts_RoadwayCrownAngle_t laneCrownPointLeft
mapem_ts_LaneDataAttribute_PR_laneCrownPointCenter
mapem_ts_LaneDataAttribute_PR_laneCrownPointCenter
mapem_ts_LaneDataAttribute::mapem_ts_LaneDataAttribute_u::pathEndPointAngle
mapem_ts_DeltaAngle_t pathEndPointAngle
etsi_its_mapem_ts_conversion::toStruct_MergeDivergeNodeAngle
void toStruct_MergeDivergeNodeAngle(const mapem_ts_msgs::MergeDivergeNodeAngle &in, mapem_ts_MergeDivergeNodeAngle_t &out)
Definition: convertMergeDivergeNodeAngle.h:63
mapem_ts_LaneDataAttribute_PR_laneCrownPointLeft
mapem_ts_LaneDataAttribute_PR_laneCrownPointLeft
mapem_ts_LaneDataAttribute::present
mapem_ts_LaneDataAttribute_PR present
mapem_ts_LaneDataAttribute::mapem_ts_LaneDataAttribute_u::laneCrownPointCenter
mapem_ts_RoadwayCrownAngle_t laneCrownPointCenter


etsi_its_mapem_ts_conversion
Author(s): Jean-Pierre Busch , Guido Küppers , Lennart Reiher
autogenerated on Sun May 18 2025 02:29:18