8#include <px4_msgs/msg/vehicle_odometry.hpp>
12enum class PoseFrame { Unknown, LocalNED, LocalFRD };
14enum class VelocityFrame { Unknown, LocalNED, LocalFRD, BodyFRD };
16constexpr inline uint8_t poseFrameToMessageFrame(px4_ros2::PoseFrame frame)
noexcept
19 case PoseFrame::Unknown:
20 return px4_msgs::msg::VehicleOdometry::POSE_FRAME_UNKNOWN;
22 case PoseFrame::LocalNED:
23 return px4_msgs::msg::VehicleOdometry::POSE_FRAME_NED;
25 case PoseFrame::LocalFRD:
26 return px4_msgs::msg::VehicleOdometry::POSE_FRAME_FRD;
29 return px4_msgs::msg::VehicleOdometry::POSE_FRAME_UNKNOWN;
32constexpr inline uint8_t velocityFrameToMessageFrame(px4_ros2::VelocityFrame frame)
noexcept
35 case VelocityFrame::Unknown:
36 return px4_msgs::msg::VehicleOdometry::VELOCITY_FRAME_UNKNOWN;
38 case VelocityFrame::LocalNED:
39 return px4_msgs::msg::VehicleOdometry::VELOCITY_FRAME_NED;
41 case VelocityFrame::LocalFRD:
42 return px4_msgs::msg::VehicleOdometry::VELOCITY_FRAME_FRD;
44 case VelocityFrame::BodyFRD:
45 return px4_msgs::msg::VehicleOdometry::VELOCITY_FRAME_BODY_FRD;
48 return px4_msgs::msg::VehicleOdometry::POSE_FRAME_UNKNOWN;