#![cfg(feature = "ubx_proto23")]
#[cfg(feature = "serde")]
use super::{SerializeMap, SerializeUbxPacketFields};
use crate::ubx_packets::packets::{
ack::{AckAck, AckAckOwned, AckAckRef, AckNak, AckNakOwned, AckNakRef},
cfg_ant::{CfgAnt, CfgAntOwned, CfgAntRef},
cfg_esf_alg::{CfgEsfAlg, CfgEsfAlgOwned, CfgEsfAlgRef},
cfg_esf_wt::{CfgEsfWt, CfgEsfWtOwned, CfgEsfWtRef},
cfg_gnss::{CfgGnss, CfgGnssOwned, CfgGnssRef},
cfg_inf::{CfgInf, CfgInfOwned, CfgInfRef},
cfg_itfm::{CfgItfm, CfgItfmOwned, CfgItfmRef},
cfg_nav5::{CfgNav5, CfgNav5Owned, CfgNav5Ref},
cfg_odo::{CfgOdo, CfgOdoOwned, CfgOdoRef},
cfg_prt::{
CfgPrtI2c, CfgPrtI2cOwned, CfgPrtI2cRef, CfgPrtSpi, CfgPrtSpiOwned, CfgPrtSpiRef,
CfgPrtUart, CfgPrtUartOwned, CfgPrtUartRef,
},
cfg_smgr::{CfgSmgr, CfgSmgrOwned, CfgSmgrRef},
cfg_tmode2::{CfgTmode2, CfgTmode2Owned, CfgTmode2Ref},
cfg_tmode3::{CfgTmode3, CfgTmode3Owned, CfgTmode3Ref},
cfg_tp5::{CfgTp5, CfgTp5Owned, CfgTp5Ref},
esf_alg::{EsfAlg, EsfAlgOwned, EsfAlgRef},
esf_ins::{EsfIns, EsfInsOwned, EsfInsRef},
esf_meas::{EsfMeas, EsfMeasOwned, EsfMeasRef},
esf_raw::{EsfRaw, EsfRawOwned, EsfRawRef},
esf_status::{EsfStatus, EsfStatusOwned, EsfStatusRef},
hnr_att::{HnrAtt, HnrAttOwned, HnrAttRef},
hnr_ins::{HnrIns, HnrInsOwned, HnrInsRef},
hnr_pvt::{HnrPvt, HnrPvtOwned, HnrPvtRef},
inf_debug::{InfDebug, InfDebugOwned, InfDebugRef},
inf_error::{InfError, InfErrorOwned, InfErrorRef},
inf_notice::{InfNotice, InfNoticeOwned, InfNoticeRef},
inf_test::{InfTest, InfTestOwned, InfTestRef},
inf_warning::{InfWarning, InfWarningOwned, InfWarningRef},
mga_ack::{MgaAck, MgaAckOwned, MgaAckRef},
mga_bds_eph::{MgaBdsEph, MgaBdsEphOwned, MgaBdsEphRef},
mga_bds_utc::{MgaBdsUtc, MgaBdsUtcOwned, MgaBdsUtcRef},
mga_gal_eph::{MgaGalEph, MgaGalEphOwned, MgaGalEphRef},
mga_gal_time::{MgaGalTime, MgaGalTimeOwned, MgaGalTimeRef},
mga_glo_eph::{MgaGloEph, MgaGloEphOwned, MgaGloEphRef},
mga_gps_eph::{MgaGpsEph, MgaGpsEphOwned, MgaGpsEphRef},
mga_gps_iono::{MgaGpsIono, MgaGpsIonoOwned, MgaGpsIonoRef},
mga_gps_utc::{MgaGpsUtc, MgaGpsUtcOwned, MgaGpsUtcRef},
mon_gnss::{MonGnss, MonGnssOwned, MonGnssRef},
mon_hw::{MonHw, MonHwOwned, MonHwRef},
mon_hw2::{MonHw2, MonHw2Owned, MonHw2Ref},
mon_io::{MonIo, MonIoOwned, MonIoRef},
mon_msgpp::{MonMsgpp, MonMsgppOwned, MonMsgppRef},
mon_patch::{MonPatch, MonPatchOwned, MonPatchRef},
mon_rxbuf::{MonRxbuf, MonRxbufOwned, MonRxbufRef},
mon_rxr::{MonRxr, MonRxrOwned, MonRxrRef},
mon_txbuf::{MonTxbuf, MonTxbufOwned, MonTxbufRef},
mon_ver::{MonVer, MonVerOwned, MonVerRef},
nav_att::{NavAtt, NavAttOwned, NavAttRef},
nav_clock::{NavClock, NavClockOwned, NavClockRef},
nav_dop::{NavDop, NavDopOwned, NavDopRef},
nav_hp_pos_ecef::{NavHpPosEcef, NavHpPosEcefOwned, NavHpPosEcefRef},
nav_hp_pos_llh::{NavHpPosLlh, NavHpPosLlhOwned, NavHpPosLlhRef},
nav_other::{
NavEoe, NavEoeOwned, NavEoeRef, NavOdo, NavOdoOwned, NavOdoRef, NavVelECEF,
NavVelECEFOwned, NavVelECEFRef,
},
nav_pos_llh::{NavPosLlh, NavPosLlhOwned, NavPosLlhRef},
nav_pvt::proto23::{NavPvt, NavPvtOwned, NavPvtRef},
nav_rel_pos_ned::proto23::{NavRelPosNed, NavRelPosNedOwned, NavRelPosNedRef},
nav_sat::{NavSat, NavSatOwned, NavSatRef},
nav_sol::{NavSol, NavSolOwned, NavSolRef},
nav_status::{NavStatus, NavStatusOwned, NavStatusRef},
nav_time_gps::{NavTimeGps, NavTimeGpsOwned, NavTimeGpsRef},
nav_time_ls::{NavTimeLs, NavTimeLsOwned, NavTimeLsRef},
nav_time_utc::{NavTimeUTC, NavTimeUTCOwned, NavTimeUTCRef},
nav_vel_ned::{NavVelNed, NavVelNedOwned, NavVelNedRef},
rxm_rawx::{RxmRawx, RxmRawxOwned, RxmRawxRef},
rxm_rtcm::{RxmRtcm, RxmRtcmOwned, RxmRtcmRef},
rxm_sfrbx::{RxmSfrbx, RxmSfrbxOwned, RxmSfrbxRef},
sec_uniq_id::{SecUniqId, SecUniqIdOwned, SecUniqIdRef},
tim_svin::{TimSvin, TimSvinOwned, TimSvinRef},
tim_tm2::{TimTm2, TimTm2Owned, TimTm2Ref},
tim_tos::{TimTos, TimTosOwned, TimTosRef},
tim_tp::{TimTp, TimTpOwned, TimTpRef},
};
use crate::{ParserError, UbxPacketMeta, UbxUnknownPacketOwned, UbxUnknownPacketRef};
use ublox_derive::define_recv_packets;
define_recv_packets!(
enum Packet {
_ = UbxUnknownPacket,
AckAck,
AckNak,
CfgAnt,
CfgEsfAlg,
CfgEsfWt,
CfgGnss,
CfgInf,
CfgItfm,
CfgNav5,
CfgOdo,
CfgPrtI2c,
CfgPrtSpi,
CfgPrtUart,
CfgSmgr,
CfgTmode2,
CfgTmode3,
CfgTp5,
EsfAlg,
EsfIns,
EsfMeas,
EsfStatus,
EsfRaw,
InfError,
InfWarning,
InfNotice,
InfTest,
InfDebug,
HnrAtt,
HnrIns,
HnrPvt,
MonVer,
MonGnss,
MonHw,
MonHw2,
MonIo,
MonPatch,
MonMsgpp,
MonRxr,
MonRxbuf,
MonTxbuf,
MgaAck,
MgaGpsIono,
MgaGpsEph,
MgaGpsUtc,
MgaBdsEph,
MgaBdsUtc,
MgaGalEph,
MgaGalTime,
MgaGloEph,
NavAtt,
NavClock,
NavDop,
NavEoe,
NavHpPosLlh,
NavHpPosEcef,
NavOdo,
NavPvt,
NavPosLlh,
NavRelPosNed,
NavSat,
NavSol,
NavStatus,
NavVelNed,
NavTimeGps,
NavTimeUTC,
NavTimeLs,
NavVelECEF,
RxmRawx,
RxmRtcm,
RxmSfrbx,
SecUniqId,
TimSvin,
TimTp,
TimTm2,
TimTos,
}
);