summaryrefslogtreecommitdiff
path: root/asn1/lpp/lpp.cnf
diff options
context:
space:
mode:
Diffstat (limited to 'asn1/lpp/lpp.cnf')
-rw-r--r--asn1/lpp/lpp.cnf264
1 files changed, 257 insertions, 7 deletions
diff --git a/asn1/lpp/lpp.cnf b/asn1/lpp/lpp.cnf
index 6a111685a0..47d2dbe0f8 100644
--- a/asn1/lpp/lpp.cnf
+++ b/asn1/lpp/lpp.cnf
@@ -53,6 +53,9 @@ EllipsoidPointWithUncertaintyEllipse
Polygon
#.END
+#.MAKE_ENUM
+GNSS-ID/gnss-id TYPE_PREFIX UPPER_CASE
+
#.FN_HDR RequestCapabilities
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Capabilities");
@@ -296,6 +299,9 @@ VerticalAccuracy/confidence DISPLAY=BASE_CUSTOM STRINGS=&lpp_confidence_fmt
#.FN_FTR ResponseTime/time
proto_item_append_text(actx->created_item, " s");
+#.FN_FTR ResponseTime/eag_1/responseTimeEarlyFix-r12
+ proto_item_append_text(actx->created_item, " s");
+
#.TYPE_ATTR
OTDOA-NeighbourCellInfoElement/expectedRSTD DISPLAY=BASE_CUSTOM STRINGS=&lpp_expectedRSTD_fmt
@@ -484,6 +490,18 @@ DGNSS-CorrectionsElement/udreGrowthRate STRINGS=VALS(lpp_udreGrowthRate_vals)
#.TYPE_ATTR
DGNSS-CorrectionsElement/udreValidityTime STRINGS=VALS(lpp_udreValidityTime_vals)
+#.FN_BODY GNSS-NavModelSatelliteElement/eag_1/svHealthExt-v12xy VAL_PTR = &svHealthExt_tvb
+ tvbuff_t *svHealthExt_tvb = NULL;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+
+#.FN_FTR GNSS-NavModelSatelliteElement/eag_1/svHealthExt-v12xy
+ if (svHealthExt_tvb) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_lpp_svHealthExt_v12xy);
+ proto_tree_add_bits_item(subtree, hf_lpp_svHealthExt_v12xy_e5bhs, svHealthExt_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_bits_item(subtree, hf_lpp_svHealthExt_v12xy_e1_bhs, svHealthExt_tvb, 2, 2, ENC_BIG_ENDIAN);
+ }
+
#.TYPE_ATTR
StandardClockModelElement/stanClockToc DISPLAY=BASE_CUSTOM STRINGS=&lpp_stanClockToc_fmt
@@ -500,6 +518,9 @@ StandardClockModelElement/stanClockAF0 DISPLAY=BASE_CUSTOM STRINGS=&lpp_stanCloc
StandardClockModelElement/stanClockTgd DISPLAY=BASE_CUSTOM STRINGS=&lpp_stanClockTgd_fmt
#.TYPE_ATTR
+StandardClockModelElement/sisa DISPLAY=BASE_CUSTOM STRINGS=&lpp_sisa_fmt
+
+#.TYPE_ATTR
StandardClockModelElement/stanModelID STRINGS=VALS(lpp_stanModelID_vals)
#.TYPE_ATTR
@@ -572,6 +593,24 @@ SBAS-ClockModel/sbasAgfo DISPLAY=BASE_CUSTOM STRINGS=&lpp_sbasAgfo_fmt
SBAS-ClockModel/sbasAgf1 DISPLAY=BASE_CUSTOM STRINGS=&lpp_sbasAgf1_fmt
#.TYPE_ATTR
+BDS-ClockModel-r12/bdsAODC-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAODC_AODE_r12_fmt
+
+#.TYPE_ATTR
+BDS-ClockModel-r12/bdsToc-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsToc_Toe_r12_fmt
+
+#.TYPE_ATTR
+BDS-ClockModel-r12/bdsA0-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsA0_r12_fmt
+
+#.TYPE_ATTR
+BDS-ClockModel-r12/bdsA1-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsA1_r12_fmt
+
+#.TYPE_ATTR
+BDS-ClockModel-r12/bdsA2-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsA2_r12_fmt
+
+#.TYPE_ATTR
+BDS-ClockModel-r12/bdsTgd1-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsTgd1_r12_fmt
+
+#.TYPE_ATTR
NavModelKeplerianSet/keplerToe DISPLAY=BASE_CUSTOM STRINGS=&lpp_keplerToe_fmt
#.TYPE_ATTR
@@ -690,7 +729,7 @@ NavModelCNAV-KeplerianSet/cnavDeltaNoDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_cnavDe
#.FN_FTR NavModelCNAV-KeplerianSet/cnavMo
PROTO_ITEM_SET_HIDDEN(actx->created_item);
actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavMo, "%e semi-circles (%"G_GINT64_MODIFIER"d)",
+ cnavMo, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
(double)cnavMo*pow(2, -32), cnavMo);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavE VAL_PTR=&cnavE
@@ -701,7 +740,7 @@ NavModelCNAV-KeplerianSet/cnavDeltaNoDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_cnavDe
#.FN_FTR NavModelCNAV-KeplerianSet/cnavE
PROTO_ITEM_SET_HIDDEN(actx->created_item);
actx->created_item = proto_tree_add_uint64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavE, "%e (%"G_GINT64_MODIFIER"u)",
+ cnavE, "%g (%"G_GINT64_MODIFIER"u)",
(double)cnavE*pow(2, -34), cnavE);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavOmega VAL_PTR=&cnavOmega
@@ -712,7 +751,7 @@ NavModelCNAV-KeplerianSet/cnavDeltaNoDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_cnavDe
#.FN_FTR NavModelCNAV-KeplerianSet/cnavOmega
PROTO_ITEM_SET_HIDDEN(actx->created_item);
actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavOmega, "%e semi-circles (%"G_GINT64_MODIFIER"d)",
+ cnavOmega, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
(double)cnavOmega*pow(2, -32), cnavOmega);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavOMEGA0 VAL_PTR=&cnavOMEGA0
@@ -723,7 +762,7 @@ NavModelCNAV-KeplerianSet/cnavDeltaNoDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_cnavDe
#.FN_FTR NavModelCNAV-KeplerianSet/cnavOMEGA0
PROTO_ITEM_SET_HIDDEN(actx->created_item);
actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavOMEGA0, "%e semi-circles (%"G_GINT64_MODIFIER"d)",
+ cnavOMEGA0, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
(double)cnavOMEGA0*pow(2, -32), cnavOMEGA0);
#.TYPE_ATTR
@@ -737,7 +776,7 @@ NavModelCNAV-KeplerianSet/cnavDeltaOmegaDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_cna
#.FN_FTR NavModelCNAV-KeplerianSet/cnavIo
PROTO_ITEM_SET_HIDDEN(actx->created_item);
actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavIo, "%e semi-circles (%"G_GINT64_MODIFIER"d)",
+ cnavIo, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
(double)cnavIo*pow(2, -32), cnavIo);
#.TYPE_ATTR
@@ -834,6 +873,60 @@ NavModel-SBAS-ECEF/sbasYgDotDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_sbasXgDotDot_Yg
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasZgDotDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_sbasZgDotDot_fmt
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsAODE-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAODC_AODE_r12_fmt
+
+#.FN_FTR NavModel-BDS-KeplerianSet-r12/bdsURAI-r12
+ proto_item_append_text(actx->created_item, " m");
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsToe-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsToc_Toe_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsAPowerHalf-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAPowerHalf_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsE-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsE_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsW-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsW_M0_Omega0_I0_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsDeltaN-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsDeltaN_OmegaDot_IDot_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsM0-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsW_M0_Omega0_I0_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsOmega0-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsW_M0_Omega0_I0_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsOmegaDot-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsDeltaN_OmegaDot_IDot_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsI0-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsW_M0_Omega0_I0_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsIDot-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsDeltaN_OmegaDot_IDot_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsCuc-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsCuc_Cus_Cic_Cis_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsCus-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsCuc_Cus_Cic_Cis_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsCrc-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsCrc_Crs_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsCrs-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsCrc_Crs_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsCic-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsCuc_Cus_Cic_Cis_r12_fmt
+
+#.TYPE_ATTR
+NavModel-BDS-KeplerianSet-r12/bdsCis-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsCuc_Cus_Cic_Cis_r12_fmt
+
#.FN_FTR GNSS-DataBitAssistance/gnss-TOD
proto_item_append_text(actx->created_item, " s");
@@ -867,8 +960,29 @@ GNSS-AcquisitionAssistElement/azimuth DISPLAY=BASE_CUSTOM STRINGS=&lpp_azimuth_e
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/elevation DISPLAY=BASE_CUSTOM STRINGS=&lpp_azimuth_elevation_fmt
-#.TYPE_ATTR
-GNSS-Almanac/toa DISPLAY=BASE_CUSTOM STRINGS=&lpp_toa_fmt
+#.FN_BODY GNSS-Almanac/toa VAL_PTR = &toa
+ guint32 toa, val;
+ int len, old_offset = offset;
+ T_GNSS_ID_enum gnss_id = (T_GNSS_ID_enum)GPOINTER_TO_UINT(actx->private_data);
+%(DEFAULT_BODY)s
+
+#.FN_FTR GNSS-Almanac/toa
+ len = (offset-old_offset) >> 3 ? (offset-old_offset) >> 3 : 1;
+ val = (gnss_id == T_GNSS_ID_GALILEO) ? 600*toa : 4096*toa;
+ actx->created_item = proto_tree_add_uint_format_value(tree, hf_lpp_toa, tvb, old_offset, len,
+ toa, "%u s (%u)", val, toa);
+
+#.FN_BODY GNSS-Almanac/eag_1/toa-ext-v12xy VAL_PTR = &toa_ext
+ guint32 toa_ext, val;
+ int len, old_offset = offset;
+ T_GNSS_ID_enum gnss_id = (T_GNSS_ID_enum)GPOINTER_TO_UINT(actx->private_data);
+%(DEFAULT_BODY)s
+
+#.FN_FTR GNSS-Almanac/eag_1/toa-ext-v12xy
+ len = (offset-old_offset) >> 3 ? (offset-old_offset) >> 3 : 1;
+ val = (gnss_id == T_GNSS_ID_GALILEO) ? 600*toa_ext : 4096*toa_ext;
+ actx->created_item = proto_tree_add_uint_format_value(tree, hf_lpp_toa_ext_v12xy, tvb, old_offset, len,
+ toa_ext, "%u s (%u)", val, toa_ext);
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacE DISPLAY=BASE_CUSTOM STRINGS=&lpp_kepAlmanacE_fmt
@@ -879,6 +993,29 @@ AlmanacKeplerianSet/kepAlmanacDeltaI DISPLAY=BASE_CUSTOM STRINGS=&lpp_kepAlmanac
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacOmegaDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_kepAlmanacOmegaDot_fmt
+#.FN_BODY AlmanacKeplerianSet/kepSV-StatusINAV VAL_PTR = &statusINAV_tvb
+ tvbuff_t *statusINAV_tvb = NULL;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+
+#.FN_FTR AlmanacKeplerianSet/kepSV-StatusINAV
+ if (statusINAV_tvb) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_kepSV_StatusINAV);
+ proto_tree_add_bits_item(subtree, hf_lpp_kepSV_StatusINAV_e5bhs, statusINAV_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_bits_item(subtree, hf_lpp_kepSV_StatusINAV_e1_bhs, statusINAV_tvb, 2, 2, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY AlmanacKeplerianSet/kepSV-StatusFNAV VAL_PTR = &statusFNAV_tvb
+ tvbuff_t *statusFNAV_tvb = NULL;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+
+#.FN_FTR AlmanacKeplerianSet/kepSV-StatusFNAV
+ if (statusFNAV_tvb) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_kepSV_StatusFNAV);
+ proto_tree_add_bits_item(subtree, hf_lpp_kepSV_StatusFNAV_e5ahs, statusFNAV_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacAPowerHalf DISPLAY=BASE_CUSTOM STRINGS=&lpp_kepAlmanacAPowerHalf_fmt
@@ -1006,6 +1143,60 @@ AlmanacECEF-SBAS-AlmanacSet/sbasAlmZgDot DISPLAY=BASE_CUSTOM STRINGS=&lpp_sbasAl
AlmanacECEF-SBAS-AlmanacSet/sbasAlmTo DISPLAY=BASE_CUSTOM STRINGS=&lpp_sbasAlmTo_fmt
#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmToa-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmToa_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmSqrtA-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmSqrtA_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmE-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmE_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmW-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmW_M0_Omega0_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmM0-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmW_M0_Omega0_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmOmega0-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmW_M0_Omega0_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmOmegaDot-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmOmegaDot_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmDeltaI-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmDeltaI_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmA0-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmA0_r12_fmt
+
+#.TYPE_ATTR
+AlmanacBDS-AlmanacSet-r12/bdsAlmA1-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bdsAlmA1_r12_fmt
+
+#.FN_BODY AlmanacBDS-AlmanacSet-r12/bdsSvHealth-r12 VAL_PTR = &bdsSvHealth_tvb
+ tvbuff_t *bdsSvHealth_tvb = NULL;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+
+#.FN_FTR AlmanacBDS-AlmanacSet-r12/bdsSvHealth-r12
+ if (bdsSvHealth_tvb) {
+ guint16 bits;
+ subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bdsSvHealth_r12);
+ bits = tvb_get_bits16(bdsSvHealth_tvb, 0, 9,ENC_BIG_ENDIAN);
+ if (bits == 0x1ff) {
+ proto_tree_add_boolean_bits_format_value(subtree, hf_lpp_bdsSvHealth_r12_sat_clock, bdsSvHealth_tvb, 0, 1, 1,
+ "Satellite is in failure or permanently shut off (1)");
+ } else if (bits == 0x100) {
+ proto_tree_add_boolean_bits_format_value(subtree, hf_lpp_bdsSvHealth_r12_sat_clock, bdsSvHealth_tvb, 0, 1, 1,
+ "Satellite clock is unavailable (1)");
+ } else {
+ proto_tree_add_bits_item(subtree, hf_lpp_bdsSvHealth_r12_sat_clock, bdsSvHealth_tvb, 0, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_bits_item(subtree, hf_lpp_bdsSvHealth_r12_b1i, bdsSvHealth_tvb, 1, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_bits_item(subtree, hf_lpp_bdsSvHealth_r12_b2i, bdsSvHealth_tvb, 2, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_bits_item(subtree, hf_lpp_bdsSvHealth_r12_nav, bdsSvHealth_tvb, 7, 1, ENC_BIG_ENDIAN);
+ }
+ }
+
+#.TYPE_ATTR
UTC-ModelSet1/gnss-Utc-A1 DISPLAY=BASE_CUSTOM STRINGS=&lpp_gnss_Utc_A1_fmt
#.TYPE_ATTR
@@ -1107,6 +1298,45 @@ UTC-ModelSet4/utcTot DISPLAY=BASE_CUSTOM STRINGS=&lpp_gnss_Utc_Tot_fmt
#.TYPE_ATTR
UTC-ModelSet4/utcStandardID TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_utcStandardID_vals)
+#.TYPE_ATTR
+UTC-ModelSet5-r12/utcA0-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_gnss_Utc_A0_fmt
+
+#.TYPE_ATTR
+UTC-ModelSet5-r12/utcA1-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_gnss_Utc_A1_fmt
+
+#.FN_FTR UTC-ModelSet5-r12/utcDeltaTls-r12
+ proto_item_append_text(actx->created_item, " s");
+
+#.FN_FTR UTC-ModelSet5-r12/utcWNlsf-r12
+ proto_item_append_text(actx->created_item, " weeks");
+
+#.FN_FTR UTC-ModelSet5-r12/utcDN-r12
+ proto_item_append_text(actx->created_item, " days");
+
+#.FN_FTR UTC-ModelSet5-r12/utcDeltaTlsf-r12
+ proto_item_append_text(actx->created_item, " s");
+
+#.FN_FTR BDS-DifferentialCorrections-r12/dbds-RefTime-r12
+ proto_item_append_text(actx->created_item, " s");
+
+#.TYPE_ATTR
+DBDS-CorrectionElement-r12/bds-UDREI-r12 TYPE=FT_UINT8 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lpp_bds_UDREI_vals_ext
+
+#.TYPE_ATTR
+DBDS-CorrectionElement-r12/bds-RURAI-r12 TYPE=FT_UINT8 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lpp_bds_RURAI_vals_ext
+
+#.TYPE_ATTR
+DBDS-CorrectionElement-r12/bds-ECC-DeltaT-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bds_ECC_DeltaT_r12_fmt
+
+#.FN_FTR BDS-GridModelParameter-r12/bds-RefTime-r12
+ proto_item_append_text(actx->created_item, " s");
+
+#.TYPE_ATTR
+GridIonElement-r12/dt-r12 DISPLAY=BASE_CUSTOM STRINGS=&lpp_bds_GridIonElement_dt_r12_fmt
+
+#.TYPE_ATTR
+GridIonElement-r12/givei-r12 TYPE=FT_UINT8 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lpp_bds_givei_vals_ext
+
#.FN_FTR StoredNavListInfo/gnss-WeekOrDay
proto_item_append_text(actx->created_item, " (days for glonass, weeks otherwise)");
@@ -1202,6 +1432,9 @@ GNSS-SatMeasElement/adr DISPLAY=BASE_CUSTOM STRINGS=&lpp_adr_fmt
if (len >= 5) {
proto_tree_add_item(subtree, hf_lpp_T_clockModel_model_5, clockModel_tvb, 0, 1, ENC_BIG_ENDIAN);
}
+ if (len >= 6) {
+ proto_tree_add_item(subtree, hf_lpp_T_clockModel_model_6, clockModel_tvb, 0, 1, ENC_BIG_ENDIAN);
+ }
}
#.FN_BODY GNSS-NavigationModelSupport/orbitModel VAL_PTR = &orbitModel_tvb LEN_PTR = &len
@@ -1228,6 +1461,9 @@ GNSS-SatMeasElement/adr DISPLAY=BASE_CUSTOM STRINGS=&lpp_adr_fmt
if (len >= 5) {
proto_tree_add_item(subtree, hf_lpp_T_orbitModel_model_5, orbitModel_tvb, 0, 1, ENC_BIG_ENDIAN);
}
+ if (len >= 6) {
+ proto_tree_add_item(subtree, hf_lpp_T_orbitModel_model_6, orbitModel_tvb, 0, 1, ENC_BIG_ENDIAN);
+ }
}
#.FN_BODY GNSS-AlmanacSupport/almanacModel VAL_PTR = &almanacModel_tvb LEN_PTR = &len
@@ -1257,6 +1493,9 @@ GNSS-SatMeasElement/adr DISPLAY=BASE_CUSTOM STRINGS=&lpp_adr_fmt
if (len >= 6) {
proto_tree_add_item(subtree, hf_lpp_T_almanacModel_model_6, almanacModel_tvb, 0, 1, ENC_BIG_ENDIAN);
}
+ if (len >= 7) {
+ proto_tree_add_item(subtree, hf_lpp_T_almanacModel_model_7, almanacModel_tvb, 0, 1, ENC_BIG_ENDIAN);
+ }
}
#.FN_BODY GNSS-UTC-ModelSupport/utc-Model VAL_PTR = &utc_Model_tvb LEN_PTR = &len
@@ -1280,8 +1519,16 @@ GNSS-SatMeasElement/adr DISPLAY=BASE_CUSTOM STRINGS=&lpp_adr_fmt
if (len >= 4) {
proto_tree_add_item(subtree, hf_lpp_T_utc_Model_model_4, utc_Model_tvb, 0, 1, ENC_BIG_ENDIAN);
}
+ if (len >= 5) {
+ proto_tree_add_item(subtree, hf_lpp_T_utc_Model_model_5, utc_Model_tvb, 0, 1, ENC_BIG_ENDIAN);
+ }
}
+#.FN_BODY GNSS-ID/gnss-id VAL_PTR = &gnss_id
+ guint32 gnss_id;
+%(DEFAULT_BODY)s
+ actx->private_data = GUINT_TO_POINTER(gnss_id);
+
#.FN_BODY GNSS-ID-Bitmap/gnss-ids VAL_PTR = &gnss_ids_tvb LEN_PTR = &len
tvbuff_t *gnss_ids_tvb = NULL;
int len;
@@ -1306,6 +1553,9 @@ GNSS-SatMeasElement/adr DISPLAY=BASE_CUSTOM STRINGS=&lpp_adr_fmt
if (len >= 5) {
proto_tree_add_item(subtree, hf_lpp_T_gnss_ids_glonass, gnss_ids_tvb, 0, 1, ENC_BIG_ENDIAN);
}
+ if (len >= 6) {
+ proto_tree_add_item(subtree, hf_lpp_T_gnss_ids_bds, gnss_ids_tvb, 0, 1, ENC_BIG_ENDIAN);
+ }
}
#.FN_BODY SBAS-IDs/sbas-IDs VAL_PTR = &sbas_IDs_tvb LEN_PTR = &len