#[cfg(feature = "serde")]
use super::SerializeUbxPacketFields;
#[cfg(feature = "serde")]
use crate::serde::ser::SerializeMap;
use crate::{error::ParserError, UbxPacketMeta};
use ublox_derive::ubx_packet_recv;
#[ubx_packet_recv]
#[ubx(class = 0x28, id = 0x01, fixed_payload_len = 32)]
struct HnrAtt {
itow: u32,
version: u8,
reserved1: [u8; 3],
#[ubx(map_type = f64, scale = 1e-5, alias = vehicle_roll)]
roll: i32,
#[ubx(map_type = f64, scale = 1e-5, alias = vehicle_pitch)]
pitch: i32,
#[ubx(map_type = f64, scale = 1e-5, alias = vehicle_heading)]
heading: i32,
#[ubx(map_type = f64, scale = 1e-5, alias = vehicle_roll_accuracy)]
acc_roll: u32,
#[ubx(map_type = f64, scale = 1e-5, alias = vehicle_pitch_accuracy)]
acc_pitch: u32,
#[ubx(map_type = f64, scale = 1e-5, alias = vehicle_heading_accuracy)]
acc_heading: u32,
}