wireshark/epan/dissectors/asn1/lpp/lpp.cnf

1933 lines
70 KiB
INI

# lpp.cnf
# lpp conformation file
# Copyright 2011-2021 Pascal Quantin
#.OPT
PER
UNALIGNED
#.END
#.USE_VALS_EXT
CarrierFreqOffsetNB-r14
#.EXPORTS
ARFCN-ValueEUTRA
ARFCN-ValueEUTRA-v9a0
ARFCN-ValueUTRA
CellGlobalIdEUTRA-AndUTRA
CellGlobalIdGERAN
DisplacementTimeStamp-r15_PDU
ECID-SignalMeasurementInformation
Ellipsoid-Point
Ellipsoid-Point_PDU
Ellipsoid-PointWithUncertaintyCircle_PDU
EllipsoidArc_PDU
EllipsoidPointWithAltitude
EllipsoidPointWithAltitude_PDU
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid_PDU
EllipsoidPointWithUncertaintyEllipse_PDU
GNSS-ID
GNSS-ID-Bitmap
GNSS-SignalID
GNSS-SignalIDs
GNSS-SystemTime
HorizontalVelocity_PDU
HorizontalVelocityWithUncertainty_PDU
HorizontalWithVerticalVelocity_PDU
LocationCoordinates_PDU
LocationError_PDU
LocationSource-r13_PDU
NetworkTime
OTDOA-NeighbourCellInfoElement
OTDOA-ReferenceCellInfo
Polygon_PDU
Sensor-MeasurementInformation-r13_PDU
Sensor-MotionInformation-r15_PDU
SV-ID
Velocity
Velocity_PDU
#.END
#.PDU
BDS-DifferentialCorrections-r12
BDS-GridModelParameter-r12
DisplacementTimeStamp-r15
Ellipsoid-Point
Ellipsoid-PointWithUncertaintyCircle
EllipsoidArc
EllipsoidPointWithAltitude
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid
EllipsoidPointWithUncertaintyEllipse
GLO-RTK-BiasInformation-r15
GNSS-AcquisitionAssistance
GNSS-AuxiliaryInformation
GNSS-Almanac
GNSS-DataBitAssistance
GNSS-DifferentialCorrections
GNSS-EarthOrientationParameters
GNSS-IonosphericModel
GNSS-NavigationModel
GNSS-RealTimeIntegrity
GNSS-ReferenceTime
GNSS-ReferenceLocation
GNSS-RTK-AuxiliaryStationData-r15
GNSS-RTK-CommonObservationInfo-r15
GNSS-RTK-FKP-Gradients-r15
GNSS-RTK-MAC-CorrectionDifferences-r15
GNSS-RTK-Observations-r15
GNSS-RTK-ReferenceStationInfo-r15
GNSS-RTK-Residuals-r15
GNSS-SSR-ClockCorrections-r15
GNSS-SSR-CodeBias-r15
GNSS-SSR-CorrectionPoints-r16
GNSS-SSR-GriddedCorrection-r16
GNSS-SSR-OrbitCorrections-r15
GNSS-SSR-PhaseBias-r16
GNSS-SSR-STEC-Correction-r16
GNSS-SSR-URA-r16
GNSS-TimeModelList
GNSS-UTC-Model
HorizontalVelocity
HorizontalVelocityWithUncertainty
HorizontalWithVerticalVelocity
LocationCoordinates
LocationError
LocationSource-r13
LPP-Message
NavIC-DifferentialCorrections-r16
NavIC-GridModelParameter-r16
NR-DL-PRS-AssistanceData-r16
NR-UEB-TRP-LocationData-r16
NR-UEB-TRP-RTD-Info-r16
OTDOA-UE-Assisted-r15
Polygon
Sensor-AssistanceDataList-r14
Sensor-MeasurementInformation-r13
Sensor-MotionInformation-r15
TBS-AssistanceDataList-r14
Velocity
#.FIELD_RENAME
CellGlobalIdGERAN/cellIdentity cellGlobalIdGERAN_cellIdentity
LocationCoordinates/polygon locationCoordinates_polygon
UTC-ModelSet4/utcDN UTC-ModelSet4_utcDN
#.FIELD_ATTR
CellGlobalIdGERAN/cellIdentity ABBREV=cellGlobalIdGERAN.cellIdentity
LocationCoordinates/polygon ABBREV=locationCoordinates.polygon
UTC-ModelSet4/utcDN ABBREV=uTC-ModelSet4.utcDN
#.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");
#.FN_HDR ProvideCapabilities
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Capabilities");
#.FN_HDR RequestAssistanceData
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Assistance Data");
#.FN_HDR ProvideAssistanceData
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Assistance Data");
#.FN_HDR RequestLocationInformation
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Location Information");
#.FN_HDR ProvideLocationInformation
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Location Information");
#.FN_HDR Abort
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Abort");
#.FN_HDR Error
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Error");
#.FN_BODY EPDU-ID VAL_PTR = &lpp_epdu_id
%(DEFAULT_BODY)s
#.TYPE_ATTR
EPDU-ID STRINGS=VALS(lpp_ePDU_ID_vals)
#.FN_BODY EPDU-Body VAL_PTR=&lppe_tvb
tvbuff_t *lppe_tvb = NULL;
%(DEFAULT_BODY)s
switch(lpp_epdu_id){
case 1:
if (lppe_tvb && lppe_handle) {
call_dissector(lppe_handle, lppe_tvb, actx->pinfo, tree);
}
break;
default:
break;
}
lpp_epdu_id = -1;
#.TYPE_ATTR
Ellipsoid-Point/degreesLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLatitude_fmt)
#.TYPE_ATTR
Ellipsoid-Point/degreesLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLongitude_fmt)
#.TYPE_ATTR
Ellipsoid-PointWithUncertaintyCircle/degreesLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLatitude_fmt)
#.TYPE_ATTR
Ellipsoid-PointWithUncertaintyCircle/degreesLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLongitude_fmt)
#.TYPE_ATTR
Ellipsoid-PointWithUncertaintyCircle/uncertainty DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertainty_fmt)
#.TYPE_ATTR
EllipsoidPointWithUncertaintyEllipse/degreesLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLatitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithUncertaintyEllipse/degreesLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLongitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithUncertaintyEllipse/uncertaintySemiMajor DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertainty_fmt)
#.TYPE_ATTR
EllipsoidPointWithUncertaintyEllipse/uncertaintySemiMinor DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertainty_fmt)
#.TYPE_ATTR
EllipsoidPointWithUncertaintyEllipse/orientationMajorAxis DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_angle_fmt)
#.TYPE_ATTR
EllipsoidPointWithUncertaintyEllipse/confidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitude/degreesLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLatitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitude/degreesLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLongitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitude/altitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_altitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid/degreesLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLatitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid/degreesLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLongitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid/altitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_altitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid/uncertaintySemiMajor DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertainty_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid/uncertaintySemiMinor DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertainty_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid/orientationMajorAxis DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_angle_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid/uncertaintyAltitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertaintyAltitude_fmt)
#.TYPE_ATTR
EllipsoidPointWithAltitudeAndUncertaintyEllipsoid/confidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
EllipsoidArc/degreesLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLatitude_fmt)
#.TYPE_ATTR
EllipsoidArc/degreesLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLongitude_fmt)
#.TYPE_ATTR
EllipsoidArc/innerRadius DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_radius_fmt)
#.TYPE_ATTR
EllipsoidArc/uncertaintyRadius DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertainty_fmt)
#.TYPE_ATTR
EllipsoidArc/offsetAngle DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_angle_fmt)
#.TYPE_ATTR
EllipsoidArc/includedAngle DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_angle_fmt)
#.TYPE_ATTR
EllipsoidArc/confidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
HorizontalVelocity/bearing DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_degree_degrees
#.TYPE_ATTR
HorizontalVelocity/horizontalSpeed DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kmh
#.TYPE_ATTR
HorizontalVelocityWithUncertainty/bearing DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_degree_degrees
#.TYPE_ATTR
HorizontalVelocityWithUncertainty/horizontalSpeed DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kmh
#.TYPE_ATTR
HorizontalVelocityWithUncertainty/uncertaintySpeed DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kmh
#.TYPE_ATTR
HorizontalWithVerticalVelocityAndUncertainty/bearing DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_degree_degrees
#.TYPE_ATTR
HorizontalWithVerticalVelocityAndUncertainty/horizontalSpeed DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kmh
#.TYPE_ATTR
HorizontalWithVerticalVelocityAndUncertainty/verticalSpeed DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kmh
#.TYPE_ATTR
HorizontalWithVerticalVelocityAndUncertainty/horizontalUncertaintySpeed DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kmh
#.TYPE_ATTR
HorizontalWithVerticalVelocityAndUncertainty/verticalUncertaintySpeed DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kmh
#.TYPE_ATTR
PolygonPoints/degreesLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLatitude_fmt)
#.TYPE_ATTR
PolygonPoints/degreesLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_degreesLongitude_fmt)
#.FN_BODY PeriodicalReportingCriteria/reportingInterval VAL_PTR=&idx
guint32 idx;
const gchar *interval[10] = {"", ": 1s", ": 2s", ": 4s", ": 8s", ": 10s",
": 16s", ": 20s", ": 32s", ": 64s"};
%(DEFAULT_BODY)s
#.FN_FTR PeriodicalReportingCriteria/reportingInterval
if (idx < 10) {
proto_item_append_text(actx->created_item, "%s", interval[idx]);
}
#.FN_BODY ReportingDuration VAL_PTR = &duration
guint32 duration;
%(DEFAULT_BODY)s
if (duration == 0) {
proto_item_append_text(actx->created_item, " (infinite)");
}
#.TYPE_ATTR
ReportingDuration DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
HorizontalAccuracy/accuracy DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertainty_fmt)
#.TYPE_ATTR
HorizontalAccuracy/confidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
VerticalAccuracy/accuracy DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_uncertainty_fmt)
#.TYPE_ATTR
VerticalAccuracy/confidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
HorizontalAccuracyExt-r15/confidence-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
VerticalAccuracyExt-r15/confidence-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
ResponseTime/time DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
ResponseTime/eag_1/responseTimeEarlyFix-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
ResponseTimeNB-r14/timeNB-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
MessageSizeLimitNB-r14/measurementLimit-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_measurementLimit_fmt)
#.TYPE_ATTR
OTDOA-ReferenceCellInfo/eag_4/nr-LTE-fineTiming-Offset-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_nr_LTE_fineTiming_Offset_fmt)
#.TYPE_ATTR
OTDOA-NeighbourCellInfoElement/expectedRSTD DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_expectedRSTD_fmt)
#.TYPE_ATTR
OTDOA-NeighbourCellInfoElement/expectedRSTD-Uncertainty DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_expectedRSTD_Uncertainty_fmt)
#.TYPE_ATTR
NeighbourMeasurementElement/rstd DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_rstd_fmt)
#.FN_BODY OTDOA-MeasQuality/error-Resolution VAL_PTR = &error_Resolution_tvb HF_INDEX=-1
tvbuff_t *error_Resolution_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR OTDOA-MeasQuality/error-Resolution
if (error_Resolution_tvb) {
guint bitvalue = tvb_get_bits8(error_Resolution_tvb, 0, 2);
actx->created_item = proto_tree_add_uint(tree, hf_index, error_Resolution_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
OTDOA-MeasQuality/error-Resolution TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_error_Resolution_vals)
#.FN_BODY OTDOA-MeasQuality/error-Value VAL_PTR = &error_Value_tvb HF_INDEX=-1
tvbuff_t *error_Value_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR OTDOA-MeasQuality/error-Value
if (error_Value_tvb) {
guint bitvalue = tvb_get_bits8(error_Value_tvb, 0, 5);
actx->created_item = proto_tree_add_uint(tree, hf_index, error_Value_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
OTDOA-MeasQuality/error-Value TYPE=FT_UINT8 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lpp_error_Value_vals_ext
#.FN_BODY OTDOA-MeasQuality/error-NumSamples VAL_PTR = &error_NumSamples_tvb HF_INDEX=-1
tvbuff_t *error_NumSamples_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR OTDOA-MeasQuality/error-NumSamples
if (error_NumSamples_tvb) {
guint bitvalue = tvb_get_bits8(error_NumSamples_tvb, 0, 3);
actx->created_item = proto_tree_add_uint(tree, hf_index, error_NumSamples_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
OTDOA-MeasQuality/error-NumSamples TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_error_NumSamples_vals)
#.TYPE_ATTR
AdditionalPath-r14/relativeTimeDifference-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_relativeTimeDifference_fmt)
#.TYPE_ATTR
GNSS-ReferenceTime/referenceTimeUnc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_referenceTimeUnc_fmt)
#.TYPE_ATTR
GNSS-ReferenceTimeForOneCell/referenceTimeUnc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_referenceTimeUnc_fmt)
#.FN_BODY GNSS-SystemTime/notificationOfLeapSecond VAL_PTR = &notificationOfLeapSecond_tvb HF_INDEX=-1
tvbuff_t *notificationOfLeapSecond_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR GNSS-SystemTime/notificationOfLeapSecond
if (notificationOfLeapSecond_tvb) {
guint bitvalue = tvb_get_bits8(notificationOfLeapSecond_tvb, 0, 2);
actx->created_item = proto_tree_add_uint(tree, hf_index, notificationOfLeapSecond_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
GNSS-SystemTime/notificationOfLeapSecond TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_kp_vals)
#.TYPE_ATTR
NetworkTime/fractionalSecondsFromFrameStructureStart DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_fractionalSecondsFromFrameStructureStart_fmt)
#.TYPE_ATTR
NetworkTime/frameDrift DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_frameDrift_fmt)
#.FN_BODY KlobucharModelParameter/dataID VAL_PTR = &dataID_tvb HF_INDEX=-1
tvbuff_t *dataID_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR KlobucharModelParameter/dataID
if (dataID_tvb) {
guint bitvalue = tvb_get_bits8(dataID_tvb, 0, 2);
actx->created_item = proto_tree_add_uint(tree, hf_index, dataID_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
KlobucharModelParameter/dataID TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_dataID_vals)
#.TYPE_ATTR
KlobucharModelParameter/alfa0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_alpha0_fmt)
#.TYPE_ATTR
KlobucharModelParameter/alfa1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_alpha1_fmt)
#.TYPE_ATTR
KlobucharModelParameter/alfa2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_alpha2_3_fmt)
#.TYPE_ATTR
KlobucharModelParameter/alfa3 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_alpha2_3_fmt)
#.TYPE_ATTR
KlobucharModelParameter/beta0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_beta0_fmt)
#.TYPE_ATTR
KlobucharModelParameter/beta1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_beta1_fmt)
#.TYPE_ATTR
KlobucharModelParameter/beta2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_beta2_3_fmt)
#.TYPE_ATTR
KlobucharModelParameter/beta3 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_beta2_3_fmt)
#.TYPE_ATTR
NeQuickModelParameter/ai0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_ai0_fmt)
#.TYPE_ATTR
NeQuickModelParameter/ai1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_ai1_fmt)
#.TYPE_ATTR
NeQuickModelParameter/ai2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_ai2_fmt)
#.TYPE_ATTR
GNSS-EarthOrientationParameters/teop DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_teop_fmt)
#.TYPE_ATTR
GNSS-EarthOrientationParameters/pmX DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_pmX_Y_fmt)
#.TYPE_ATTR
GNSS-EarthOrientationParameters/pmXdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_pmX_Ydot_fmt)
#.TYPE_ATTR
GNSS-EarthOrientationParameters/pmY DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_pmX_Y_fmt)
#.TYPE_ATTR
GNSS-EarthOrientationParameters/pmYdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_pmX_Ydot_fmt)
#.TYPE_ATTR
GNSS-EarthOrientationParameters/deltaUT1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_deltaUT1_fmt)
#.TYPE_ATTR
GNSS-EarthOrientationParameters/deltaUT1dot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_deltaUT1dot_fmt)
#.TYPE_ATTR
GNSS-RTK-ReferenceStationInfo-r15/antenna-reference-point-ECEF-X-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000m_64_fmt)
#.TYPE_ATTR
GNSS-RTK-ReferenceStationInfo-r15/antenna-reference-point-ECEF-Y-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000m_64_fmt)
#.TYPE_ATTR
GNSS-RTK-ReferenceStationInfo-r15/antenna-reference-point-ECEF-Z-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000m_64_fmt)
#.TYPE_ATTR
GNSS-RTK-ReferenceStationInfo-r15/antennaHeight-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000m_32_fmt)
#.TYPE_ATTR
AntennaReferencePointUnc-r15/confidence-X-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
AntennaReferencePointUnc-r15/confidence-Y-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
AntennaReferencePointUnc-r15/confidence-Z-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
PhysicalReferenceStationInfo-r15/physical-ARP-ECEF-X-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000m_64_fmt)
#.TYPE_ATTR
PhysicalReferenceStationInfo-r15/physical-ARP-ECEF-Y-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000m_64_fmt)
#.TYPE_ATTR
PhysicalReferenceStationInfo-r15/physical-ARP-ECEF-Z-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000m_64_fmt)
#.TYPE_ATTR
GNSS-RTK-CommonObservationInfo-r15/clockSteeringIndicator-r15 TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_clockSteeringIndicator_vals)
#.TYPE_ATTR
GNSS-RTK-CommonObservationInfo-r15/externalClockIndicator-r15 TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_externalClockIndicator_vals)
#.TYPE_ATTR
GNSS-RTK-CommonObservationInfo-r15/smoothingIndicator-r15 TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_smoothingIndicator_r15_vals)
#.FN_BODY GNSS-RTK-CommonObservationInfo-r15/smoothingIndicator-r15 VAL_PTR = &param_tvb HF_INDEX=-1
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR GNSS-RTK-CommonObservationInfo-r15/smoothingIndicator-r15
if (param_tvb) {
guint bitvalue = tvb_get_bits8(param_tvb, 0, 1);
actx->created_item = proto_tree_add_uint(tree, hf_index, param_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
GNSS-RTK-CommonObservationInfo-r15/smoothingInterval-r15 TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_smoothingInterval_r15_vals)
#.FN_BODY GNSS-RTK-CommonObservationInfo-r15/smoothingInterval-r15 VAL_PTR = &param_tvb HF_INDEX=-1
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR GNSS-RTK-CommonObservationInfo-r15/smoothingInterval-r15
if (param_tvb) {
guint bitvalue = tvb_get_bits8(param_tvb, 0, 3);
actx->created_item = proto_tree_add_uint(tree, hf_index, param_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
AuxiliaryStationElement-r15/aux-master-delta-latitude-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_aux_master_delta_fmt)
#.TYPE_ATTR
AuxiliaryStationElement-r15/aux-master-delta-longitude-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_aux_master_delta_fmt)
#.TYPE_ATTR
AuxiliaryStationElement-r15/aux-master-delta-height-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000m_32_fmt)
#.TYPE_ATTR
Aux-ARP-Unc-r15/horizontalConfidence-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
Aux-ARP-Unc-r15/verticalConfidence-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
GNSS-TimeModelElement/gnss-TimeModelRefTime DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gnss_TimeModelRefTime_fmt)
#.TYPE_ATTR
GNSS-TimeModelElement/tA0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_tA0_fmt)
#.TYPE_ATTR
GNSS-TimeModelElement/tA1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_tA1_fmt)
#.TYPE_ATTR
GNSS-TimeModelElement/tA2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_tA2_fmt)
#.TYPE_ATTR
GNSS-TimeModelElement/gnss-TO-ID STRINGS=VALS(lpp_gnss_TO_ID_vals)
#.TYPE_ATTR
GNSS-TimeModelElement/deltaT DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
GNSS-DifferentialCorrections/dgnss-RefTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
DGNSS-SgnTypeElement/gnss-StatusHealth STRINGS=VALS(lpp_gnss_StatusHealth_vals)
#.TYPE_ATTR
DGNSS-CorrectionsElement/udre STRINGS=VALS(lpp_udre_vals)
#.TYPE_ATTR
DGNSS-CorrectionsElement/pseudoRangeCor DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_pseudoRangeCor_fmt)
#.TYPE_ATTR
DGNSS-CorrectionsElement/rangeRateCor DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_rangeRateCor_fmt)
#.TYPE_ATTR
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-v1240 VAL_PTR = &svHealthExt_tvb
tvbuff_t *svHealthExt_tvb = NULL;
proto_tree *subtree;
%(DEFAULT_BODY)s
#.FN_FTR GNSS-NavModelSatelliteElement/eag_1/svHealthExt-v1240
if (svHealthExt_tvb) {
subtree = proto_item_add_subtree(actx->created_item, ett_lpp_svHealthExt_v1240);
proto_tree_add_bits_item(subtree, hf_lpp_svHealthExt_v1240_e5bhs, svHealthExt_tvb, 0, 2, ENC_BIG_ENDIAN);
proto_tree_add_bits_item(subtree, hf_lpp_svHealthExt_v1240_e1_bhs, svHealthExt_tvb, 2, 2, ENC_BIG_ENDIAN);
}
#.TYPE_ATTR
StandardClockModelElement/stanClockToc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_stanClockToc_fmt)
#.TYPE_ATTR
StandardClockModelElement/stanClockAF2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_stanClockAF2_fmt)
#.TYPE_ATTR
StandardClockModelElement/stanClockAF1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_stanClockAF1_fmt)
#.TYPE_ATTR
StandardClockModelElement/stanClockAF0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_stanClockAF0_fmt)
#.TYPE_ATTR
StandardClockModelElement/stanClockTgd DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_stanClockTgd_fmt)
#.TYPE_ATTR
StandardClockModelElement/sisa DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sisa_fmt)
#.TYPE_ATTR
StandardClockModelElement/stanModelID STRINGS=VALS(lpp_stanModelID_vals)
#.TYPE_ATTR
NAV-ClockModel/navToc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navToc_fmt)
#.TYPE_ATTR
NAV-ClockModel/navaf2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navaf2_fmt)
#.TYPE_ATTR
NAV-ClockModel/navaf1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navaf1_fmt)
#.TYPE_ATTR
NAV-ClockModel/navaf0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navaf0_navTgd_fmt)
#.TYPE_ATTR
NAV-ClockModel/navTgd DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navaf0_navTgd_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavToc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavToc_cnavTop_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavTop DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavToc_cnavTop_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavAf2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavAf2_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavAf1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavAf1_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavAf0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavX_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavTgd DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavX_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavISCl1cp DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavX_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavISCl1cd DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavX_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavISCl1ca DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavX_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavISCl2c DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavX_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavISCl5i5 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavX_fmt)
#.TYPE_ATTR
CNAV-ClockModel/cnavISCl5q5 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavX_fmt)
#.TYPE_ATTR
GLONASS-ClockModel/gloTau DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloTau_gloDeltaTau_fmt)
#.TYPE_ATTR
GLONASS-ClockModel/gloGamma DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloGamma_fmt)
#.TYPE_ATTR
GLONASS-ClockModel/gloDeltaTau DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloTau_gloDeltaTau_fmt)
#.TYPE_ATTR
SBAS-ClockModel/sbasTo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasTo_fmt)
#.TYPE_ATTR
SBAS-ClockModel/sbasAgfo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAgfo_fmt)
#.TYPE_ATTR
SBAS-ClockModel/sbasAgf1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAgf1_fmt)
#.TYPE_ATTR
BDS-ClockModel-r12/bdsAODC-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAODC_AODE_r12_fmt)
#.TYPE_ATTR
BDS-ClockModel-r12/bdsToc-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsToc_Toe_r12_fmt)
#.TYPE_ATTR
BDS-ClockModel-r12/bdsA0-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsA0_r12_fmt)
#.TYPE_ATTR
BDS-ClockModel-r12/bdsA1-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsA1_r12_fmt)
#.TYPE_ATTR
BDS-ClockModel-r12/bdsA2-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsA2_r12_fmt)
#.TYPE_ATTR
BDS-ClockModel-r12/bdsTgd1-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsTgd1_r12_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerToe DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerToe_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerW DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerW_M0_I0_Omega0_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerDeltaN DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerDeltaN_OmegaDot_IDot_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerM0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerW_M0_I0_Omega0_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerOmegaDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerDeltaN_OmegaDot_IDot_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerE DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerE_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerIDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerDeltaN_OmegaDot_IDot_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerAPowerHalf DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerAPowerHalf_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerI0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerW_M0_I0_Omega0_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerOmega0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerW_M0_I0_Omega0_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerCrs DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerCrs_Crc_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerCis DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerCx_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerCus DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerCx_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerCrc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerCrs_Crc_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerCic DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerCx_fmt)
#.TYPE_ATTR
NavModelKeplerianSet/keplerCuc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_keplerCx_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navToe DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navToe_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navOmega DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navOmega_M0_I0_OmegaA0_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navDeltaN DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navDeltaN_OmegaADot_IDot_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navM0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navOmega_M0_I0_OmegaA0_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navOmegaADot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navDeltaN_OmegaADot_IDot_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navE DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navE_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navIDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navDeltaN_OmegaADot_IDot_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navAPowerHalf DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAPowerHalf_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navI0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navOmega_M0_I0_OmegaA0_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navOmegaA0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navOmega_M0_I0_OmegaA0_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navCrs DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navCrs_Crc_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navCis DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navCx_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navCus DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navCx_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navCrc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navCrs_Crc_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navCic DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navCx_fmt)
#.TYPE_ATTR
NavModelNAV-KeplerianSet/navCuc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navCx_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavTop DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavToc_cnavTop_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavDeltaA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavDeltaA_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavAdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavAdot_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavDeltaNo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavDeltaNo_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavDeltaNoDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavDeltaNoDot_fmt)
#.FN_BODY NavModelCNAV-KeplerianSet/cnavMo VAL_PTR=&cnavMo
gint64 cnavMo;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.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, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
(double)cnavMo*pow(2, -32), cnavMo);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavE VAL_PTR=&cnavE
guint64 cnavE;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.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, "%g (%"G_GINT64_MODIFIER"u)",
(double)cnavE*pow(2, -34), cnavE);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavOmega VAL_PTR=&cnavOmega
gint64 cnavOmega;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.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, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
(double)cnavOmega*pow(2, -32), cnavOmega);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavOMEGA0 VAL_PTR=&cnavOMEGA0
gint64 cnavOMEGA0;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.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, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
(double)cnavOMEGA0*pow(2, -32), cnavOMEGA0);
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavDeltaOmegaDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavDeltaOmegaDot_IoDot_fmt)
#.FN_BODY NavModelCNAV-KeplerianSet/cnavIo VAL_PTR=&cnavIo
gint64 cnavIo;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.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, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
(double)cnavIo*pow(2, -32), cnavIo);
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavIoDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavDeltaOmegaDot_IoDot_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavCis DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavCx_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavCic DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavCx_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavCrs DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavCrs_Crc_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavCrc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavCrs_Crc_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavCus DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavCx_fmt)
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavCuc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavCx_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloEn DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_day_days
#.FN_BODY NavModel-GLONASS-ECEF/gloP1 VAL_PTR = &gloP1_tvb HF_INDEX=-1
tvbuff_t *gloP1_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR NavModel-GLONASS-ECEF/gloP1
if (gloP1_tvb) {
guint bitvalue = tvb_get_bits8(gloP1_tvb, 0, 2);
actx->created_item = proto_tree_add_uint(tree, hf_index, gloP1_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloP1 TYPE=FT_UINT8 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_minutes
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloX DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloX_Y_Z_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloXdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloXdot_Ydot_Zdot_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloXdotdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloXdotdot_Ydotdot_Zdotdot_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloY DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloX_Y_Z_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloYdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloXdot_Ydot_Zdot_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloYdotdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloXdotdot_Ydotdot_Zdotdot_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloZ DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloX_Y_Z_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloZdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloXdot_Ydot_Zdot_fmt)
#.TYPE_ATTR
NavModel-GLONASS-ECEF/gloZdotdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloXdotdot_Ydotdot_Zdotdot_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasTo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasTo_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasXg DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasXg_Yg_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasYg DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasXg_Yg_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasZg DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasZg_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasXgDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasXgDot_YgDot_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasYgDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasXgDot_YgDot_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasZgDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasZgDot_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasXgDotDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasXgDotDot_YgDotDot_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasYgDotDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasXgDotDot_YgDotDot_fmt)
#.TYPE_ATTR
NavModel-SBAS-ECEF/sbasZgDotDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasZgDotDot_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsAODE-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAODC_AODE_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsURAI-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_meters
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsToe-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsToc_Toe_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsAPowerHalf-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAPowerHalf_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsE-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsE_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsW-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsW_M0_Omega0_I0_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsDeltaN-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsDeltaN_OmegaDot_IDot_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsM0-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsW_M0_Omega0_I0_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsOmega0-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsW_M0_Omega0_I0_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsOmegaDot-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsDeltaN_OmegaDot_IDot_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsI0-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsW_M0_Omega0_I0_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsIDot-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsDeltaN_OmegaDot_IDot_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsCuc-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsCuc_Cus_Cic_Cis_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsCus-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsCuc_Cus_Cic_Cis_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsCrc-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsCrc_Crs_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsCrs-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsCrc_Crs_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsCic-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsCuc_Cus_Cic_Cis_r12_fmt)
#.TYPE_ATTR
NavModel-BDS-KeplerianSet-r12/bdsCis-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsCuc_Cus_Cic_Cis_r12_fmt)
#.TYPE_ATTR
GNSS-DataBitAssistance/gnss-TOD DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
GNSS-DataBitAssistance/gnss-TODfrac DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
GNSS-AcquisitionAssistance/confidence-r10 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/doppler0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_doppler0_fmt)
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/doppler1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_doppler1_fmt)
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/dopplerUncertainty STRINGS=VALS(lpp_dopplerUncertainty_vals)
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/codePhase DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_codePhase_fmt)
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/intCodePhase DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/codePhaseSearchWindow DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lpp_codePhaseSearchWindow_vals_ext
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/azimuth DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_azimuth_elevation_fmt)
#.TYPE_ATTR
GNSS-AcquisitionAssistElement/elevation DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_azimuth_elevation_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-v1240 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-v1240
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_v1240, tvb, old_offset, len,
toa_ext, "%u s (%u)", val, toa_ext);
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacE DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_kepAlmanacE_fmt)
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacDeltaI DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_kepAlmanacDeltaI_fmt)
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacOmegaDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(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=CF_FUNC(lpp_kepAlmanacAPowerHalf_fmt)
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacOmega0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_kepAlmanacOmega0_W_M0_fmt)
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacW DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_kepAlmanacOmega0_W_M0_fmt)
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacM0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_kepAlmanacOmega0_W_M0_fmt)
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacAF0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_kepAlmanacAF0_fmt)
#.TYPE_ATTR
AlmanacKeplerianSet/kepAlmanacAF1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_kepAlmanacAF1_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmE DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmE_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmDeltaI DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmDeltaI_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmOMEGADOT DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmOMEGADOT_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmSqrtA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmSqrtA_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmOMEGAo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmOMEGAo_Omega_Mo_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmOmega DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmOMEGAo_Omega_Mo_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmMo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmOMEGAo_Omega_Mo_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmaf0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmaf0_fmt)
#.TYPE_ATTR
AlmanacNAV-KeplerianSet/navAlmaf1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_navAlmaf1_fmt)
#.TYPE_ATTR
AlmanacReducedKeplerianSet/redAlmDeltaA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_redAlmDeltaA_fmt)
#.TYPE_ATTR
AlmanacReducedKeplerianSet/redAlmOmega0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_redAlmOmega0_Phi0_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmE DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmE_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmDeltaI DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmDeltaI_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmOmegaDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmOmegaDot_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmSqrtA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmSqrtA_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmOmega0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmOmega0_Omega_Mo_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmOmega DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmOmega0_Omega_Mo_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmMo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmOmega0_Omega_Mo_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmaf0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmaf0_fmt)
#.TYPE_ATTR
AlmanacMidiAlmanacSet/midiAlmaf1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_midiAlmaf1_fmt)
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlm-NA DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_day_days
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlmLambdaA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloAlmLambdaA_DeltaIa_fmt)
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlmtlambdaA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloAlmtlambdaA_fmt)
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlmDeltaIa DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloAlmLambdaA_DeltaIa_fmt)
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlmDeltaTA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloAlmDeltaTA_fmt)
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlmDeltaTdotA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloAlmDeltaTdotA_fmt)
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlmEpsilonA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloAlmEpsilonA_fmt)
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlmOmegaA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloAlmOmegaA_fmt)
#.TYPE_ATTR
AlmanacGLONASS-AlmanacSet/gloAlmTauA DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gloAlmTauA_fmt)
#.TYPE_ATTR
AlmanacECEF-SBAS-AlmanacSet/sbasAlmXg DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAlmXg_Yg_fmt)
#.TYPE_ATTR
AlmanacECEF-SBAS-AlmanacSet/sbasAlmYg DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAlmXg_Yg_fmt)
#.TYPE_ATTR
AlmanacECEF-SBAS-AlmanacSet/sbasAlmZg DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAlmZg_fmt)
#.TYPE_ATTR
AlmanacECEF-SBAS-AlmanacSet/sbasAlmXgdot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAlmXgdot_YgDot_fmt)
#.TYPE_ATTR
AlmanacECEF-SBAS-AlmanacSet/sbasAlmYgDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAlmXgdot_YgDot_fmt)
#.TYPE_ATTR
AlmanacECEF-SBAS-AlmanacSet/sbasAlmZgDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAlmZgDot_fmt)
#.TYPE_ATTR
AlmanacECEF-SBAS-AlmanacSet/sbasAlmTo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_sbasAlmTo_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmToa-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmToa_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmSqrtA-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmSqrtA_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmE-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmE_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmW-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmW_M0_Omega0_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmM0-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmW_M0_Omega0_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmOmega0-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmW_M0_Omega0_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmOmegaDot-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmOmegaDot_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmDeltaI-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmDeltaI_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmA0-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_bdsAlmA0_r12_fmt)
#.TYPE_ATTR
AlmanacBDS-AlmanacSet-r12/bdsAlmA1-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(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,
ENC_BIG_ENDIAN, "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,
ENC_BIG_ENDIAN, "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=CF_FUNC(lpp_gnss_Utc_A1_fmt)
#.TYPE_ATTR
UTC-ModelSet1/gnss-Utc-A0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gnss_Utc_A0_fmt)
#.TYPE_ATTR
UTC-ModelSet1/gnss-Utc-Tot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gnss_Utc_Tot_fmt)
#.TYPE_ATTR
UTC-ModelSet1/gnss-Utc-WNt DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_week_weeks
#.TYPE_ATTR
UTC-ModelSet1/gnss-Utc-DeltaTls DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
UTC-ModelSet1/gnss-Utc-WNlsf DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_week_weeks
#.TYPE_ATTR
UTC-ModelSet1/gnss-Utc-DN DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_day_days
#.TYPE_ATTR
UTC-ModelSet1/gnss-Utc-DeltaTlsf DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
UTC-ModelSet2/utcA0 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_tA0_fmt)
#.TYPE_ATTR
UTC-ModelSet2/utcA1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_tA1_fmt)
#.TYPE_ATTR
UTC-ModelSet2/utcA2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_tA2_fmt)
#.TYPE_ATTR
UTC-ModelSet2/utcDeltaTls DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
UTC-ModelSet2/utcTot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gnss_TimeModelRefTime_fmt)
#.TYPE_ATTR
UTC-ModelSet2/utcWNot DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_week_weeks
#.TYPE_ATTR
UTC-ModelSet2/utcWNlsf DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_week_weeks
#.FN_BODY UTC-ModelSet2/utcDN VAL_PTR = &utcDN_tvb HF_INDEX=-1
tvbuff_t *utcDN_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR UTC-ModelSet2/utcDN
if (utcDN_tvb) {
guint bitvalue = tvb_get_bits8(utcDN_tvb, 0, 4);
actx->created_item = proto_tree_add_uint(tree, hf_index, utcDN_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
UTC-ModelSet2/utcDN TYPE=FT_UINT8 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_day_days
#.TYPE_ATTR
UTC-ModelSet2/utcDeltaTlsf DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
UTC-ModelSet3/nA DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_day_days
#.TYPE_ATTR
UTC-ModelSet3/tauC DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_tauC_fmt)
#.TYPE_ATTR
UTC-ModelSet3/b1 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_b1_fmt)
#.TYPE_ATTR
UTC-ModelSet3/b2 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_b2_fmt)
#.FN_BODY UTC-ModelSet3/kp VAL_PTR = &kp_tvb HF_INDEX=-1
tvbuff_t *kp_tvb = NULL;
%(DEFAULT_BODY)s
#.FN_FTR UTC-ModelSet3/kp
if (kp_tvb) {
guint bitvalue = tvb_get_bits8(kp_tvb, 0, 2);
actx->created_item = proto_tree_add_uint(tree, hf_index, kp_tvb, 0, 1, bitvalue);
}
#.TYPE_ATTR
UTC-ModelSet3/kp TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_kp_vals)
#.TYPE_ATTR
UTC-ModelSet4/utcA1wnt DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gnss_Utc_A1_fmt)
#.TYPE_ATTR
UTC-ModelSet4/utcA0wnt DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gnss_Utc_A0_fmt)
#.TYPE_ATTR
UTC-ModelSet4/utcTot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gnss_Utc_Tot_fmt)
#.TYPE_ATTR
UTC-ModelSet4/utcWNt DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_week_weeks
#.TYPE_ATTR
UTC-ModelSet4/utcDeltaTls DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
UTC-ModelSet4/utcWNlsf DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_week_weeks
#.TYPE_ATTR
UTC-ModelSet4/utcDN DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_day_days
#.TYPE_ATTR
UTC-ModelSet4/utcDeltaTlsf DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.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=CF_FUNC(lpp_gnss_Utc_A0_fmt)
#.TYPE_ATTR
UTC-ModelSet5-r12/utcA1-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_gnss_Utc_A1_fmt)
#.TYPE_ATTR
UTC-ModelSet5-r12/utcDeltaTls-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
UTC-ModelSet5-r12/utcWNlsf-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_week_weeks
#.TYPE_ATTR
UTC-ModelSet5-r12/utcDN-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_day_days
#.TYPE_ATTR
UTC-ModelSet5-r12/utcDeltaTlsf-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
BDS-DifferentialCorrections-r12/dbds-RefTime-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.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=CF_FUNC(lpp_bds_ECC_DeltaT_r12_fmt)
#.TYPE_ATTR
BDS-GridModelParameter-r12/bds-RefTime-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
GridIonElement-r12/dt-r12 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(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
#.TYPE_ATTR
GNSS-RTK-SatelliteDataElement-r15/integer-ms-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
GNSS-RTK-SatelliteDataElement-r15/rough-range-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
GNSS-RTK-SatelliteDataElement-r15/rough-phase-range-rate-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_meter_sec
#.TYPE_ATTR
GNSS-RTK-SatelliteSignalDataElement-r15/fine-PseudoRange-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_fine_PseudoRange_r15_fmt)
#.TYPE_ATTR
GNSS-RTK-SatelliteSignalDataElement-r15/fine-PhaseRange-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_fine_PhaseRange_r15_fmt)
#.TYPE_ATTR
GNSS-RTK-SatelliteSignalDataElement-r15/carrier-to-noise-ratio-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_carrier_to_noise_ratio_r15_fmt)
#.TYPE_ATTR
GNSS-RTK-SatelliteSignalDataElement-r15/fine-PhaseRangeRate-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_fine_PhaseRangeRate_r15_fmt)
#.TYPE_ATTR
GLO-RTK-BiasInformation-r15/l1-ca-cpBias-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cpBias_r15_fmt)
#.TYPE_ATTR
GLO-RTK-BiasInformation-r15/l1-p-cpBias-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cpBias_r15_fmt)
#.TYPE_ATTR
GLO-RTK-BiasInformation-r15/l2-ca-cpBias-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cpBias_r15_fmt)
#.TYPE_ATTR
GLO-RTK-BiasInformation-r15/l2-p-cpBias-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cpBias_r15_fmt)
#.TYPE_ATTR
Geometric-Ionospheric-Corrections-Differences-Element-r15/ambiguityStatusFlag-r15 TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_ambiguityStatusFlag_r15_vals)
#.TYPE_ATTR
Geometric-Ionospheric-Corrections-Differences-Element-r15/geometricCarrierPhaseCorrectionDifference-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_2000m_fmt)
#.TYPE_ATTR
Geometric-Ionospheric-Corrections-Differences-Element-r15/ionosphericCarrierPhaseCorrectionDifference-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_2000m_fmt)
#.TYPE_ATTR
RTK-Residuals-Element-r15/s-oc-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_2000m_fmt)
#.TYPE_ATTR
RTK-Residuals-Element-r15/s-od-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_100ppm_fmt)
#.TYPE_ATTR
RTK-Residuals-Element-r15/s-oh-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_10ppm_fmt)
#.TYPE_ATTR
RTK-Residuals-Element-r15/s-lc-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_2000m_fmt)
#.TYPE_ATTR
FKP-Gradients-Element-r15/north-geometric-gradient-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_100ppm_fmt)
#.TYPE_ATTR
FKP-Gradients-Element-r15/east-geometric-gradient-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_100ppm_fmt)
#.TYPE_ATTR
FKP-Gradients-Element-r15/north-ionospheric-gradient-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_100ppm_fmt)
#.TYPE_ATTR
FKP-Gradients-Element-r15/east-ionospheric-gradient-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_100ppm_fmt)
#.TYPE_ATTR
GNSS-SSR-OrbitCorrections-r15/ssrUpdateInterval-r15 TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_ssrUpdateInterval_r15_vals)
#.TYPE_ATTR
SSR-OrbitCorrectionSatelliteElement-r15/delta-radial-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_10000m_fmt)
#.TYPE_ATTR
SSR-OrbitCorrectionSatelliteElement-r15/delta-AlongTrack-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_4_10000m_fmt)
#.TYPE_ATTR
SSR-OrbitCorrectionSatelliteElement-r15/delta-CrossTrack-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_4_10000m_fmt)
#.TYPE_ATTR
SSR-OrbitCorrectionSatelliteElement-r15/dot-delta-radial-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000000m_s_fmt)
#.TYPE_ATTR
SSR-OrbitCorrectionSatelliteElement-r15/dot-delta-AlongTrack-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_4_1000000m_s_fmt)
#.TYPE_ATTR
SSR-OrbitCorrectionSatelliteElement-r15/dot-delta-CrossTrack-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_4_1000000m_s_fmt)
#.TYPE_ATTR
GNSS-SSR-ClockCorrections-r15/ssrUpdateInterval-r15 TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_ssrUpdateInterval_r15_vals)
#.TYPE_ATTR
SSR-ClockCorrectionSatelliteElement-r15/delta-Clock-C0-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_10000m_fmt)
#.TYPE_ATTR
SSR-ClockCorrectionSatelliteElement-r15/delta-Clock-C1-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_1000000m_s_fmt)
#.TYPE_ATTR
SSR-ClockCorrectionSatelliteElement-r15/delta-Clock-C2-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_2_100000000m_s2_fmt)
#.TYPE_ATTR
GNSS-SSR-CodeBias-r15/ssrUpdateInterval-r15 TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_ssrUpdateInterval_r15_vals)
#.TYPE_ATTR
SSR-CodeBiasSignalElement-r15/codeBias-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_100000m_fmt)
#.FN_FTR StoredNavListInfo/gnss-WeekOrDay
proto_item_append_text(actx->created_item, " (days for glonass, weeks otherwise)");
#.FN_FTR StoredNavListInfo/gnss-Toe
proto_item_append_text(actx->created_item, " (units of 15 mns for glonass, hours otherwise)");
#.FN_FTR StoredNavListInfo/t-toeLimit
proto_item_append_text(actx->created_item, " (units of 30 mns for glonass, hours otherwise)");
#.TYPE_ATTR
GNSS-DataBitAssistanceReq/gnss-TOD-Req DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
GNSS-DataBitAssistanceReq/gnss-TOD-FracReq DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
GNSS-DataBitAssistanceReq/dataBitInterval TYPE=FT_UINT8 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lpp_dataBitInterval_vals_ext
#.TYPE_ATTR
MeasurementReferenceTime/gnss-TOD-msec DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
MeasurementReferenceTime/gnss-TOD-frac DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_fractionalSecondsFromFrameStructureStart_fmt)
#.TYPE_ATTR
MeasurementReferenceTime/gnss-TOD-unc DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_referenceTimeUnc_fmt)
#.TYPE_ATTR
MeasurementReferenceTime/networkTime/gSM/deltaGNSS-TOD DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
GNSS-SgnMeasElement/gnss-CodePhaseAmbiguity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
GNSS-SatMeasElement/cNo DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbhz
#.TYPE_ATTR
GNSS-SatMeasElement/carrierQualityInd TYPE=FT_UINT8 DISPLAY=BASE_DEC STRINGS=VALS(lpp_carrierQualityInd_vals)
#.TYPE_ATTR
GNSS-SatMeasElement/codePhase DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_GNSS_SatMeas_codePhase_fmt)
#.TYPE_ATTR
GNSS-SatMeasElement/integerCodePhase DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.TYPE_ATTR
GNSS-SatMeasElement/codePhaseRMSError DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_codePhaseRMSError_fmt)
#.TYPE_ATTR
GNSS-SatMeasElement/doppler DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_doppler_fmt)
#.TYPE_ATTR
GNSS-SatMeasElement/adr DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_adr_fmt)
#.TYPE_ATTR
GNSS-SatMeasElement/eag_1/adrMSB-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_adrMSB_r15_fmt)
#.TYPE_ATTR
GNSS-SatMeasElement/eag_1/adrRMSerror-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_adr_fmt)
#.TYPE_ATTR
GNSS-SatMeasElement/eag_1/delta-codePhase-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_GNSS_SatMeas_delta_codePhase_r15_fmt)
#.FN_BODY GNSS-ID/gnss-id VAL_PTR = &gnss_id
guint32 gnss_id;
%(DEFAULT_BODY)s
actx->private_data = GUINT_TO_POINTER(gnss_id);
#.TYPE_ATTR
GNSS-PeriodicControlParam-r15/deliveryAmount-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_deliveryAmount_r15_fmt)
#.TYPE_ATTR
GNSS-PeriodicControlParam-r15/deliveryInterval-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
MeasuredResultsElement/rsrp-Result DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_rsrp_Result_fmt)
#.TYPE_ATTR
MeasuredResultsElement/rsrq-Result DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_rsrq_Result_fmt)
#.TYPE_ATTR
MeasuredResultsElement/ue-RxTxTimeDiff DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_ue_RxTxTimeDiff_fmt)
#.TYPE_ATTR
MeasuredResultsElement/eag_2/nrsrp-Result-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_nrsrp_Result_fmt)
#.TYPE_ATTR
MeasuredResultsElement/eag_2/nrsrq-Result-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_nrsrq_Result_fmt)
#.TYPE_ATTR
MeasuredResultsElement/eag_3/rsrp-Result-v1470 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_rsrp_Result_v1470_fmt)
#.TYPE_ATTR
MeasuredResultsElement/eag_3/rsrq-Result-v1470 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_rsrq_Result_v1470_fmt)
#.TYPE_ATTR
MBS-BeaconMeasElement-r13/codePhase-r13 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_mbs_beaconMeasElt_codePhase_fmt)
#.TYPE_ATTR
MBS-BeaconMeasElement-r13/codePhaseRMSError-r13 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_codePhaseRMSError_fmt)
#.TYPE_ATTR
MBS-BeaconMeasElement-r13/eag_1/rssi-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
#.TYPE_ATTR
Sensor-MeasurementInformation-r13/uncompensatedBarometricPressure-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_pa
#.TYPE_ATTR
Sensor-MeasurementInformation-r13/eag_1/uncertainty-r14/range-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_pa
#.TYPE_ATTR
Sensor-MeasurementInformation-r13/eag_1/uncertainty-r14/confidence-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
Displacement-r15/bearing-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_10_degrees_fmt)
#.TYPE_ATTR
Displacement-r15/bearingUncConfidence-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
Displacement-r15/horizontalDistance-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_100_m_fmt)
#.TYPE_ATTR
Displacement-r15/horizontalUncConfidence-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
Displacement-r15/verticalDistance-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_1_100_m_fmt)
#.TYPE_ATTR
Displacement-r15/verticalUncConfidence-r15 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_confidence_fmt)
#.TYPE_ATTR
UTC-Time-r15/utcTime-ms-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
#.FN_BODY MBS-AlmanacAssistance-r14/transmitterLatitude-r14 VAL_PTR = &transmitterLatitude_tvb HF_INDEX=-1
tvbuff_t *transmitterLatitude_tvb = NULL;
guint32 val;
%(DEFAULT_BODY)s
val = tvb_get_bits32(transmitterLatitude_tvb, 0, 26, ENC_BIG_ENDIAN);
actx->created_item = proto_tree_add_uint(tree, hf_index, transmitterLatitude_tvb, 0, 4, val);
#.TYPE_ATTR
MBS-AlmanacAssistance-r14/transmitterLatitude-r14 TYPE=FT_UINT32 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_transmitterLatitude_fmt)
#.FN_BODY MBS-AlmanacAssistance-r14/transmitterLongitude-r14 VAL_PTR = &transmitterLongitude_tvb HF_INDEX=-1
tvbuff_t *transmitterLongitude_tvb = NULL;
guint32 val;
%(DEFAULT_BODY)s
val = tvb_get_bits32(transmitterLongitude_tvb, 0, 27, ENC_BIG_ENDIAN);
actx->created_item = proto_tree_add_uint(tree, hf_index, transmitterLongitude_tvb, 0, 4, val);
#.TYPE_ATTR
MBS-AlmanacAssistance-r14/transmitterLongitude-r14 TYPE=FT_UINT32 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_transmitterLongitude_fmt)
#.FN_BODY MBS-AlmanacAssistance-r14/transmitterAltitude-r14 VAL_PTR = &transmitterAltitude_tvb HF_INDEX=-1
tvbuff_t *transmitterAltitude_tvb = NULL;
guint32 val;
%(DEFAULT_BODY)s
val = tvb_get_bits16(transmitterAltitude_tvb, 0, 15, ENC_BIG_ENDIAN);
actx->created_item = proto_tree_add_uint(tree, hf_index, transmitterAltitude_tvb, 0, 2, val);
#.TYPE_ATTR
MBS-AlmanacAssistance-r14/transmitterAltitude-r14 TYPE=FT_UINT16 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_transmitterAltitude_fmt)
#.TYPE_ATTR
MBS-AlmanacAssistance-r14/timeCorrection-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_nanoseconds
#.TYPE_ATTR
MBS-AcquisitionAssistance-r14/freq-r14 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_hz
#.TYPE_ATTR
Sensor-AssistanceDataList-r14/refPressure-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_refPressure_fmt)
#.TYPE_ATTR
Sensor-AssistanceDataList-r14/refTemperature-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_refTemperature_fmt)
#.TYPE_ATTR
Sensor-AssistanceDataList-r14/eag_1/period-v1520/referencePressureRate-v1520 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_referencePressureRate_v1520_fmt)
#.FN_FTR Sensor-AssistanceDataList-r14/eag_1/area-v1520/gN-pressure-v1520
proto_item_append_text(actx->created_item, "Pa/Km");
#.FN_FTR Sensor-AssistanceDataList-r14/eag_1/area-v1520/gE-pressure-v1520
proto_item_append_text(actx->created_item, "Pa/Km");
#.TYPE_ATTR
PressureValidityArea-v1520/validityAreaWidth-v1520 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_km
#.TYPE_ATTR
PressureValidityArea-v1520/vvalidityAreaHeight-v1520 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_km
#.TYPE_ATTR
PressureValidityPeriod-v1520/beginTimeAlt-v1520 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_PressureValidityPeriod_v1520_fmt)
#.TYPE_ATTR
PressureValidityPeriod-v1520/duration-v1520 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_PressureValidityPeriod_v1520_fmt)
#.TYPE_ATTR
WLAN-MeasurementElement-r13/rssi-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
#.TYPE_ATTR
WLAN-AP-Identifier-r13/bssid-r13 TYPE=FT_ETHER
#.TYPE_ATTR
WLAN-AP-Identifier-r13/ssid-r13 TYPE=FT_STRING DISPLAY=BASE_NONE
#.FN_BODY WLAN-AP-Identifier-r13/ssid-r13 VAL_PTR=&ssid_tvb HF_INDEX=-1
tvbuff_t *ssid_tvb = NULL;
%(DEFAULT_BODY)s
actx->created_item = proto_tree_add_item(tree, hf_index, ssid_tvb, 0, -1, ENC_ASCII|ENC_NA);
#.TYPE_ATTR
BT-MeasurementElement-r13/btAddr-r13 TYPE=FT_ETHER DISPLAY=BASE_NONE
#.FN_BODY BT-MeasurementElement-r13/btAddr-r13 VAL_PTR=&btAddr_tvb HF_INDEX=-1
tvbuff_t *btAddr_tvb = NULL;
%(DEFAULT_BODY)s
actx->created_item = proto_tree_add_item(tree, hf_index, btAddr_tvb, 0, 6, ENC_NA);
#.TYPE_ATTR
BT-MeasurementElement-r13/rssi-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
#.FN_HDR CipheringKeyData-r15
lpp_get_private_data(actx->pinfo)->is_ciphered = TRUE;
#.FN_HDR SegmentationInfo-r15
lpp_get_private_data(actx->pinfo)->is_segmented = TRUE;
#.FN_BODY AssistanceDataSIBelement-r15/assistanceDataElement-r15 VAL_PTR = &assist_data_sib_elem_tvb
tvbuff_t *assist_data_sib_elem_tvb = NULL;
struct lpp_private_data *lpp_data = lpp_get_private_data(actx->pinfo);
%(DEFAULT_BODY)s
if (assist_data_sib_elem_tvb && !lpp_data->is_ciphered && !lpp_data->is_segmented) {
proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_lpp_assistanceDataElement_r15);
switch (lpp_data->pos_sib_type) {
case LPP_POS_SIB_TYPE_1_1:
dissect_GNSS_ReferenceTime_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_1_2:
dissect_GNSS_ReferenceLocation_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_1_3:
dissect_GNSS_IonosphericModel_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_1_4:
dissect_GNSS_EarthOrientationParameters_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_1_5:
dissect_GNSS_RTK_ReferenceStationInfo_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_1_6:
dissect_GNSS_RTK_CommonObservationInfo_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_1_7:
dissect_GNSS_RTK_AuxiliaryStationData_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_1_8:
dissect_GNSS_SSR_CorrectionPoints_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_1:
dissect_GNSS_TimeModelList_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_2:
dissect_GNSS_DifferentialCorrections_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_3:
dissect_GNSS_NavigationModel_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_4:
dissect_GNSS_RealTimeIntegrity_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_5:
dissect_GNSS_DataBitAssistance_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_6:
dissect_GNSS_AcquisitionAssistance_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_7:
dissect_GNSS_Almanac_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_8:
dissect_GNSS_UTC_Model_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_9:
dissect_GNSS_AuxiliaryInformation_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_10:
dissect_BDS_DifferentialCorrections_r12_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_11:
dissect_BDS_GridModelParameter_r12_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_12:
dissect_GNSS_RTK_Observations_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_13:
dissect_GLO_RTK_BiasInformation_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_14:
dissect_GNSS_RTK_MAC_CorrectionDifferences_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_15:
dissect_GNSS_RTK_Residuals_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_16:
dissect_GNSS_RTK_FKP_Gradients_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_17:
dissect_GNSS_SSR_OrbitCorrections_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_18:
dissect_GNSS_SSR_ClockCorrections_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_19:
dissect_GNSS_SSR_CodeBias_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_20:
dissect_GNSS_SSR_URA_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_21:
dissect_GNSS_SSR_PhaseBias_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_22:
dissect_GNSS_SSR_STEC_Correction_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_23:
dissect_GNSS_SSR_GriddedCorrection_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_24:
dissect_NavIC_DifferentialCorrections_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_25:
dissect_NavIC_GridModelParameter_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_3_1:
dissect_OTDOA_UE_Assisted_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_4_1:
dissect_Sensor_AssistanceDataList_r14_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_5_1:
dissect_TBS_AssistanceDataList_r14_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_6_1:
dissect_NR_DL_PRS_AssistanceData_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_6_2:
dissect_NR_UEB_TRP_LocationData_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_6_3:
dissect_NR_UEB_TRP_RTD_Info_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
default:
break;
}
}