1 /* Do not modify this file. Changes will be overwritten. */ 2 /* Generated automatically by the ASN.1 to Wireshark dissector compiler */ 3 /* packet-rrlp.c */ 4 /* asn2wrs.py -p rrlp -c ./rrlp.cnf -s ./packet-rrlp-template -D . -O ../.. ../gsm_map/MAP-ExtensionDataTypes.asn ../gsm_map/MAP-LCS-DataTypes.asn RRLP-Messages.asn RRLP-Components.asn */ 5 6 /* Input file: packet-rrlp-template.c */ 7 8 #line 1 "./asn1/rrlp/packet-rrlp-template.c" 9 /* packet-rrlp.c 10 * Routines for 3GPP Radio Resource LCS Protocol (RRLP) packet dissection 11 * Copyright 2006, Anders Broman <anders.broman@ericsson.com> 12 * 13 * Wireshark - Network traffic analyzer 14 * By Gerald Combs <gerald@wireshark.org> 15 * Copyright 1998 Gerald Combs 16 * 17 * SPDX-License-Identifier: GPL-2.0-or-later 18 * 19 * Ref 3GPP TS 44.031 version 11.0.0 Release 11 20 * http://www.3gpp.org 21 */ 22 23 #include "config.h" 24 25 #include <epan/packet.h> 26 #include <epan/asn1.h> 27 28 #include "packet-ber.h" 29 #include "packet-per.h" 30 #include "packet-gsm_a_common.h" 31 32 #define PNAME "Radio Resource LCS Protocol (RRLP)" 33 #define PSNAME "RRLP" 34 #define PFNAME "rrlp" 35 36 37 38 #ifdef _MSC_VER 39 /* disable: "warning C4146: unary minus operator applied to unsigned type, result still unsigned" */ 40 #pragma warning(disable:4146) 41 #endif 42 43 void proto_register_rrlp(void); 44 void proto_reg_handoff_rrlp(void); 45 46 /* Initialize the protocol and registered fields */ 47 static int proto_rrlp = -1; 48 49 50 51 /*--- Included file: packet-rrlp-hf.c ---*/ 52 #line 1 "./asn1/rrlp/packet-rrlp-hf.c" 53 static int hf_rrlp_PDU_PDU = -1; /* PDU */ 54 static int hf_rrlp_privateExtensionList = -1; /* PrivateExtensionList */ 55 static int hf_rrlp_pcs_Extensions = -1; /* PCS_Extensions */ 56 static int hf_rrlp_PrivateExtensionList_item = -1; /* PrivateExtension */ 57 static int hf_rrlp_extId = -1; /* OBJECT_IDENTIFIER */ 58 static int hf_rrlp_extType = -1; /* T_extType */ 59 static int hf_rrlp_referenceNumber = -1; /* INTEGER_0_7 */ 60 static int hf_rrlp_component = -1; /* RRLP_Component */ 61 static int hf_rrlp_msrPositionReq = -1; /* MsrPosition_Req */ 62 static int hf_rrlp_msrPositionRsp = -1; /* MsrPosition_Rsp */ 63 static int hf_rrlp_assistanceData = -1; /* AssistanceData */ 64 static int hf_rrlp_assistanceDataAck = -1; /* NULL */ 65 static int hf_rrlp_protocolError = -1; /* ProtocolError */ 66 static int hf_rrlp_posCapabilityReq = -1; /* PosCapability_Req */ 67 static int hf_rrlp_posCapabilityRsp = -1; /* PosCapability_Rsp */ 68 static int hf_rrlp_positionInstruct = -1; /* PositionInstruct */ 69 static int hf_rrlp_referenceAssistData = -1; /* ReferenceAssistData */ 70 static int hf_rrlp_msrAssistData = -1; /* MsrAssistData */ 71 static int hf_rrlp_systemInfoAssistData = -1; /* SystemInfoAssistData */ 72 static int hf_rrlp_gps_AssistData = -1; /* GPS_AssistData */ 73 static int hf_rrlp_extensionContainer = -1; /* ExtensionContainer */ 74 static int hf_rrlp_rel98_MsrPosition_Req_extension = -1; /* Rel98_MsrPosition_Req_Extension */ 75 static int hf_rrlp_rel5_MsrPosition_Req_extension = -1; /* Rel5_MsrPosition_Req_Extension */ 76 static int hf_rrlp_rel7_MsrPosition_Req_extension = -1; /* Rel7_MsrPosition_Req_Extension */ 77 static int hf_rrlp_multipleSets = -1; /* MultipleSets */ 78 static int hf_rrlp_referenceIdentity = -1; /* ReferenceIdentity */ 79 static int hf_rrlp_otd_MeasureInfo = -1; /* OTD_MeasureInfo */ 80 static int hf_rrlp_locationInfo = -1; /* LocationInfo */ 81 static int hf_rrlp_gps_MeasureInfo = -1; /* GPS_MeasureInfo */ 82 static int hf_rrlp_locationError = -1; /* LocationError */ 83 static int hf_rrlp_rel_98_MsrPosition_Rsp_Extension = -1; /* Rel_98_MsrPosition_Rsp_Extension */ 84 static int hf_rrlp_rel_5_MsrPosition_Rsp_Extension = -1; /* Rel_5_MsrPosition_Rsp_Extension */ 85 static int hf_rrlp_rel_7_MsrPosition_Rsp_Extension = -1; /* Rel_7_MsrPosition_Rsp_Extension */ 86 static int hf_rrlp_moreAssDataToBeSent = -1; /* MoreAssDataToBeSent */ 87 static int hf_rrlp_rel98_AssistanceData_Extension = -1; /* Rel98_AssistanceData_Extension */ 88 static int hf_rrlp_rel5_AssistanceData_Extension = -1; /* Rel5_AssistanceData_Extension */ 89 static int hf_rrlp_rel7_AssistanceData_Extension = -1; /* Rel7_AssistanceData_Extension */ 90 static int hf_rrlp_errorCause = -1; /* ErrorCodes */ 91 static int hf_rrlp_rel_5_ProtocolError_Extension = -1; /* Rel_5_ProtocolError_Extension */ 92 static int hf_rrlp_extended_reference = -1; /* Extended_reference */ 93 static int hf_rrlp_gANSSPositionMethods = -1; /* GANSSPositionMethods */ 94 static int hf_rrlp_posCapabilities = -1; /* PosCapabilities */ 95 static int hf_rrlp_assistanceSupported = -1; /* AssistanceSupported */ 96 static int hf_rrlp_assistanceNeeded = -1; /* AssistanceNeeded */ 97 static int hf_rrlp_methodType = -1; /* MethodType */ 98 static int hf_rrlp_positionMethod = -1; /* PositionMethod */ 99 static int hf_rrlp_measureResponseTime = -1; /* MeasureResponseTime */ 100 static int hf_rrlp_useMultipleSets = -1; /* UseMultipleSets */ 101 static int hf_rrlp_environmentCharacter = -1; /* EnvironmentCharacter */ 102 static int hf_rrlp_msAssisted = -1; /* AccuracyOpt */ 103 static int hf_rrlp_msBased = -1; /* Accuracy */ 104 static int hf_rrlp_msBasedPref = -1; /* Accuracy */ 105 static int hf_rrlp_msAssistedPref = -1; /* Accuracy */ 106 static int hf_rrlp_accuracy = -1; /* Accuracy */ 107 static int hf_rrlp_bcchCarrier = -1; /* BCCHCarrier */ 108 static int hf_rrlp_bsic = -1; /* BSIC */ 109 static int hf_rrlp_timeSlotScheme = -1; /* TimeSlotScheme */ 110 static int hf_rrlp_btsPosition = -1; /* BTSPosition */ 111 static int hf_rrlp_msrAssistList = -1; /* SeqOfMsrAssistBTS */ 112 static int hf_rrlp_SeqOfMsrAssistBTS_item = -1; /* MsrAssistBTS */ 113 static int hf_rrlp_multiFrameOffset = -1; /* MultiFrameOffset */ 114 static int hf_rrlp_roughRTD = -1; /* RoughRTD */ 115 static int hf_rrlp_calcAssistanceBTS = -1; /* CalcAssistanceBTS */ 116 static int hf_rrlp_systemInfoAssistList = -1; /* SeqOfSystemInfoAssistBTS */ 117 static int hf_rrlp_SeqOfSystemInfoAssistBTS_item = -1; /* SystemInfoAssistBTS */ 118 static int hf_rrlp_notPresent = -1; /* NULL */ 119 static int hf_rrlp_present = -1; /* AssistBTSData */ 120 static int hf_rrlp_fineRTD = -1; /* FineRTD */ 121 static int hf_rrlp_referenceWGS84 = -1; /* ReferenceWGS84 */ 122 static int hf_rrlp_relativeNorth = -1; /* RelDistance */ 123 static int hf_rrlp_relativeEast = -1; /* RelDistance */ 124 static int hf_rrlp_relativeAlt = -1; /* RelativeAlt */ 125 static int hf_rrlp_nbrOfSets = -1; /* INTEGER_2_3 */ 126 static int hf_rrlp_nbrOfReferenceBTSs = -1; /* INTEGER_1_3 */ 127 static int hf_rrlp_referenceRelation = -1; /* ReferenceRelation */ 128 static int hf_rrlp_refBTSList = -1; /* SeqOfReferenceIdentityType */ 129 static int hf_rrlp_SeqOfReferenceIdentityType_item = -1; /* ReferenceIdentityType */ 130 static int hf_rrlp_bsicAndCarrier = -1; /* BSICAndCarrier */ 131 static int hf_rrlp_ci = -1; /* CellID */ 132 static int hf_rrlp_requestIndex = -1; /* RequestIndex */ 133 static int hf_rrlp_systemInfoIndex = -1; /* SystemInfoIndex */ 134 static int hf_rrlp_ciAndLAC = -1; /* CellIDAndLAC */ 135 static int hf_rrlp_carrier = -1; /* BCCHCarrier */ 136 static int hf_rrlp_referenceLAC = -1; /* LAC */ 137 static int hf_rrlp_referenceCI = -1; /* CellID */ 138 static int hf_rrlp_otdMsrFirstSets = -1; /* OTD_MsrElementFirst */ 139 static int hf_rrlp_otdMsrRestSets = -1; /* SeqOfOTD_MsrElementRest */ 140 static int hf_rrlp_SeqOfOTD_MsrElementRest_item = -1; /* OTD_MsrElementRest */ 141 static int hf_rrlp_refFrameNumber = -1; /* INTEGER_0_42431 */ 142 static int hf_rrlp_referenceTimeSlot = -1; /* ModuloTimeSlot */ 143 static int hf_rrlp_toaMeasurementsOfRef = -1; /* TOA_MeasurementsOfRef */ 144 static int hf_rrlp_stdResolution = -1; /* StdResolution */ 145 static int hf_rrlp_taCorrection = -1; /* INTEGER_0_960 */ 146 static int hf_rrlp_otd_FirstSetMsrs = -1; /* SeqOfOTD_FirstSetMsrs */ 147 static int hf_rrlp_SeqOfOTD_FirstSetMsrs_item = -1; /* OTD_FirstSetMsrs */ 148 static int hf_rrlp_otd_MsrsOfOtherSets = -1; /* SeqOfOTD_MsrsOfOtherSets */ 149 static int hf_rrlp_SeqOfOTD_MsrsOfOtherSets_item = -1; /* OTD_MsrsOfOtherSets */ 150 static int hf_rrlp_refQuality = -1; /* RefQuality */ 151 static int hf_rrlp_numOfMeasurements = -1; /* NumOfMeasurements */ 152 static int hf_rrlp_identityNotPresent = -1; /* OTD_Measurement */ 153 static int hf_rrlp_identityPresent = -1; /* OTD_MeasurementWithID */ 154 static int hf_rrlp_nborTimeSlot = -1; /* ModuloTimeSlot */ 155 static int hf_rrlp_eotdQuality = -1; /* EOTDQuality */ 156 static int hf_rrlp_otdValue = -1; /* OTDValue */ 157 static int hf_rrlp_neighborIdentity = -1; /* NeighborIdentity */ 158 static int hf_rrlp_nbrOfMeasurements = -1; /* INTEGER_0_7 */ 159 static int hf_rrlp_stdOfEOTD = -1; /* INTEGER_0_31 */ 160 static int hf_rrlp_multiFrameCarrier = -1; /* MultiFrameCarrier */ 161 static int hf_rrlp_refFrame = -1; /* INTEGER_0_65535 */ 162 static int hf_rrlp_gpsTOW = -1; /* INTEGER_0_14399999 */ 163 static int hf_rrlp_fixType = -1; /* FixType */ 164 static int hf_rrlp_posEstimate = -1; /* Ext_GeographicalInformation */ 165 static int hf_rrlp_gpsMsrSetList = -1; /* SeqOfGPS_MsrSetElement */ 166 static int hf_rrlp_SeqOfGPS_MsrSetElement_item = -1; /* GPS_MsrSetElement */ 167 static int hf_rrlp_gpsTOW_01 = -1; /* GPSTOW24b */ 168 static int hf_rrlp_gps_msrList = -1; /* SeqOfGPS_MsrElement */ 169 static int hf_rrlp_SeqOfGPS_MsrElement_item = -1; /* GPS_MsrElement */ 170 static int hf_rrlp_satelliteID = -1; /* SatelliteID */ 171 static int hf_rrlp_cNo = -1; /* INTEGER_0_63 */ 172 static int hf_rrlp_doppler = -1; /* INTEGER_M32768_32767 */ 173 static int hf_rrlp_wholeChips = -1; /* INTEGER_0_1022 */ 174 static int hf_rrlp_fracChips = -1; /* INTEGER_0_1024 */ 175 static int hf_rrlp_mpathIndic = -1; /* MpathIndic */ 176 static int hf_rrlp_pseuRangeRMSErr = -1; /* INTEGER_0_63 */ 177 static int hf_rrlp_locErrorReason = -1; /* LocErrorReason */ 178 static int hf_rrlp_additionalAssistanceData = -1; /* AdditionalAssistanceData */ 179 static int hf_rrlp_gpsAssistanceData = -1; /* GPSAssistanceData */ 180 static int hf_rrlp_ganssAssistanceData = -1; /* GANSSAssistanceData */ 181 static int hf_rrlp_controlHeader = -1; /* ControlHeader */ 182 static int hf_rrlp_referenceTime = -1; /* ReferenceTime */ 183 static int hf_rrlp_refLocation = -1; /* RefLocation */ 184 static int hf_rrlp_dgpsCorrections = -1; /* DGPSCorrections */ 185 static int hf_rrlp_navigationModel = -1; /* NavigationModel */ 186 static int hf_rrlp_ionosphericModel = -1; /* IonosphericModel */ 187 static int hf_rrlp_utcModel = -1; /* UTCModel */ 188 static int hf_rrlp_almanac = -1; /* Almanac */ 189 static int hf_rrlp_acquisAssist = -1; /* AcquisAssist */ 190 static int hf_rrlp_realTimeIntegrity = -1; /* SeqOf_BadSatelliteSet */ 191 static int hf_rrlp_gpsTime = -1; /* GPSTime */ 192 static int hf_rrlp_gsmTime = -1; /* GSMTime */ 193 static int hf_rrlp_gpsTowAssist = -1; /* GPSTOWAssist */ 194 static int hf_rrlp_gpsTOW23b = -1; /* GPSTOW23b */ 195 static int hf_rrlp_gpsWeek = -1; /* GPSWeek */ 196 static int hf_rrlp_GPSTOWAssist_item = -1; /* GPSTOWAssistElement */ 197 static int hf_rrlp_tlmWord = -1; /* TLMWord */ 198 static int hf_rrlp_antiSpoof = -1; /* AntiSpoofFlag */ 199 static int hf_rrlp_alert = -1; /* AlertFlag */ 200 static int hf_rrlp_tlmRsvdBits = -1; /* TLMReservedBits */ 201 static int hf_rrlp_frameNumber = -1; /* FrameNumber */ 202 static int hf_rrlp_timeSlot = -1; /* TimeSlot */ 203 static int hf_rrlp_bitNumber = -1; /* BitNumber */ 204 static int hf_rrlp_threeDLocation = -1; /* Ext_GeographicalInformation */ 205 static int hf_rrlp_gpsTOW_02 = -1; /* INTEGER_0_604799 */ 206 static int hf_rrlp_status = -1; /* INTEGER_0_7 */ 207 static int hf_rrlp_satList = -1; /* SeqOfSatElement */ 208 static int hf_rrlp_SeqOfSatElement_item = -1; /* SatElement */ 209 static int hf_rrlp_iode = -1; /* INTEGER_0_239 */ 210 static int hf_rrlp_udre = -1; /* INTEGER_0_3 */ 211 static int hf_rrlp_pseudoRangeCor = -1; /* INTEGER_M2047_2047 */ 212 static int hf_rrlp_rangeRateCor = -1; /* INTEGER_M127_127 */ 213 static int hf_rrlp_deltaPseudoRangeCor2 = -1; /* INTEGER_M127_127 */ 214 static int hf_rrlp_deltaRangeRateCor2 = -1; /* INTEGER_M7_7 */ 215 static int hf_rrlp_deltaPseudoRangeCor3 = -1; /* INTEGER_M127_127 */ 216 static int hf_rrlp_deltaRangeRateCor3 = -1; /* INTEGER_M7_7 */ 217 static int hf_rrlp_navModelList = -1; /* SeqOfNavModelElement */ 218 static int hf_rrlp_SeqOfNavModelElement_item = -1; /* NavModelElement */ 219 static int hf_rrlp_satStatus = -1; /* SatStatus */ 220 static int hf_rrlp_newSatelliteAndModelUC = -1; /* UncompressedEphemeris */ 221 static int hf_rrlp_oldSatelliteAndModel = -1; /* NULL */ 222 static int hf_rrlp_newNaviModelUC = -1; /* UncompressedEphemeris */ 223 static int hf_rrlp_ephemCodeOnL2 = -1; /* INTEGER_0_3 */ 224 static int hf_rrlp_ephemURA = -1; /* INTEGER_0_15 */ 225 static int hf_rrlp_ephemSVhealth = -1; /* INTEGER_0_63 */ 226 static int hf_rrlp_ephemIODC = -1; /* INTEGER_0_1023 */ 227 static int hf_rrlp_ephemL2Pflag = -1; /* INTEGER_0_1 */ 228 static int hf_rrlp_ephemSF1Rsvd = -1; /* EphemerisSubframe1Reserved */ 229 static int hf_rrlp_ephemTgd = -1; /* INTEGER_M128_127 */ 230 static int hf_rrlp_ephemToc = -1; /* INTEGER_0_37799 */ 231 static int hf_rrlp_ephemAF2 = -1; /* INTEGER_M128_127 */ 232 static int hf_rrlp_ephemAF1 = -1; /* INTEGER_M32768_32767 */ 233 static int hf_rrlp_ephemAF0 = -1; /* INTEGER_M2097152_2097151 */ 234 static int hf_rrlp_ephemCrs = -1; /* INTEGER_M32768_32767 */ 235 static int hf_rrlp_ephemDeltaN = -1; /* INTEGER_M32768_32767 */ 236 static int hf_rrlp_ephemM0 = -1; /* INTEGER_M2147483648_2147483647 */ 237 static int hf_rrlp_ephemCuc = -1; /* INTEGER_M32768_32767 */ 238 static int hf_rrlp_ephemE = -1; /* INTEGER_0_4294967295 */ 239 static int hf_rrlp_ephemCus = -1; /* INTEGER_M32768_32767 */ 240 static int hf_rrlp_ephemAPowerHalf = -1; /* INTEGER_0_4294967295 */ 241 static int hf_rrlp_ephemToe = -1; /* INTEGER_0_37799 */ 242 static int hf_rrlp_ephemFitFlag = -1; /* INTEGER_0_1 */ 243 static int hf_rrlp_ephemAODA = -1; /* INTEGER_0_31 */ 244 static int hf_rrlp_ephemCic = -1; /* INTEGER_M32768_32767 */ 245 static int hf_rrlp_ephemOmegaA0 = -1; /* INTEGER_M2147483648_2147483647 */ 246 static int hf_rrlp_ephemCis = -1; /* INTEGER_M32768_32767 */ 247 static int hf_rrlp_ephemI0 = -1; /* INTEGER_M2147483648_2147483647 */ 248 static int hf_rrlp_ephemCrc = -1; /* INTEGER_M32768_32767 */ 249 static int hf_rrlp_ephemW = -1; /* INTEGER_M2147483648_2147483647 */ 250 static int hf_rrlp_ephemOmegaADot = -1; /* INTEGER_M8388608_8388607 */ 251 static int hf_rrlp_ephemIDot = -1; /* INTEGER_M8192_8191 */ 252 static int hf_rrlp_reserved1 = -1; /* INTEGER_0_8388607 */ 253 static int hf_rrlp_reserved2 = -1; /* INTEGER_0_16777215 */ 254 static int hf_rrlp_reserved3 = -1; /* INTEGER_0_16777215 */ 255 static int hf_rrlp_reserved4 = -1; /* INTEGER_0_65535 */ 256 static int hf_rrlp_alfa0 = -1; /* INTEGER_M128_127 */ 257 static int hf_rrlp_alfa1 = -1; /* INTEGER_M128_127 */ 258 static int hf_rrlp_alfa2 = -1; /* INTEGER_M128_127 */ 259 static int hf_rrlp_alfa3 = -1; /* INTEGER_M128_127 */ 260 static int hf_rrlp_beta0 = -1; /* INTEGER_M128_127 */ 261 static int hf_rrlp_beta1 = -1; /* INTEGER_M128_127 */ 262 static int hf_rrlp_beta2 = -1; /* INTEGER_M128_127 */ 263 static int hf_rrlp_beta3 = -1; /* INTEGER_M128_127 */ 264 static int hf_rrlp_utcA1 = -1; /* INTEGER_M8388608_8388607 */ 265 static int hf_rrlp_utcA0 = -1; /* INTEGER_M2147483648_2147483647 */ 266 static int hf_rrlp_utcTot = -1; /* INTEGER_0_255 */ 267 static int hf_rrlp_utcWNt = -1; /* INTEGER_0_255 */ 268 static int hf_rrlp_utcDeltaTls = -1; /* INTEGER_M128_127 */ 269 static int hf_rrlp_utcWNlsf = -1; /* INTEGER_0_255 */ 270 static int hf_rrlp_utcDN = -1; /* INTEGER_M128_127 */ 271 static int hf_rrlp_utcDeltaTlsf = -1; /* INTEGER_M128_127 */ 272 static int hf_rrlp_alamanacWNa = -1; /* INTEGER_0_255 */ 273 static int hf_rrlp_almanacList = -1; /* SeqOfAlmanacElement */ 274 static int hf_rrlp_SeqOfAlmanacElement_item = -1; /* AlmanacElement */ 275 static int hf_rrlp_almanacE = -1; /* INTEGER_0_65535 */ 276 static int hf_rrlp_alamanacToa = -1; /* INTEGER_0_255 */ 277 static int hf_rrlp_almanacKsii = -1; /* INTEGER_M32768_32767 */ 278 static int hf_rrlp_almanacOmegaDot = -1; /* INTEGER_M32768_32767 */ 279 static int hf_rrlp_almanacSVhealth = -1; /* INTEGER_0_255 */ 280 static int hf_rrlp_almanacAPowerHalf = -1; /* INTEGER_0_16777215 */ 281 static int hf_rrlp_almanacOmega0 = -1; /* INTEGER_M8388608_8388607 */ 282 static int hf_rrlp_almanacW = -1; /* INTEGER_M8388608_8388607 */ 283 static int hf_rrlp_almanacM0 = -1; /* INTEGER_M8388608_8388607 */ 284 static int hf_rrlp_almanacAF0 = -1; /* INTEGER_M1024_1023 */ 285 static int hf_rrlp_almanacAF1 = -1; /* INTEGER_M1024_1023 */ 286 static int hf_rrlp_timeRelation = -1; /* TimeRelation */ 287 static int hf_rrlp_acquisList = -1; /* SeqOfAcquisElement */ 288 static int hf_rrlp_SeqOfAcquisElement_item = -1; /* AcquisElement */ 289 static int hf_rrlp_gpsTOW_03 = -1; /* GPSTOW23b */ 290 static int hf_rrlp_svid = -1; /* SatelliteID */ 291 static int hf_rrlp_doppler0 = -1; /* INTEGER_M2048_2047 */ 292 static int hf_rrlp_addionalDoppler = -1; /* AddionalDopplerFields */ 293 static int hf_rrlp_codePhase = -1; /* INTEGER_0_1022 */ 294 static int hf_rrlp_intCodePhase = -1; /* INTEGER_0_19 */ 295 static int hf_rrlp_gpsBitNumber = -1; /* INTEGER_0_3 */ 296 static int hf_rrlp_codePhaseSearchWindow = -1; /* INTEGER_0_15 */ 297 static int hf_rrlp_addionalAngle = -1; /* AddionalAngleFields */ 298 static int hf_rrlp_doppler1 = -1; /* INTEGER_0_63 */ 299 static int hf_rrlp_dopplerUncertainty = -1; /* INTEGER_0_7 */ 300 static int hf_rrlp_azimuth = -1; /* INTEGER_0_31 */ 301 static int hf_rrlp_elevation = -1; /* INTEGER_0_7 */ 302 static int hf_rrlp_SeqOf_BadSatelliteSet_item = -1; /* SatelliteID */ 303 static int hf_rrlp_rel98_Ext_ExpOTD = -1; /* Rel98_Ext_ExpOTD */ 304 static int hf_rrlp_gpsTimeAssistanceMeasurementRequest = -1; /* NULL */ 305 static int hf_rrlp_gpsReferenceTimeUncertainty = -1; /* GPSReferenceTimeUncertainty */ 306 static int hf_rrlp_msrAssistData_R98_ExpOTD = -1; /* MsrAssistData_R98_ExpOTD */ 307 static int hf_rrlp_systemInfoAssistData_R98_ExpOTD = -1; /* SystemInfoAssistData_R98_ExpOTD */ 308 static int hf_rrlp_msrAssistList_R98_ExpOTD = -1; /* SeqOfMsrAssistBTS_R98_ExpOTD */ 309 static int hf_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD_item = -1; /* MsrAssistBTS_R98_ExpOTD */ 310 static int hf_rrlp_expectedOTD = -1; /* ExpectedOTD */ 311 static int hf_rrlp_expOTDUncertainty = -1; /* ExpOTDUncertainty */ 312 static int hf_rrlp_systemInfoAssistListR98_ExpOTD = -1; /* SeqOfSystemInfoAssistBTS_R98_ExpOTD */ 313 static int hf_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD_item = -1; /* SystemInfoAssistBTS_R98_ExpOTD */ 314 static int hf_rrlp_present_01 = -1; /* AssistBTSData_R98_ExpOTD */ 315 static int hf_rrlp_expOTDuncertainty = -1; /* ExpOTDUncertainty */ 316 static int hf_rrlp_referenceFrameMSB = -1; /* INTEGER_0_63 */ 317 static int hf_rrlp_gpsTowSubms = -1; /* INTEGER_0_9999 */ 318 static int hf_rrlp_deltaTow = -1; /* INTEGER_0_127 */ 319 static int hf_rrlp_rel_98_Ext_MeasureInfo = -1; /* T_rel_98_Ext_MeasureInfo */ 320 static int hf_rrlp_otd_MeasureInfo_R98_Ext = -1; /* OTD_MeasureInfo_R98_Ext */ 321 static int hf_rrlp_timeAssistanceMeasurements = -1; /* GPSTimeAssistanceMeasurements */ 322 static int hf_rrlp_otdMsrFirstSets_R98_Ext = -1; /* OTD_MsrElementFirst_R98_Ext */ 323 static int hf_rrlp_otd_FirstSetMsrs_R98_Ext = -1; /* SeqOfOTD_FirstSetMsrs_R98_Ext */ 324 static int hf_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext_item = -1; /* OTD_FirstSetMsrs */ 325 static int hf_rrlp_otd_MeasureInfo_5_Ext = -1; /* OTD_MeasureInfo_5_Ext */ 326 static int hf_rrlp_ulPseudoSegInd = -1; /* UlPseudoSegInd */ 327 static int hf_rrlp_smlc_code = -1; /* INTEGER_0_63 */ 328 static int hf_rrlp_transaction_ID = -1; /* INTEGER_0_262143 */ 329 static int hf_rrlp_velocityRequested = -1; /* NULL */ 330 static int hf_rrlp_ganssPositionMethod = -1; /* GANSSPositioningMethod */ 331 static int hf_rrlp_ganss_AssistData = -1; /* GANSS_AssistData */ 332 static int hf_rrlp_ganssCarrierPhaseMeasurementRequest = -1; /* NULL */ 333 static int hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest = -1; /* NULL */ 334 static int hf_rrlp_requiredResponseTime = -1; /* RequiredResponseTime */ 335 static int hf_rrlp_add_GPS_AssistData = -1; /* Add_GPS_AssistData */ 336 static int hf_rrlp_ganssMultiFreqMeasurementRequest = -1; /* NULL */ 337 static int hf_rrlp_ganss_controlHeader = -1; /* GANSS_ControlHeader */ 338 static int hf_rrlp_ganssCommonAssistData = -1; /* GANSSCommonAssistData */ 339 static int hf_rrlp_ganssGenericAssistDataList = -1; /* SeqOfGANSSGenericAssistDataElement */ 340 static int hf_rrlp_ganssReferenceTime = -1; /* GANSSReferenceTime */ 341 static int hf_rrlp_ganssRefLocation = -1; /* GANSSRefLocation */ 342 static int hf_rrlp_ganssIonosphericModel = -1; /* GANSSIonosphericModel */ 343 static int hf_rrlp_ganssAddIonosphericModel = -1; /* GANSSAddIonosphericModel */ 344 static int hf_rrlp_ganssEarthOrientParam = -1; /* GANSSEarthOrientParam */ 345 static int hf_rrlp_ganssReferenceTime_R10_Ext = -1; /* GANSSReferenceTime_R10_Ext */ 346 static int hf_rrlp_SeqOfGANSSGenericAssistDataElement_item = -1; /* GANSSGenericAssistDataElement */ 347 static int hf_rrlp_ganssID = -1; /* INTEGER_0_7 */ 348 static int hf_rrlp_ganssTimeModel = -1; /* SeqOfGANSSTimeModel */ 349 static int hf_rrlp_ganssDiffCorrections = -1; /* GANSSDiffCorrections */ 350 static int hf_rrlp_ganssNavigationModel = -1; /* GANSSNavModel */ 351 static int hf_rrlp_ganssRealTimeIntegrity = -1; /* GANSSRealTimeIntegrity */ 352 static int hf_rrlp_ganssDataBitAssist = -1; /* GANSSDataBitAssist */ 353 static int hf_rrlp_ganssRefMeasurementAssist = -1; /* GANSSRefMeasurementAssist */ 354 static int hf_rrlp_ganssAlmanacModel = -1; /* GANSSAlmanacModel */ 355 static int hf_rrlp_ganssUTCModel = -1; /* GANSSUTCModel */ 356 static int hf_rrlp_ganssEphemerisExtension = -1; /* GANSSEphemerisExtension */ 357 static int hf_rrlp_ganssEphemerisExtCheck = -1; /* GANSSEphemerisExtensionCheck */ 358 static int hf_rrlp_sbasID = -1; /* INTEGER_0_7 */ 359 static int hf_rrlp_ganssAddUTCModel = -1; /* GANSSAddUTCModel */ 360 static int hf_rrlp_ganssAuxiliaryInfo = -1; /* GANSSAuxiliaryInformation */ 361 static int hf_rrlp_ganssDiffCorrectionsValidityPeriod = -1; /* GANSSDiffCorrectionsValidityPeriod */ 362 static int hf_rrlp_ganssTimeModel_R10_Ext = -1; /* SeqOfGANSSTimeModel_R10_Ext */ 363 static int hf_rrlp_ganssRefMeasurementAssist_R10_Ext = -1; /* GANSSRefMeasurementAssist_R10_Ext */ 364 static int hf_rrlp_ganssAlmanacModel_R10_Ext = -1; /* GANSSAlmanacModel_R10_Ext */ 365 static int hf_rrlp_ganssRefTimeInfo = -1; /* GANSSRefTimeInfo */ 366 static int hf_rrlp_ganssTOD_GSMTimeAssociation = -1; /* GANSSTOD_GSMTimeAssociation */ 367 static int hf_rrlp_ganssDay = -1; /* INTEGER_0_8191 */ 368 static int hf_rrlp_ganssTOD = -1; /* GANSSTOD */ 369 static int hf_rrlp_ganssTODUncertainty = -1; /* GANSSTODUncertainty */ 370 static int hf_rrlp_ganssTimeID = -1; /* INTEGER_0_7 */ 371 static int hf_rrlp_ganssDayCycleNumber = -1; /* INTEGER_0_7 */ 372 static int hf_rrlp_frameDrift = -1; /* FrameDrift */ 373 static int hf_rrlp_ganssIonoModel = -1; /* GANSSIonosphereModel */ 374 static int hf_rrlp_ganssIonoStormFlags = -1; /* GANSSIonoStormFlags */ 375 static int hf_rrlp_ai0 = -1; /* INTEGER_0_4095 */ 376 static int hf_rrlp_ai1 = -1; /* INTEGER_0_4095 */ 377 static int hf_rrlp_ai2 = -1; /* INTEGER_0_4095 */ 378 static int hf_rrlp_ionoStormFlag1 = -1; /* INTEGER_0_1 */ 379 static int hf_rrlp_ionoStormFlag2 = -1; /* INTEGER_0_1 */ 380 static int hf_rrlp_ionoStormFlag3 = -1; /* INTEGER_0_1 */ 381 static int hf_rrlp_ionoStormFlag4 = -1; /* INTEGER_0_1 */ 382 static int hf_rrlp_ionoStormFlag5 = -1; /* INTEGER_0_1 */ 383 static int hf_rrlp_dataID = -1; /* BIT_STRING_SIZE_2 */ 384 static int hf_rrlp_ionoModel = -1; /* IonosphericModel */ 385 static int hf_rrlp_teop = -1; /* INTEGER_0_65535 */ 386 static int hf_rrlp_pmX = -1; /* INTEGER_M1048576_1048575 */ 387 static int hf_rrlp_pmXdot = -1; /* INTEGER_M16384_16383 */ 388 static int hf_rrlp_pmY = -1; /* INTEGER_M1048576_1048575 */ 389 static int hf_rrlp_pmYdot = -1; /* INTEGER_M16384_16383 */ 390 static int hf_rrlp_deltaUT1 = -1; /* INTEGER_M1073741824_1073741823 */ 391 static int hf_rrlp_deltaUT1dot = -1; /* INTEGER_M262144_262143 */ 392 static int hf_rrlp_SeqOfGANSSTimeModel_item = -1; /* GANSSTimeModelElement */ 393 static int hf_rrlp_ganssTimeModelRefTime = -1; /* INTEGER_0_65535 */ 394 static int hf_rrlp_tA0 = -1; /* TA0 */ 395 static int hf_rrlp_tA1 = -1; /* TA1 */ 396 static int hf_rrlp_tA2 = -1; /* TA2 */ 397 static int hf_rrlp_gnssTOID = -1; /* INTEGER_0_7 */ 398 static int hf_rrlp_weekNumber = -1; /* INTEGER_0_8191 */ 399 static int hf_rrlp_SeqOfGANSSTimeModel_R10_Ext_item = -1; /* GANSSTimeModelElement_R10_Ext */ 400 static int hf_rrlp_deltaT = -1; /* INTEGER_M128_127 */ 401 static int hf_rrlp_dganssRefTime = -1; /* INTEGER_0_119 */ 402 static int hf_rrlp_sgnTypeList = -1; /* SeqOfSgnTypeElement */ 403 static int hf_rrlp_SeqOfSgnTypeElement_item = -1; /* SgnTypeElement */ 404 static int hf_rrlp_ganssSignalID = -1; /* GANSSSignalID */ 405 static int hf_rrlp_ganssStatusHealth = -1; /* INTEGER_0_7 */ 406 static int hf_rrlp_dganssSgnList = -1; /* SeqOfDGANSSSgnElement */ 407 static int hf_rrlp_SeqOfDGANSSSgnElement_item = -1; /* DGANSSSgnElement */ 408 static int hf_rrlp_svID = -1; /* SVID */ 409 static int hf_rrlp_iod = -1; /* INTEGER_0_1023 */ 410 static int hf_rrlp_nonBroadcastIndFlag = -1; /* INTEGER_0_1 */ 411 static int hf_rrlp_ganssSatelliteList = -1; /* SeqOfGANSSSatelliteElement */ 412 static int hf_rrlp_SeqOfGANSSSatelliteElement_item = -1; /* GANSSSatelliteElement */ 413 static int hf_rrlp_svHealth = -1; /* BIT_STRING_SIZE_5 */ 414 static int hf_rrlp_ganssClockModel = -1; /* GANSSClockModel */ 415 static int hf_rrlp_ganssOrbitModel = -1; /* GANSSOrbitModel */ 416 static int hf_rrlp_svHealthMSB = -1; /* BIT_STRING_SIZE_1 */ 417 static int hf_rrlp_iodMSB = -1; /* INTEGER_0_1 */ 418 static int hf_rrlp_keplerianSet = -1; /* NavModel_KeplerianSet */ 419 static int hf_rrlp_navKeplerianSet = -1; /* NavModel_NAVKeplerianSet */ 420 static int hf_rrlp_cnavKeplerianSet = -1; /* NavModel_CNAVKeplerianSet */ 421 static int hf_rrlp_glonassECEF = -1; /* NavModel_GLONASSecef */ 422 static int hf_rrlp_sbasECEF = -1; /* NavModel_SBASecef */ 423 static int hf_rrlp_keplerToe = -1; /* INTEGER_0_16383 */ 424 static int hf_rrlp_keplerW = -1; /* INTEGER_M2147483648_2147483647 */ 425 static int hf_rrlp_keplerDeltaN = -1; /* INTEGER_M32768_32767 */ 426 static int hf_rrlp_keplerM0 = -1; /* INTEGER_M2147483648_2147483647 */ 427 static int hf_rrlp_keplerOmegaDot = -1; /* INTEGER_M8388608_8388607 */ 428 static int hf_rrlp_keplerE = -1; /* INTEGER_0_4294967295 */ 429 static int hf_rrlp_keplerIDot = -1; /* INTEGER_M8192_8191 */ 430 static int hf_rrlp_keplerAPowerHalf = -1; /* INTEGER_0_4294967295 */ 431 static int hf_rrlp_keplerI0 = -1; /* INTEGER_M2147483648_2147483647 */ 432 static int hf_rrlp_keplerOmega0 = -1; /* INTEGER_M2147483648_2147483647 */ 433 static int hf_rrlp_keplerCrs = -1; /* INTEGER_M32768_32767 */ 434 static int hf_rrlp_keplerCis = -1; /* INTEGER_M32768_32767 */ 435 static int hf_rrlp_keplerCus = -1; /* INTEGER_M32768_32767 */ 436 static int hf_rrlp_keplerCrc = -1; /* INTEGER_M32768_32767 */ 437 static int hf_rrlp_keplerCic = -1; /* INTEGER_M32768_32767 */ 438 static int hf_rrlp_keplerCuc = -1; /* INTEGER_M32768_32767 */ 439 static int hf_rrlp_navURA = -1; /* INTEGER_0_15 */ 440 static int hf_rrlp_navFitFlag = -1; /* INTEGER_0_1 */ 441 static int hf_rrlp_navToe = -1; /* INTEGER_0_37799 */ 442 static int hf_rrlp_navOmega = -1; /* INTEGER_M2147483648_2147483647 */ 443 static int hf_rrlp_navDeltaN = -1; /* INTEGER_M32768_32767 */ 444 static int hf_rrlp_navM0 = -1; /* INTEGER_M2147483648_2147483647 */ 445 static int hf_rrlp_navOmegaADot = -1; /* INTEGER_M8388608_8388607 */ 446 static int hf_rrlp_navE = -1; /* INTEGER_0_4294967295 */ 447 static int hf_rrlp_navIDot = -1; /* INTEGER_M8192_8191 */ 448 static int hf_rrlp_navAPowerHalf = -1; /* INTEGER_0_4294967295 */ 449 static int hf_rrlp_navI0 = -1; /* INTEGER_M2147483648_2147483647 */ 450 static int hf_rrlp_navOmegaA0 = -1; /* INTEGER_M2147483648_2147483647 */ 451 static int hf_rrlp_navCrs = -1; /* INTEGER_M32768_32767 */ 452 static int hf_rrlp_navCis = -1; /* INTEGER_M32768_32767 */ 453 static int hf_rrlp_navCus = -1; /* INTEGER_M32768_32767 */ 454 static int hf_rrlp_navCrc = -1; /* INTEGER_M32768_32767 */ 455 static int hf_rrlp_navCic = -1; /* INTEGER_M32768_32767 */ 456 static int hf_rrlp_navCuc = -1; /* INTEGER_M32768_32767 */ 457 static int hf_rrlp_cnavTop = -1; /* INTEGER_0_2015 */ 458 static int hf_rrlp_cnavURAindex = -1; /* INTEGER_M16_15 */ 459 static int hf_rrlp_cnavDeltaA = -1; /* INTEGER_M33554432_33554431 */ 460 static int hf_rrlp_cnavAdot = -1; /* INTEGER_M16777216_16777215 */ 461 static int hf_rrlp_cnavDeltaNo = -1; /* INTEGER_M65536_65535 */ 462 static int hf_rrlp_cnavDeltaNoDot = -1; /* INTEGER_M4194304_4194303 */ 463 static int hf_rrlp_cnavMo = -1; /* INTEGER_M4294967296_4294967295 */ 464 static int hf_rrlp_cnavE = -1; /* INTEGER_0_8589934591 */ 465 static int hf_rrlp_cnavOmega = -1; /* INTEGER_M4294967296_4294967295 */ 466 static int hf_rrlp_cnavOMEGA0 = -1; /* INTEGER_M4294967296_4294967295 */ 467 static int hf_rrlp_cnavDeltaOmegaDot = -1; /* INTEGER_M65536_65535 */ 468 static int hf_rrlp_cnavIo = -1; /* INTEGER_M4294967296_4294967295 */ 469 static int hf_rrlp_cnavIoDot = -1; /* INTEGER_M16384_16383 */ 470 static int hf_rrlp_cnavCis = -1; /* INTEGER_M32768_32767 */ 471 static int hf_rrlp_cnavCic = -1; /* INTEGER_M32768_32767 */ 472 static int hf_rrlp_cnavCrs = -1; /* INTEGER_M8388608_8388607 */ 473 static int hf_rrlp_cnavCrc = -1; /* INTEGER_M8388608_8388607 */ 474 static int hf_rrlp_cnavCus = -1; /* INTEGER_M1048576_1048575 */ 475 static int hf_rrlp_cnavCuc = -1; /* INTEGER_M1048576_1048575 */ 476 static int hf_rrlp_gloEn = -1; /* INTEGER_0_31 */ 477 static int hf_rrlp_gloP1 = -1; /* BIT_STRING_SIZE_2 */ 478 static int hf_rrlp_gloP2 = -1; /* BOOLEAN */ 479 static int hf_rrlp_gloM = -1; /* INTEGER_0_3 */ 480 static int hf_rrlp_gloX = -1; /* INTEGER_M67108864_67108863 */ 481 static int hf_rrlp_gloXdot = -1; /* INTEGER_M8388608_8388607 */ 482 static int hf_rrlp_gloXdotdot = -1; /* INTEGER_M16_15 */ 483 static int hf_rrlp_gloY = -1; /* INTEGER_M67108864_67108863 */ 484 static int hf_rrlp_gloYdot = -1; /* INTEGER_M8388608_8388607 */ 485 static int hf_rrlp_gloYdotdot = -1; /* INTEGER_M16_15 */ 486 static int hf_rrlp_gloZ = -1; /* INTEGER_M67108864_67108863 */ 487 static int hf_rrlp_gloZdot = -1; /* INTEGER_M8388608_8388607 */ 488 static int hf_rrlp_gloZdotdot = -1; /* INTEGER_M16_15 */ 489 static int hf_rrlp_sbasTo = -1; /* INTEGER_0_5399 */ 490 static int hf_rrlp_sbasAccuracy = -1; /* BIT_STRING_SIZE_4 */ 491 static int hf_rrlp_sbasXg = -1; /* INTEGER_M536870912_536870911 */ 492 static int hf_rrlp_sbasYg = -1; /* INTEGER_M536870912_536870911 */ 493 static int hf_rrlp_sbasZg = -1; /* INTEGER_M16777216_16777215 */ 494 static int hf_rrlp_sbasXgDot = -1; /* INTEGER_M65536_65535 */ 495 static int hf_rrlp_sbasYgDot = -1; /* INTEGER_M65536_65535 */ 496 static int hf_rrlp_sbasZgDot = -1; /* INTEGER_M131072_131071 */ 497 static int hf_rrlp_sbasXgDotDot = -1; /* INTEGER_M512_511 */ 498 static int hf_rrlp_sbagYgDotDot = -1; /* INTEGER_M512_511 */ 499 static int hf_rrlp_sbasZgDotDot = -1; /* INTEGER_M512_511 */ 500 static int hf_rrlp_standardClockModelList = -1; /* SeqOfStandardClockModelElement */ 501 static int hf_rrlp_navClockModel = -1; /* NAVclockModel */ 502 static int hf_rrlp_cnavClockModel = -1; /* CNAVclockModel */ 503 static int hf_rrlp_glonassClockModel = -1; /* GLONASSclockModel */ 504 static int hf_rrlp_sbasClockModel = -1; /* SBASclockModel */ 505 static int hf_rrlp_SeqOfStandardClockModelElement_item = -1; /* StandardClockModelElement */ 506 static int hf_rrlp_stanClockToc = -1; /* INTEGER_0_16383 */ 507 static int hf_rrlp_stanClockAF2 = -1; /* INTEGER_M2048_2047 */ 508 static int hf_rrlp_stanClockAF1 = -1; /* INTEGER_M131072_131071 */ 509 static int hf_rrlp_stanClockAF0 = -1; /* INTEGER_M134217728_134217727 */ 510 static int hf_rrlp_stanClockTgd = -1; /* INTEGER_M512_511 */ 511 static int hf_rrlp_stanModelID = -1; /* INTEGER_0_1 */ 512 static int hf_rrlp_navToc = -1; /* INTEGER_0_37799 */ 513 static int hf_rrlp_navaf2 = -1; /* INTEGER_M128_127 */ 514 static int hf_rrlp_navaf1 = -1; /* INTEGER_M32768_32767 */ 515 static int hf_rrlp_navaf0 = -1; /* INTEGER_M2097152_2097151 */ 516 static int hf_rrlp_navTgd = -1; /* INTEGER_M128_127 */ 517 static int hf_rrlp_cnavToc = -1; /* INTEGER_0_2015 */ 518 static int hf_rrlp_cnavURA0 = -1; /* INTEGER_M16_15 */ 519 static int hf_rrlp_cnavURA1 = -1; /* INTEGER_0_7 */ 520 static int hf_rrlp_cnavURA2 = -1; /* INTEGER_0_7 */ 521 static int hf_rrlp_cnavAf2 = -1; /* INTEGER_M512_511 */ 522 static int hf_rrlp_cnavAf1 = -1; /* INTEGER_M524288_524287 */ 523 static int hf_rrlp_cnavAf0 = -1; /* INTEGER_M33554432_33554431 */ 524 static int hf_rrlp_cnavTgd = -1; /* INTEGER_M4096_4095 */ 525 static int hf_rrlp_cnavISCl1cp = -1; /* INTEGER_M4096_4095 */ 526 static int hf_rrlp_cnavISCl1cd = -1; /* INTEGER_M4096_4095 */ 527 static int hf_rrlp_cnavISCl1ca = -1; /* INTEGER_M4096_4095 */ 528 static int hf_rrlp_cnavISCl2c = -1; /* INTEGER_M4096_4095 */ 529 static int hf_rrlp_cnavISCl5i5 = -1; /* INTEGER_M4096_4095 */ 530 static int hf_rrlp_cnavISCl5q5 = -1; /* INTEGER_M4096_4095 */ 531 static int hf_rrlp_gloTau = -1; /* INTEGER_M2097152_2097151 */ 532 static int hf_rrlp_gloGamma = -1; /* INTEGER_M1024_1023 */ 533 static int hf_rrlp_gloDeltaTau = -1; /* INTEGER_M16_15 */ 534 static int hf_rrlp_sbasAgfo = -1; /* INTEGER_M2048_2047 */ 535 static int hf_rrlp_sbasAgf1 = -1; /* INTEGER_M128_127 */ 536 static int hf_rrlp_ganssBadSignalList = -1; /* SeqOfBadSignalElement */ 537 static int hf_rrlp_SeqOfBadSignalElement_item = -1; /* BadSignalElement */ 538 static int hf_rrlp_badSVID = -1; /* SVID */ 539 static int hf_rrlp_badSignalID = -1; /* GANSSSignals */ 540 static int hf_rrlp_ganssTOD_01 = -1; /* INTEGER_0_59 */ 541 static int hf_rrlp_ganssDataBitsSatList = -1; /* SeqOfGanssDataBitsElement */ 542 static int hf_rrlp_SeqOfGanssDataBitsElement_item = -1; /* GanssDataBitsElement */ 543 static int hf_rrlp_ganssDataBitsSgnList = -1; /* Seq_OfGANSSDataBitsSgn */ 544 static int hf_rrlp_Seq_OfGANSSDataBitsSgn_item = -1; /* GANSSDataBitsSgnElement */ 545 static int hf_rrlp_ganssSignalType = -1; /* GANSSSignalID */ 546 static int hf_rrlp_ganssDataBits = -1; /* SeqOf_GANSSDataBits */ 547 static int hf_rrlp_SeqOf_GANSSDataBits_item = -1; /* GANSSDataBit */ 548 static int hf_rrlp_ganssRefMeasAssistList = -1; /* SeqOfGANSSRefMeasurementElement */ 549 static int hf_rrlp_SeqOfGANSSRefMeasurementElement_item = -1; /* GANSSRefMeasurementElement */ 550 static int hf_rrlp_additionalDoppler = -1; /* AdditionalDopplerFields */ 551 static int hf_rrlp_intCodePhase_01 = -1; /* INTEGER_0_127 */ 552 static int hf_rrlp_codePhaseSearchWindow_01 = -1; /* INTEGER_0_31 */ 553 static int hf_rrlp_additionalAngle = -1; /* AddionalAngleFields */ 554 static int hf_rrlp_dopplerUncertainty_01 = -1; /* INTEGER_0_4 */ 555 static int hf_rrlp_GANSSRefMeasurementAssist_R10_Ext_item = -1; /* GANSSRefMeasurement_R10_Ext_Element */ 556 static int hf_rrlp_azimuthLSB = -1; /* INTEGER_0_15 */ 557 static int hf_rrlp_elevationLSB = -1; /* INTEGER_0_15 */ 558 static int hf_rrlp_weekNumber_01 = -1; /* INTEGER_0_255 */ 559 static int hf_rrlp_toa = -1; /* INTEGER_0_255 */ 560 static int hf_rrlp_ioda = -1; /* INTEGER_0_3 */ 561 static int hf_rrlp_ganssAlmanacList = -1; /* SeqOfGANSSAlmanacElement */ 562 static int hf_rrlp_SeqOfGANSSAlmanacElement_item = -1; /* GANSSAlmanacElement */ 563 static int hf_rrlp_keplerianAlmanacSet = -1; /* Almanac_KeplerianSet */ 564 static int hf_rrlp_keplerianNAVAlmanac = -1; /* Almanac_NAVKeplerianSet */ 565 static int hf_rrlp_keplerianReducedAlmanac = -1; /* Almanac_ReducedKeplerianSet */ 566 static int hf_rrlp_keplerianMidiAlmanac = -1; /* Almanac_MidiAlmanacSet */ 567 static int hf_rrlp_keplerianGLONASS = -1; /* Almanac_GlonassAlmanacSet */ 568 static int hf_rrlp_ecefSBASAlmanac = -1; /* Almanac_ECEFsbasAlmanacSet */ 569 static int hf_rrlp_kepAlmanacE = -1; /* INTEGER_0_2047 */ 570 static int hf_rrlp_kepAlmanacDeltaI = -1; /* INTEGER_M1024_1023 */ 571 static int hf_rrlp_kepAlmanacOmegaDot = -1; /* INTEGER_M1024_1023 */ 572 static int hf_rrlp_kepSVHealth = -1; /* INTEGER_0_15 */ 573 static int hf_rrlp_kepAlmanacAPowerHalf = -1; /* INTEGER_M65536_65535 */ 574 static int hf_rrlp_kepAlmanacOmega0 = -1; /* INTEGER_M32768_32767 */ 575 static int hf_rrlp_kepAlmanacW = -1; /* INTEGER_M32768_32767 */ 576 static int hf_rrlp_kepAlmanacM0 = -1; /* INTEGER_M32768_32767 */ 577 static int hf_rrlp_kepAlmanacAF0 = -1; /* INTEGER_M8192_8191 */ 578 static int hf_rrlp_kepAlmanacAF1 = -1; /* INTEGER_M1024_1023 */ 579 static int hf_rrlp_navAlmE = -1; /* INTEGER_0_65535 */ 580 static int hf_rrlp_navAlmDeltaI = -1; /* INTEGER_M32768_32767 */ 581 static int hf_rrlp_navAlmOMEGADOT = -1; /* INTEGER_M32768_32767 */ 582 static int hf_rrlp_navAlmSVHealth = -1; /* INTEGER_0_255 */ 583 static int hf_rrlp_navAlmSqrtA = -1; /* INTEGER_0_16777215 */ 584 static int hf_rrlp_navAlmOMEGAo = -1; /* INTEGER_M8388608_8388607 */ 585 static int hf_rrlp_navAlmOmega = -1; /* INTEGER_M8388608_8388607 */ 586 static int hf_rrlp_navAlmMo = -1; /* INTEGER_M8388608_8388607 */ 587 static int hf_rrlp_navAlmaf0 = -1; /* INTEGER_M1024_1023 */ 588 static int hf_rrlp_navAlmaf1 = -1; /* INTEGER_M1024_1023 */ 589 static int hf_rrlp_redAlmDeltaA = -1; /* INTEGER_M128_127 */ 590 static int hf_rrlp_redAlmOmega0 = -1; /* INTEGER_M64_63 */ 591 static int hf_rrlp_redAlmPhi0 = -1; /* INTEGER_M64_63 */ 592 static int hf_rrlp_redAlmL1Health = -1; /* BOOLEAN */ 593 static int hf_rrlp_redAlmL2Health = -1; /* BOOLEAN */ 594 static int hf_rrlp_redAlmL5Health = -1; /* BOOLEAN */ 595 static int hf_rrlp_midiAlmE = -1; /* INTEGER_0_2047 */ 596 static int hf_rrlp_midiAlmDeltaI = -1; /* INTEGER_M1024_1023 */ 597 static int hf_rrlp_midiAlmOmegaDot = -1; /* INTEGER_M1024_1023 */ 598 static int hf_rrlp_midiAlmSqrtA = -1; /* INTEGER_0_131071 */ 599 static int hf_rrlp_midiAlmOmega0 = -1; /* INTEGER_M32768_32767 */ 600 static int hf_rrlp_midiAlmOmega = -1; /* INTEGER_M32768_32767 */ 601 static int hf_rrlp_midiAlmMo = -1; /* INTEGER_M32768_32767 */ 602 static int hf_rrlp_midiAlmaf0 = -1; /* INTEGER_M1024_1023 */ 603 static int hf_rrlp_midiAlmaf1 = -1; /* INTEGER_M512_511 */ 604 static int hf_rrlp_midiAlmL1Health = -1; /* BOOLEAN */ 605 static int hf_rrlp_midiAlmL2Health = -1; /* BOOLEAN */ 606 static int hf_rrlp_midiAlmL5Health = -1; /* BOOLEAN */ 607 static int hf_rrlp_gloAlmNA = -1; /* INTEGER_1_1461 */ 608 static int hf_rrlp_gloAlmnA = -1; /* INTEGER_1_24 */ 609 static int hf_rrlp_gloAlmHA = -1; /* INTEGER_0_31 */ 610 static int hf_rrlp_gloAlmLambdaA = -1; /* INTEGER_M1048576_1048575 */ 611 static int hf_rrlp_gloAlmtlambdaA = -1; /* INTEGER_0_2097151 */ 612 static int hf_rrlp_gloAlmDeltaIa = -1; /* INTEGER_M131072_131071 */ 613 static int hf_rrlp_gloAlmDeltaTA = -1; /* INTEGER_M2097152_2097151 */ 614 static int hf_rrlp_gloAlmDeltaTdotA = -1; /* INTEGER_M64_63 */ 615 static int hf_rrlp_gloAlmEpsilonA = -1; /* INTEGER_0_32767 */ 616 static int hf_rrlp_gloAlmOmegaA = -1; /* INTEGER_M32768_32767 */ 617 static int hf_rrlp_gloAlmTauA = -1; /* INTEGER_M512_511 */ 618 static int hf_rrlp_gloAlmCA = -1; /* INTEGER_0_1 */ 619 static int hf_rrlp_gloAlmMA = -1; /* BIT_STRING_SIZE_2 */ 620 static int hf_rrlp_sbasAlmDataID = -1; /* INTEGER_0_3 */ 621 static int hf_rrlp_sbasAlmHealth = -1; /* BIT_STRING_SIZE_8 */ 622 static int hf_rrlp_sbasAlmXg = -1; /* INTEGER_M16384_16383 */ 623 static int hf_rrlp_sbasAlmYg = -1; /* INTEGER_M16384_16383 */ 624 static int hf_rrlp_sbasAlmZg = -1; /* INTEGER_M256_255 */ 625 static int hf_rrlp_sbasAlmXgdot = -1; /* INTEGER_M4_3 */ 626 static int hf_rrlp_sbasAlmYgDot = -1; /* INTEGER_M4_3 */ 627 static int hf_rrlp_sbasAlmZgDot = -1; /* INTEGER_M8_7 */ 628 static int hf_rrlp_sbasAlmTo = -1; /* INTEGER_0_2047 */ 629 static int hf_rrlp_completeAlmanacProvided = -1; /* BOOLEAN */ 630 static int hf_rrlp_ganssUtcA1 = -1; /* INTEGER_M8388608_8388607 */ 631 static int hf_rrlp_ganssUtcA0 = -1; /* INTEGER_M2147483648_2147483647 */ 632 static int hf_rrlp_ganssUtcTot = -1; /* INTEGER_0_255 */ 633 static int hf_rrlp_ganssUtcWNt = -1; /* INTEGER_0_255 */ 634 static int hf_rrlp_ganssUtcDeltaTls = -1; /* INTEGER_M128_127 */ 635 static int hf_rrlp_ganssUtcWNlsf = -1; /* INTEGER_0_255 */ 636 static int hf_rrlp_ganssUtcDN = -1; /* INTEGER_M128_127 */ 637 static int hf_rrlp_ganssUtcDeltaTlsf = -1; /* INTEGER_M128_127 */ 638 static int hf_rrlp_ganssEphemerisHeader = -1; /* GANSSEphemerisExtensionHeader */ 639 static int hf_rrlp_ganssReferenceSet = -1; /* SeqOfGANSSRefOrbit */ 640 static int hf_rrlp_ganssephemerisDeltasMatrix = -1; /* GANSSEphemerisDeltaMatrix */ 641 static int hf_rrlp_timeAtEstimation = -1; /* GANSSEphemerisExtensionTime */ 642 static int hf_rrlp_validityPeriod = -1; /* INTEGER_1_8 */ 643 static int hf_rrlp_ephemerisExtensionDuration = -1; /* INTEGER_1_512 */ 644 static int hf_rrlp_ganssEphExtDay = -1; /* INTEGER_0_8191 */ 645 static int hf_rrlp_ganssEphExtTOD = -1; /* GANSSTOD */ 646 static int hf_rrlp_keplerToe_01 = -1; /* INTEGER_0_37799 */ 647 static int hf_rrlp_SeqOfGANSSRefOrbit_item = -1; /* GANSSReferenceOrbit */ 648 static int hf_rrlp_ganssOrbitModel_01 = -1; /* ReferenceNavModel */ 649 static int hf_rrlp_GANSSEphemerisDeltaMatrix_item = -1; /* GANSSEphemerisDeltaEpoch */ 650 static int hf_rrlp_ganssDeltaEpochHeader = -1; /* GANSSDeltaEpochHeader */ 651 static int hf_rrlp_ganssDeltaElementList = -1; /* GANSSDeltaElementList */ 652 static int hf_rrlp_ephemerisDeltaSizes = -1; /* GANSSEphemerisDeltaBitSizes */ 653 static int hf_rrlp_ephemerisDeltaScales = -1; /* GANSSEphemerisDeltaScales */ 654 static int hf_rrlp_GANSSDeltaElementList_item = -1; /* OCTET_STRING_SIZE_1_49 */ 655 static int hf_rrlp_bitsize_delta_omega = -1; /* INTEGER_1_32 */ 656 static int hf_rrlp_bitsize_delta_deltaN = -1; /* INTEGER_1_16 */ 657 static int hf_rrlp_bitsize_delta_m0 = -1; /* INTEGER_1_32 */ 658 static int hf_rrlp_bitsize_delta_omegadot = -1; /* INTEGER_1_24 */ 659 static int hf_rrlp_bitsize_delta_e = -1; /* INTEGER_1_32 */ 660 static int hf_rrlp_bitsize_delta_idot = -1; /* INTEGER_1_14 */ 661 static int hf_rrlp_bitsize_delta_sqrtA = -1; /* INTEGER_1_32 */ 662 static int hf_rrlp_bitsize_delta_i0 = -1; /* INTEGER_1_32 */ 663 static int hf_rrlp_bitsize_delta_omega0 = -1; /* INTEGER_1_32 */ 664 static int hf_rrlp_bitsize_delta_crs = -1; /* INTEGER_1_16 */ 665 static int hf_rrlp_bitsize_delta_cis = -1; /* INTEGER_1_16 */ 666 static int hf_rrlp_bitsize_delta_cus = -1; /* INTEGER_1_16 */ 667 static int hf_rrlp_bitsize_delta_crc = -1; /* INTEGER_1_16 */ 668 static int hf_rrlp_bitsize_delta_cic = -1; /* INTEGER_1_16 */ 669 static int hf_rrlp_bitsize_delta_cuc = -1; /* INTEGER_1_16 */ 670 static int hf_rrlp_bitsize_delta_tgd1 = -1; /* INTEGER_1_10 */ 671 static int hf_rrlp_bitsize_delta_tgd2 = -1; /* INTEGER_1_10 */ 672 static int hf_rrlp_scale_delta_omega = -1; /* INTEGER_M16_15 */ 673 static int hf_rrlp_scale_delta_deltaN = -1; /* INTEGER_M16_15 */ 674 static int hf_rrlp_scale_delta_m0 = -1; /* INTEGER_M16_15 */ 675 static int hf_rrlp_scale_delta_omegadot = -1; /* INTEGER_M16_15 */ 676 static int hf_rrlp_scale_delta_e = -1; /* INTEGER_M16_15 */ 677 static int hf_rrlp_scale_delta_idot = -1; /* INTEGER_M16_15 */ 678 static int hf_rrlp_scale_delta_sqrtA = -1; /* INTEGER_M16_15 */ 679 static int hf_rrlp_scale_delta_i0 = -1; /* INTEGER_M16_15 */ 680 static int hf_rrlp_scale_delta_omega0 = -1; /* INTEGER_M16_15 */ 681 static int hf_rrlp_scale_delta_crs = -1; /* INTEGER_M16_15 */ 682 static int hf_rrlp_scale_delta_cis = -1; /* INTEGER_M16_15 */ 683 static int hf_rrlp_scale_delta_cus = -1; /* INTEGER_M16_15 */ 684 static int hf_rrlp_scale_delta_crc = -1; /* INTEGER_M16_15 */ 685 static int hf_rrlp_scale_delta_cic = -1; /* INTEGER_M16_15 */ 686 static int hf_rrlp_scale_delta_cuc = -1; /* INTEGER_M16_15 */ 687 static int hf_rrlp_scale_delta_tgd1 = -1; /* INTEGER_M16_15 */ 688 static int hf_rrlp_scale_delta_tgd2 = -1; /* INTEGER_M16_15 */ 689 static int hf_rrlp_ganssBeginTime = -1; /* GANSSEphemerisExtensionTime */ 690 static int hf_rrlp_ganssEndTime = -1; /* GANSSEphemerisExtensionTime */ 691 static int hf_rrlp_ganssSatEventsInfo = -1; /* GANSSSatEventsInfo */ 692 static int hf_rrlp_eventOccured = -1; /* BIT_STRING_SIZE_64 */ 693 static int hf_rrlp_futureEventNoted = -1; /* BIT_STRING_SIZE_64 */ 694 static int hf_rrlp_utcModel2 = -1; /* UTCmodelSet2 */ 695 static int hf_rrlp_utcModel3 = -1; /* UTCmodelSet3 */ 696 static int hf_rrlp_utcModel4 = -1; /* UTCmodelSet4 */ 697 static int hf_rrlp_utcA0_01 = -1; /* INTEGER_M32768_32767 */ 698 static int hf_rrlp_utcA1_01 = -1; /* INTEGER_M4096_4095 */ 699 static int hf_rrlp_utcA2 = -1; /* INTEGER_M64_63 */ 700 static int hf_rrlp_utcTot_01 = -1; /* INTEGER_0_65535 */ 701 static int hf_rrlp_utcWNot = -1; /* INTEGER_0_8191 */ 702 static int hf_rrlp_utcDN_01 = -1; /* BIT_STRING_SIZE_4 */ 703 static int hf_rrlp_nA = -1; /* INTEGER_1_1461 */ 704 static int hf_rrlp_tauC = -1; /* INTEGER_M2147483648_2147483647 */ 705 static int hf_rrlp_b1 = -1; /* INTEGER_M1024_1023 */ 706 static int hf_rrlp_b2 = -1; /* INTEGER_M512_511 */ 707 static int hf_rrlp_kp = -1; /* BIT_STRING_SIZE_2 */ 708 static int hf_rrlp_utcA1wnt = -1; /* INTEGER_M8388608_8388607 */ 709 static int hf_rrlp_utcA0wnt = -1; /* INTEGER_M2147483648_2147483647 */ 710 static int hf_rrlp_utcStandardID = -1; /* INTEGER_0_7 */ 711 static int hf_rrlp_ganssID1 = -1; /* GANSS_ID1 */ 712 static int hf_rrlp_ganssID3 = -1; /* GANSS_ID3 */ 713 static int hf_rrlp_GANSS_ID1_item = -1; /* GANSS_ID1_element */ 714 static int hf_rrlp_signalsAvailable = -1; /* GANSSSignals */ 715 static int hf_rrlp_GANSS_ID3_item = -1; /* GANSS_ID3_element */ 716 static int hf_rrlp_channelNumber = -1; /* INTEGER_M7_13 */ 717 static int hf_rrlp_GANSSDiffCorrectionsValidityPeriod_item = -1; /* DGANSSExtensionSgnTypeElement */ 718 static int hf_rrlp_dganssExtensionSgnList = -1; /* SeqOfDGANSSExtensionSgnElement */ 719 static int hf_rrlp_SeqOfDGANSSExtensionSgnElement_item = -1; /* DGANSSExtensionSgnElement */ 720 static int hf_rrlp_udreGrowthRate = -1; /* INTEGER_0_7 */ 721 static int hf_rrlp_udreValidityTime = -1; /* INTEGER_0_7 */ 722 static int hf_rrlp_add_GPS_controlHeader = -1; /* Add_GPS_ControlHeader */ 723 static int hf_rrlp_gpsEphemerisExtension = -1; /* GPSEphemerisExtension */ 724 static int hf_rrlp_gpsEphemerisExtensionCheck = -1; /* GPSEphemerisExtensionCheck */ 725 static int hf_rrlp_dgpsCorrectionsValidityPeriod = -1; /* DGPSCorrectionsValidityPeriod */ 726 static int hf_rrlp_gpsReferenceTime_R10_Ext = -1; /* GPSReferenceTime_R10_Ext */ 727 static int hf_rrlp_gpsAcquisAssist_R10_Ext = -1; /* GPSAcquisAssist_R10_Ext */ 728 static int hf_rrlp_gpsAlmanac_R10_Ext = -1; /* GPSAlmanac_R10_Ext */ 729 static int hf_rrlp_af2 = -1; /* INTEGER_M128_127 */ 730 static int hf_rrlp_af1 = -1; /* INTEGER_M32768_32767 */ 731 static int hf_rrlp_af0 = -1; /* INTEGER_M2097152_2097151 */ 732 static int hf_rrlp_tgd = -1; /* INTEGER_M128_127 */ 733 static int hf_rrlp_gpsEphemerisHeader = -1; /* GPSEphemerisExtensionHeader */ 734 static int hf_rrlp_gpsReferenceSet = -1; /* SeqOfGPSRefOrbit */ 735 static int hf_rrlp_gpsephemerisDeltaMatrix = -1; /* GPSEphemerisDeltaMatrix */ 736 static int hf_rrlp_timeofEstimation = -1; /* GPSEphemerisExtensionTime */ 737 static int hf_rrlp_SeqOfGPSRefOrbit_item = -1; /* GPSReferenceOrbit */ 738 static int hf_rrlp_gpsOrbitModel = -1; /* ReferenceNavModel */ 739 static int hf_rrlp_gpsClockModel = -1; /* GPSClockModel */ 740 static int hf_rrlp_GPSEphemerisDeltaMatrix_item = -1; /* GPSEphemerisDeltaEpoch */ 741 static int hf_rrlp_gpsDeltaEpochHeader = -1; /* GPSDeltaEpochHeader */ 742 static int hf_rrlp_gpsDeltaElementList = -1; /* GPSDeltaElementList */ 743 static int hf_rrlp_ephemerisDeltaSizes_01 = -1; /* GPSEphemerisDeltaBitSizes */ 744 static int hf_rrlp_ephemerisDeltaScales_01 = -1; /* GPSEphemerisDeltaScales */ 745 static int hf_rrlp_GPSDeltaElementList_item = -1; /* OCTET_STRING_SIZE_1_47 */ 746 static int hf_rrlp_bitsize_delta_tgd = -1; /* INTEGER_1_10 */ 747 static int hf_rrlp_scale_delta_tgd = -1; /* INTEGER_M16_15 */ 748 static int hf_rrlp_gpsBeginTime = -1; /* GPSEphemerisExtensionTime */ 749 static int hf_rrlp_gpsEndTime = -1; /* GPSEphemerisExtensionTime */ 750 static int hf_rrlp_gpsSatEventsInfo = -1; /* GPSSatEventsInfo */ 751 static int hf_rrlp_eventOccured_01 = -1; /* BIT_STRING_SIZE_32 */ 752 static int hf_rrlp_futureEventNoted_01 = -1; /* BIT_STRING_SIZE_32 */ 753 static int hf_rrlp_DGPSCorrectionsValidityPeriod_item = -1; /* DGPSExtensionSatElement */ 754 static int hf_rrlp_gpsWeekCycleNumber = -1; /* INTEGER_0_7 */ 755 static int hf_rrlp_GPSAcquisAssist_R10_Ext_item = -1; /* GPSAcquisAssist_R10_Ext_Element */ 756 static int hf_rrlp_velEstimate = -1; /* VelocityEstimate */ 757 static int hf_rrlp_ganssLocationInfo = -1; /* GANSSLocationInfo */ 758 static int hf_rrlp_ganssMeasureInfo = -1; /* GANSSMeasureInfo */ 759 static int hf_rrlp_referenceFrame = -1; /* ReferenceFrame */ 760 static int hf_rrlp_ganssTODm = -1; /* GANSSTODm */ 761 static int hf_rrlp_ganssTODFrac = -1; /* INTEGER_0_16384 */ 762 static int hf_rrlp_posData = -1; /* PositionData */ 763 static int hf_rrlp_stationaryIndication = -1; /* INTEGER_0_1 */ 764 static int hf_rrlp_referenceFN = -1; /* INTEGER_0_65535 */ 765 static int hf_rrlp_referenceFNMSB = -1; /* INTEGER_0_63 */ 766 static int hf_rrlp_ganssMsrSetList = -1; /* SeqOfGANSS_MsrSetElement */ 767 static int hf_rrlp_SeqOfGANSS_MsrSetElement_item = -1; /* GANSS_MsrSetElement */ 768 static int hf_rrlp_deltaGANSSTOD = -1; /* INTEGER_0_127 */ 769 static int hf_rrlp_ganss_MsrElementList = -1; /* SeqOfGANSS_MsrElement */ 770 static int hf_rrlp_SeqOfGANSS_MsrElement_item = -1; /* GANSS_MsrElement */ 771 static int hf_rrlp_ganss_SgnTypeList = -1; /* SeqOfGANSS_SgnTypeElement */ 772 static int hf_rrlp_SeqOfGANSS_SgnTypeElement_item = -1; /* GANSS_SgnTypeElement */ 773 static int hf_rrlp_ganssCodePhaseAmbiguity = -1; /* INTEGER_0_127 */ 774 static int hf_rrlp_ganss_SgnList = -1; /* SeqOfGANSS_SgnElement */ 775 static int hf_rrlp_SeqOfGANSS_SgnElement_item = -1; /* GANSS_SgnElement */ 776 static int hf_rrlp_mpathDet = -1; /* MpathIndic */ 777 static int hf_rrlp_carrierQualityInd = -1; /* INTEGER_0_3 */ 778 static int hf_rrlp_codePhase_01 = -1; /* INTEGER_0_2097151 */ 779 static int hf_rrlp_integerCodePhase = -1; /* INTEGER_0_127 */ 780 static int hf_rrlp_codePhaseRMSError = -1; /* INTEGER_0_63 */ 781 static int hf_rrlp_adr = -1; /* INTEGER_0_33554431 */ 782 static int hf_rrlp_nonGANSSpositionMethods = -1; /* NonGANSSPositionMethods */ 783 static int hf_rrlp_multipleMeasurementSets = -1; /* MultipleMeasurementSets */ 784 static int hf_rrlp_GANSSPositionMethods_item = -1; /* GANSSPositionMethod */ 785 static int hf_rrlp_gANSSPositioningMethodTypes = -1; /* GANSSPositioningMethodTypes */ 786 static int hf_rrlp_gANSSSignals = -1; /* GANSSSignals */ 787 static int hf_rrlp_sbasID_01 = -1; /* SBASID */ 788 static int hf_rrlp_gpsAssistance = -1; /* GPSAssistance */ 789 static int hf_rrlp_gANSSAssistanceSet = -1; /* GANSSAssistanceSet */ 790 static int hf_rrlp_gANSSAdditionalAssistanceChoices = -1; /* GANSSAdditionalAssistanceChoices */ 791 static int hf_rrlp_commonGANSSAssistance = -1; /* CommonGANSSAssistance */ 792 static int hf_rrlp_specificGANSSAssistance = -1; /* SpecificGANSSAssistance */ 793 static int hf_rrlp_SpecificGANSSAssistance_item = -1; /* GANSSAssistanceForOneGANSS */ 794 static int hf_rrlp_gANSSAssistance = -1; /* GANSSAssistance */ 795 static int hf_rrlp_GANSSAdditionalAssistanceChoices_item = -1; /* GANSSAdditionalAssistanceChoicesForOneGANSS */ 796 static int hf_rrlp_ganssClockModelChoice = -1; /* GANSSModelID */ 797 static int hf_rrlp_gannsOrbitModelChoice = -1; /* GANSSModelID */ 798 static int hf_rrlp_ganssAlmanacModelChoice = -1; /* GANSSModelID */ 799 static int hf_rrlp_ganssAdditionalUTCModelChoice = -1; /* GANSSModelID */ 800 /* named bits */ 801 static int hf_rrlp_GANSSPositioningMethod_gps = -1; 802 static int hf_rrlp_GANSSPositioningMethod_galileo = -1; 803 static int hf_rrlp_GANSSPositioningMethod_sbas = -1; 804 static int hf_rrlp_GANSSPositioningMethod_modernizedGPS = -1; 805 static int hf_rrlp_GANSSPositioningMethod_qzss = -1; 806 static int hf_rrlp_GANSSPositioningMethod_glonass = -1; 807 static int hf_rrlp_PositionData_e_otd = -1; 808 static int hf_rrlp_PositionData_gps = -1; 809 static int hf_rrlp_PositionData_galileo = -1; 810 static int hf_rrlp_PositionData_sbas = -1; 811 static int hf_rrlp_PositionData_modernizedGPS = -1; 812 static int hf_rrlp_PositionData_qzss = -1; 813 static int hf_rrlp_PositionData_glonass = -1; 814 static int hf_rrlp_NonGANSSPositionMethods_msAssistedEOTD = -1; 815 static int hf_rrlp_NonGANSSPositionMethods_msBasedEOTD = -1; 816 static int hf_rrlp_NonGANSSPositionMethods_msAssistedGPS = -1; 817 static int hf_rrlp_NonGANSSPositionMethods_msBasedGPS = -1; 818 static int hf_rrlp_NonGANSSPositionMethods_standaloneGPS = -1; 819 static int hf_rrlp_GANSSPositioningMethodTypes_msAssisted = -1; 820 static int hf_rrlp_GANSSPositioningMethodTypes_msBased = -1; 821 static int hf_rrlp_GANSSPositioningMethodTypes_standalone = -1; 822 static int hf_rrlp_GANSSSignals_signal1 = -1; 823 static int hf_rrlp_GANSSSignals_signal2 = -1; 824 static int hf_rrlp_GANSSSignals_signal3 = -1; 825 static int hf_rrlp_GANSSSignals_signal4 = -1; 826 static int hf_rrlp_GANSSSignals_signal5 = -1; 827 static int hf_rrlp_GANSSSignals_signal6 = -1; 828 static int hf_rrlp_GANSSSignals_signal7 = -1; 829 static int hf_rrlp_GANSSSignals_signal8 = -1; 830 static int hf_rrlp_SBASID_waas = -1; 831 static int hf_rrlp_SBASID_egnos = -1; 832 static int hf_rrlp_SBASID_masas = -1; 833 static int hf_rrlp_SBASID_gagan = -1; 834 static int hf_rrlp_MultipleMeasurementSets_eotd = -1; 835 static int hf_rrlp_MultipleMeasurementSets_gps = -1; 836 static int hf_rrlp_MultipleMeasurementSets_ganss = -1; 837 static int hf_rrlp_GPSAssistance_almanac = -1; 838 static int hf_rrlp_GPSAssistance_uTCmodel = -1; 839 static int hf_rrlp_GPSAssistance_ionosphericModel = -1; 840 static int hf_rrlp_GPSAssistance_navigationmodel = -1; 841 static int hf_rrlp_GPSAssistance_dGPScorrections = -1; 842 static int hf_rrlp_GPSAssistance_referenceLocation = -1; 843 static int hf_rrlp_GPSAssistance_referenceTime = -1; 844 static int hf_rrlp_GPSAssistance_acquisitionAssistance = -1; 845 static int hf_rrlp_GPSAssistance_realTimeIntegrity = -1; 846 static int hf_rrlp_GPSAssistance_ephemerisExtension = -1; 847 static int hf_rrlp_GPSAssistance_ephemerisExtensionCheck = -1; 848 static int hf_rrlp_CommonGANSSAssistance_referenceTime = -1; 849 static int hf_rrlp_CommonGANSSAssistance_referenceLocation = -1; 850 static int hf_rrlp_CommonGANSSAssistance_spare_bit2 = -1; 851 static int hf_rrlp_CommonGANSSAssistance_ionosphericModel = -1; 852 static int hf_rrlp_CommonGANSSAssistance_addIonosphericModel = -1; 853 static int hf_rrlp_CommonGANSSAssistance_earthOrientationParam = -1; 854 static int hf_rrlp_GANSSAssistance_realTimeIntegrity = -1; 855 static int hf_rrlp_GANSSAssistance_differentialCorrections = -1; 856 static int hf_rrlp_GANSSAssistance_almanac = -1; 857 static int hf_rrlp_GANSSAssistance_referenceMeasurementInformation = -1; 858 static int hf_rrlp_GANSSAssistance_navigationModel = -1; 859 static int hf_rrlp_GANSSAssistance_timeModelGNSS_UTC = -1; 860 static int hf_rrlp_GANSSAssistance_timeModelGNSS_GNSS = -1; 861 static int hf_rrlp_GANSSAssistance_databitassistance = -1; 862 static int hf_rrlp_GANSSAssistance_ephemerisExtension = -1; 863 static int hf_rrlp_GANSSAssistance_ephemerisExtensionCheck = -1; 864 static int hf_rrlp_GANSSAssistance_addUTCmodel = -1; 865 static int hf_rrlp_GANSSAssistance_auxiliaryInformation = -1; 866 static int hf_rrlp_GANSSModelID_model1 = -1; 867 static int hf_rrlp_GANSSModelID_model2 = -1; 868 static int hf_rrlp_GANSSModelID_model3 = -1; 869 static int hf_rrlp_GANSSModelID_model4 = -1; 870 static int hf_rrlp_GANSSModelID_model5 = -1; 871 static int hf_rrlp_GANSSModelID_model6 = -1; 872 static int hf_rrlp_GANSSModelID_model7 = -1; 873 static int hf_rrlp_GANSSModelID_model8 = -1; 874 875 /*--- End of included file: packet-rrlp-hf.c ---*/ 876 #line 43 "./asn1/rrlp/packet-rrlp-template.c" 877 878 /* Initialize the subtree pointers */ 879 static gint ett_rrlp = -1; 880 881 /*--- Included file: packet-rrlp-ett.c ---*/ 882 #line 1 "./asn1/rrlp/packet-rrlp-ett.c" 883 static gint ett_rrlp_ExtensionContainer = -1; 884 static gint ett_rrlp_PrivateExtensionList = -1; 885 static gint ett_rrlp_PrivateExtension = -1; 886 static gint ett_rrlp_PCS_Extensions = -1; 887 static gint ett_rrlp_PDU = -1; 888 static gint ett_rrlp_RRLP_Component = -1; 889 static gint ett_rrlp_MsrPosition_Req = -1; 890 static gint ett_rrlp_MsrPosition_Rsp = -1; 891 static gint ett_rrlp_AssistanceData = -1; 892 static gint ett_rrlp_ProtocolError = -1; 893 static gint ett_rrlp_PosCapability_Req = -1; 894 static gint ett_rrlp_PosCapability_Rsp = -1; 895 static gint ett_rrlp_PositionInstruct = -1; 896 static gint ett_rrlp_MethodType = -1; 897 static gint ett_rrlp_AccuracyOpt = -1; 898 static gint ett_rrlp_ReferenceAssistData = -1; 899 static gint ett_rrlp_MsrAssistData = -1; 900 static gint ett_rrlp_SeqOfMsrAssistBTS = -1; 901 static gint ett_rrlp_MsrAssistBTS = -1; 902 static gint ett_rrlp_SystemInfoAssistData = -1; 903 static gint ett_rrlp_SeqOfSystemInfoAssistBTS = -1; 904 static gint ett_rrlp_SystemInfoAssistBTS = -1; 905 static gint ett_rrlp_AssistBTSData = -1; 906 static gint ett_rrlp_CalcAssistanceBTS = -1; 907 static gint ett_rrlp_ReferenceWGS84 = -1; 908 static gint ett_rrlp_MultipleSets = -1; 909 static gint ett_rrlp_ReferenceIdentity = -1; 910 static gint ett_rrlp_SeqOfReferenceIdentityType = -1; 911 static gint ett_rrlp_ReferenceIdentityType = -1; 912 static gint ett_rrlp_BSICAndCarrier = -1; 913 static gint ett_rrlp_CellIDAndLAC = -1; 914 static gint ett_rrlp_OTD_MeasureInfo = -1; 915 static gint ett_rrlp_SeqOfOTD_MsrElementRest = -1; 916 static gint ett_rrlp_OTD_MsrElementFirst = -1; 917 static gint ett_rrlp_SeqOfOTD_FirstSetMsrs = -1; 918 static gint ett_rrlp_OTD_MsrElementRest = -1; 919 static gint ett_rrlp_SeqOfOTD_MsrsOfOtherSets = -1; 920 static gint ett_rrlp_TOA_MeasurementsOfRef = -1; 921 static gint ett_rrlp_OTD_MsrsOfOtherSets = -1; 922 static gint ett_rrlp_OTD_Measurement = -1; 923 static gint ett_rrlp_OTD_MeasurementWithID = -1; 924 static gint ett_rrlp_EOTDQuality = -1; 925 static gint ett_rrlp_NeighborIdentity = -1; 926 static gint ett_rrlp_MultiFrameCarrier = -1; 927 static gint ett_rrlp_LocationInfo = -1; 928 static gint ett_rrlp_GPS_MeasureInfo = -1; 929 static gint ett_rrlp_SeqOfGPS_MsrSetElement = -1; 930 static gint ett_rrlp_GPS_MsrSetElement = -1; 931 static gint ett_rrlp_SeqOfGPS_MsrElement = -1; 932 static gint ett_rrlp_GPS_MsrElement = -1; 933 static gint ett_rrlp_LocationError = -1; 934 static gint ett_rrlp_AdditionalAssistanceData = -1; 935 static gint ett_rrlp_GPS_AssistData = -1; 936 static gint ett_rrlp_ControlHeader = -1; 937 static gint ett_rrlp_ReferenceTime = -1; 938 static gint ett_rrlp_GPSTime = -1; 939 static gint ett_rrlp_GPSTOWAssist = -1; 940 static gint ett_rrlp_GPSTOWAssistElement = -1; 941 static gint ett_rrlp_GSMTime = -1; 942 static gint ett_rrlp_RefLocation = -1; 943 static gint ett_rrlp_DGPSCorrections = -1; 944 static gint ett_rrlp_SeqOfSatElement = -1; 945 static gint ett_rrlp_SatElement = -1; 946 static gint ett_rrlp_NavigationModel = -1; 947 static gint ett_rrlp_SeqOfNavModelElement = -1; 948 static gint ett_rrlp_NavModelElement = -1; 949 static gint ett_rrlp_SatStatus = -1; 950 static gint ett_rrlp_UncompressedEphemeris = -1; 951 static gint ett_rrlp_EphemerisSubframe1Reserved = -1; 952 static gint ett_rrlp_IonosphericModel = -1; 953 static gint ett_rrlp_UTCModel = -1; 954 static gint ett_rrlp_Almanac = -1; 955 static gint ett_rrlp_SeqOfAlmanacElement = -1; 956 static gint ett_rrlp_AlmanacElement = -1; 957 static gint ett_rrlp_AcquisAssist = -1; 958 static gint ett_rrlp_SeqOfAcquisElement = -1; 959 static gint ett_rrlp_TimeRelation = -1; 960 static gint ett_rrlp_AcquisElement = -1; 961 static gint ett_rrlp_AddionalDopplerFields = -1; 962 static gint ett_rrlp_AddionalAngleFields = -1; 963 static gint ett_rrlp_SeqOf_BadSatelliteSet = -1; 964 static gint ett_rrlp_Rel98_MsrPosition_Req_Extension = -1; 965 static gint ett_rrlp_Rel98_AssistanceData_Extension = -1; 966 static gint ett_rrlp_Rel98_Ext_ExpOTD = -1; 967 static gint ett_rrlp_MsrAssistData_R98_ExpOTD = -1; 968 static gint ett_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD = -1; 969 static gint ett_rrlp_MsrAssistBTS_R98_ExpOTD = -1; 970 static gint ett_rrlp_SystemInfoAssistData_R98_ExpOTD = -1; 971 static gint ett_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD = -1; 972 static gint ett_rrlp_SystemInfoAssistBTS_R98_ExpOTD = -1; 973 static gint ett_rrlp_AssistBTSData_R98_ExpOTD = -1; 974 static gint ett_rrlp_GPSTimeAssistanceMeasurements = -1; 975 static gint ett_rrlp_Rel_98_MsrPosition_Rsp_Extension = -1; 976 static gint ett_rrlp_T_rel_98_Ext_MeasureInfo = -1; 977 static gint ett_rrlp_OTD_MeasureInfo_R98_Ext = -1; 978 static gint ett_rrlp_OTD_MsrElementFirst_R98_Ext = -1; 979 static gint ett_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext = -1; 980 static gint ett_rrlp_Rel_5_MsrPosition_Rsp_Extension = -1; 981 static gint ett_rrlp_Extended_reference = -1; 982 static gint ett_rrlp_Rel5_MsrPosition_Req_Extension = -1; 983 static gint ett_rrlp_Rel5_AssistanceData_Extension = -1; 984 static gint ett_rrlp_Rel_5_ProtocolError_Extension = -1; 985 static gint ett_rrlp_Rel7_MsrPosition_Req_Extension = -1; 986 static gint ett_rrlp_GANSSPositioningMethod = -1; 987 static gint ett_rrlp_GANSS_AssistData = -1; 988 static gint ett_rrlp_GANSS_ControlHeader = -1; 989 static gint ett_rrlp_GANSSCommonAssistData = -1; 990 static gint ett_rrlp_SeqOfGANSSGenericAssistDataElement = -1; 991 static gint ett_rrlp_GANSSGenericAssistDataElement = -1; 992 static gint ett_rrlp_GANSSReferenceTime = -1; 993 static gint ett_rrlp_GANSSRefTimeInfo = -1; 994 static gint ett_rrlp_GANSSReferenceTime_R10_Ext = -1; 995 static gint ett_rrlp_GANSSTOD_GSMTimeAssociation = -1; 996 static gint ett_rrlp_GANSSRefLocation = -1; 997 static gint ett_rrlp_GANSSIonosphericModel = -1; 998 static gint ett_rrlp_GANSSIonosphereModel = -1; 999 static gint ett_rrlp_GANSSIonoStormFlags = -1; 1000 static gint ett_rrlp_GANSSAddIonosphericModel = -1; 1001 static gint ett_rrlp_GANSSEarthOrientParam = -1; 1002 static gint ett_rrlp_SeqOfGANSSTimeModel = -1; 1003 static gint ett_rrlp_GANSSTimeModelElement = -1; 1004 static gint ett_rrlp_SeqOfGANSSTimeModel_R10_Ext = -1; 1005 static gint ett_rrlp_GANSSTimeModelElement_R10_Ext = -1; 1006 static gint ett_rrlp_GANSSDiffCorrections = -1; 1007 static gint ett_rrlp_SeqOfSgnTypeElement = -1; 1008 static gint ett_rrlp_SgnTypeElement = -1; 1009 static gint ett_rrlp_SeqOfDGANSSSgnElement = -1; 1010 static gint ett_rrlp_DGANSSSgnElement = -1; 1011 static gint ett_rrlp_GANSSNavModel = -1; 1012 static gint ett_rrlp_SeqOfGANSSSatelliteElement = -1; 1013 static gint ett_rrlp_GANSSSatelliteElement = -1; 1014 static gint ett_rrlp_GANSSOrbitModel = -1; 1015 static gint ett_rrlp_NavModel_KeplerianSet = -1; 1016 static gint ett_rrlp_NavModel_NAVKeplerianSet = -1; 1017 static gint ett_rrlp_NavModel_CNAVKeplerianSet = -1; 1018 static gint ett_rrlp_NavModel_GLONASSecef = -1; 1019 static gint ett_rrlp_NavModel_SBASecef = -1; 1020 static gint ett_rrlp_GANSSClockModel = -1; 1021 static gint ett_rrlp_SeqOfStandardClockModelElement = -1; 1022 static gint ett_rrlp_StandardClockModelElement = -1; 1023 static gint ett_rrlp_NAVclockModel = -1; 1024 static gint ett_rrlp_CNAVclockModel = -1; 1025 static gint ett_rrlp_GLONASSclockModel = -1; 1026 static gint ett_rrlp_SBASclockModel = -1; 1027 static gint ett_rrlp_GANSSRealTimeIntegrity = -1; 1028 static gint ett_rrlp_SeqOfBadSignalElement = -1; 1029 static gint ett_rrlp_BadSignalElement = -1; 1030 static gint ett_rrlp_GANSSDataBitAssist = -1; 1031 static gint ett_rrlp_SeqOfGanssDataBitsElement = -1; 1032 static gint ett_rrlp_GanssDataBitsElement = -1; 1033 static gint ett_rrlp_Seq_OfGANSSDataBitsSgn = -1; 1034 static gint ett_rrlp_GANSSDataBitsSgnElement = -1; 1035 static gint ett_rrlp_SeqOf_GANSSDataBits = -1; 1036 static gint ett_rrlp_GANSSRefMeasurementAssist = -1; 1037 static gint ett_rrlp_SeqOfGANSSRefMeasurementElement = -1; 1038 static gint ett_rrlp_GANSSRefMeasurementElement = -1; 1039 static gint ett_rrlp_AdditionalDopplerFields = -1; 1040 static gint ett_rrlp_GANSSRefMeasurementAssist_R10_Ext = -1; 1041 static gint ett_rrlp_GANSSRefMeasurement_R10_Ext_Element = -1; 1042 static gint ett_rrlp_GANSSAlmanacModel = -1; 1043 static gint ett_rrlp_SeqOfGANSSAlmanacElement = -1; 1044 static gint ett_rrlp_GANSSAlmanacElement = -1; 1045 static gint ett_rrlp_Almanac_KeplerianSet = -1; 1046 static gint ett_rrlp_Almanac_NAVKeplerianSet = -1; 1047 static gint ett_rrlp_Almanac_ReducedKeplerianSet = -1; 1048 static gint ett_rrlp_Almanac_MidiAlmanacSet = -1; 1049 static gint ett_rrlp_Almanac_GlonassAlmanacSet = -1; 1050 static gint ett_rrlp_Almanac_ECEFsbasAlmanacSet = -1; 1051 static gint ett_rrlp_GANSSAlmanacModel_R10_Ext = -1; 1052 static gint ett_rrlp_GANSSUTCModel = -1; 1053 static gint ett_rrlp_GANSSEphemerisExtension = -1; 1054 static gint ett_rrlp_GANSSEphemerisExtensionHeader = -1; 1055 static gint ett_rrlp_GANSSEphemerisExtensionTime = -1; 1056 static gint ett_rrlp_ReferenceNavModel = -1; 1057 static gint ett_rrlp_SeqOfGANSSRefOrbit = -1; 1058 static gint ett_rrlp_GANSSReferenceOrbit = -1; 1059 static gint ett_rrlp_GANSSEphemerisDeltaMatrix = -1; 1060 static gint ett_rrlp_GANSSEphemerisDeltaEpoch = -1; 1061 static gint ett_rrlp_GANSSDeltaEpochHeader = -1; 1062 static gint ett_rrlp_GANSSDeltaElementList = -1; 1063 static gint ett_rrlp_GANSSEphemerisDeltaBitSizes = -1; 1064 static gint ett_rrlp_GANSSEphemerisDeltaScales = -1; 1065 static gint ett_rrlp_GANSSEphemerisExtensionCheck = -1; 1066 static gint ett_rrlp_GANSSSatEventsInfo = -1; 1067 static gint ett_rrlp_GANSSAddUTCModel = -1; 1068 static gint ett_rrlp_UTCmodelSet2 = -1; 1069 static gint ett_rrlp_UTCmodelSet3 = -1; 1070 static gint ett_rrlp_UTCmodelSet4 = -1; 1071 static gint ett_rrlp_GANSSAuxiliaryInformation = -1; 1072 static gint ett_rrlp_GANSS_ID1 = -1; 1073 static gint ett_rrlp_GANSS_ID1_element = -1; 1074 static gint ett_rrlp_GANSS_ID3 = -1; 1075 static gint ett_rrlp_GANSS_ID3_element = -1; 1076 static gint ett_rrlp_GANSSDiffCorrectionsValidityPeriod = -1; 1077 static gint ett_rrlp_DGANSSExtensionSgnTypeElement = -1; 1078 static gint ett_rrlp_SeqOfDGANSSExtensionSgnElement = -1; 1079 static gint ett_rrlp_DGANSSExtensionSgnElement = -1; 1080 static gint ett_rrlp_Add_GPS_AssistData = -1; 1081 static gint ett_rrlp_Add_GPS_ControlHeader = -1; 1082 static gint ett_rrlp_GPSClockModel = -1; 1083 static gint ett_rrlp_GPSEphemerisExtension = -1; 1084 static gint ett_rrlp_GPSEphemerisExtensionHeader = -1; 1085 static gint ett_rrlp_GPSEphemerisExtensionTime = -1; 1086 static gint ett_rrlp_SeqOfGPSRefOrbit = -1; 1087 static gint ett_rrlp_GPSReferenceOrbit = -1; 1088 static gint ett_rrlp_GPSEphemerisDeltaMatrix = -1; 1089 static gint ett_rrlp_GPSEphemerisDeltaEpoch = -1; 1090 static gint ett_rrlp_GPSDeltaEpochHeader = -1; 1091 static gint ett_rrlp_GPSDeltaElementList = -1; 1092 static gint ett_rrlp_GPSEphemerisDeltaBitSizes = -1; 1093 static gint ett_rrlp_GPSEphemerisDeltaScales = -1; 1094 static gint ett_rrlp_GPSEphemerisExtensionCheck = -1; 1095 static gint ett_rrlp_GPSSatEventsInfo = -1; 1096 static gint ett_rrlp_DGPSCorrectionsValidityPeriod = -1; 1097 static gint ett_rrlp_DGPSExtensionSatElement = -1; 1098 static gint ett_rrlp_GPSReferenceTime_R10_Ext = -1; 1099 static gint ett_rrlp_GPSAcquisAssist_R10_Ext = -1; 1100 static gint ett_rrlp_GPSAcquisAssist_R10_Ext_Element = -1; 1101 static gint ett_rrlp_GPSAlmanac_R10_Ext = -1; 1102 static gint ett_rrlp_Rel_7_MsrPosition_Rsp_Extension = -1; 1103 static gint ett_rrlp_GANSSLocationInfo = -1; 1104 static gint ett_rrlp_PositionData = -1; 1105 static gint ett_rrlp_ReferenceFrame = -1; 1106 static gint ett_rrlp_GANSSMeasureInfo = -1; 1107 static gint ett_rrlp_SeqOfGANSS_MsrSetElement = -1; 1108 static gint ett_rrlp_GANSS_MsrSetElement = -1; 1109 static gint ett_rrlp_SeqOfGANSS_MsrElement = -1; 1110 static gint ett_rrlp_GANSS_MsrElement = -1; 1111 static gint ett_rrlp_SeqOfGANSS_SgnTypeElement = -1; 1112 static gint ett_rrlp_GANSS_SgnTypeElement = -1; 1113 static gint ett_rrlp_SeqOfGANSS_SgnElement = -1; 1114 static gint ett_rrlp_GANSS_SgnElement = -1; 1115 static gint ett_rrlp_Rel7_AssistanceData_Extension = -1; 1116 static gint ett_rrlp_PosCapabilities = -1; 1117 static gint ett_rrlp_NonGANSSPositionMethods = -1; 1118 static gint ett_rrlp_GANSSPositionMethods = -1; 1119 static gint ett_rrlp_GANSSPositionMethod = -1; 1120 static gint ett_rrlp_GANSSPositioningMethodTypes = -1; 1121 static gint ett_rrlp_GANSSSignals = -1; 1122 static gint ett_rrlp_SBASID = -1; 1123 static gint ett_rrlp_MultipleMeasurementSets = -1; 1124 static gint ett_rrlp_AssistanceSupported = -1; 1125 static gint ett_rrlp_GPSAssistance = -1; 1126 static gint ett_rrlp_GANSSAssistanceSet = -1; 1127 static gint ett_rrlp_CommonGANSSAssistance = -1; 1128 static gint ett_rrlp_SpecificGANSSAssistance = -1; 1129 static gint ett_rrlp_GANSSAssistanceForOneGANSS = -1; 1130 static gint ett_rrlp_GANSSAssistance = -1; 1131 static gint ett_rrlp_GANSSAdditionalAssistanceChoices = -1; 1132 static gint ett_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS = -1; 1133 static gint ett_rrlp_GANSSModelID = -1; 1134 static gint ett_rrlp_AssistanceNeeded = -1; 1135 1136 /*--- End of included file: packet-rrlp-ett.c ---*/ 1137 #line 47 "./asn1/rrlp/packet-rrlp-template.c" 1138 1139 /* Include constants */ 1140 1141 /*--- Included file: packet-rrlp-val.h ---*/ 1142 #line 1 "./asn1/rrlp/packet-rrlp-val.h" 1143 #define maxNumOfPrivateExtensions 10 1144 #define maxExt_GeographicalInformation 20 1145 #define maxGPSAssistanceData 40 1146 #define maxGANSSAssistanceData 40 1147 1148 /*--- End of included file: packet-rrlp-val.h ---*/ 1149 #line 50 "./asn1/rrlp/packet-rrlp-template.c" 1150 1151 1152 1153 /*--- Included file: packet-rrlp-fn.c ---*/ 1154 #line 1 "./asn1/rrlp/packet-rrlp-fn.c" 1155 1156 1157 static int 1158 dissect_rrlp_OBJECT_IDENTIFIER(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1159 offset = dissect_per_object_identifier(tvb, offset, actx, tree, hf_index, NULL); 1160 1161 return offset; 1162 } 1163 1164 1165 1166 static int 1167 dissect_rrlp_T_extType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1168 offset = dissect_per_open_type(tvb, offset, actx, tree, hf_index, NULL); 1169 1170 return offset; 1171 } 1172 1173 1174 static const per_sequence_t PrivateExtension_sequence[] = { 1175 { &hf_rrlp_extId , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OBJECT_IDENTIFIER }, 1176 { &hf_rrlp_extType , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_T_extType }, 1177 { NULL, 0, 0, NULL } 1178 }; 1179 1180 static int 1181 dissect_rrlp_PrivateExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1182 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1183 ett_rrlp_PrivateExtension, PrivateExtension_sequence); 1184 1185 return offset; 1186 } 1187 1188 1189 static const per_sequence_t PrivateExtensionList_sequence_of[1] = { 1190 { &hf_rrlp_PrivateExtensionList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_PrivateExtension }, 1191 }; 1192 1193 static int 1194 dissect_rrlp_PrivateExtensionList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1195 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 1196 ett_rrlp_PrivateExtensionList, PrivateExtensionList_sequence_of, 1197 1, maxNumOfPrivateExtensions, FALSE); 1198 1199 return offset; 1200 } 1201 1202 1203 static const per_sequence_t PCS_Extensions_sequence[] = { 1204 { NULL, ASN1_EXTENSION_ROOT, 0, NULL } 1205 }; 1206 1207 static int 1208 dissect_rrlp_PCS_Extensions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1209 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1210 ett_rrlp_PCS_Extensions, PCS_Extensions_sequence); 1211 1212 return offset; 1213 } 1214 1215 1216 static const per_sequence_t ExtensionContainer_sequence[] = { 1217 { &hf_rrlp_privateExtensionList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_PrivateExtensionList }, 1218 { &hf_rrlp_pcs_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_PCS_Extensions }, 1219 { NULL, 0, 0, NULL } 1220 }; 1221 1222 static int 1223 dissect_rrlp_ExtensionContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1224 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1225 ett_rrlp_ExtensionContainer, ExtensionContainer_sequence); 1226 1227 return offset; 1228 } 1229 1230 1231 1232 static int 1233 dissect_rrlp_Ext_GeographicalInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1234 #line 33 "./asn1/rrlp/rrlp.cnf" 1235 1236 tvbuff_t *parameter_tvb = NULL; 1237 1238 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 1239 1, maxExt_GeographicalInformation, FALSE, ¶meter_tvb); 1240 1241 1242 if(parameter_tvb) 1243 dissect_geographical_description(parameter_tvb, actx->pinfo, tree); 1244 1245 1246 return offset; 1247 } 1248 1249 1250 1251 static int 1252 dissect_rrlp_VelocityEstimate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1253 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 1254 4, 7, FALSE, NULL); 1255 1256 return offset; 1257 } 1258 1259 1260 1261 static int 1262 dissect_rrlp_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1263 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1264 0U, 7U, NULL, FALSE); 1265 1266 return offset; 1267 } 1268 1269 1270 1271 static int 1272 dissect_rrlp_Accuracy(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1273 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1274 0U, 127U, NULL, FALSE); 1275 1276 return offset; 1277 } 1278 1279 1280 static const per_sequence_t AccuracyOpt_sequence[] = { 1281 { &hf_rrlp_accuracy , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_Accuracy }, 1282 { NULL, 0, 0, NULL } 1283 }; 1284 1285 static int 1286 dissect_rrlp_AccuracyOpt(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1287 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1288 ett_rrlp_AccuracyOpt, AccuracyOpt_sequence); 1289 1290 return offset; 1291 } 1292 1293 1294 static const value_string rrlp_MethodType_vals[] = { 1295 { 0, "msAssisted" }, 1296 { 1, "msBased" }, 1297 { 2, "msBasedPref" }, 1298 { 3, "msAssistedPref" }, 1299 { 0, NULL } 1300 }; 1301 1302 static const per_choice_t MethodType_choice[] = { 1303 { 0, &hf_rrlp_msAssisted , ASN1_NO_EXTENSIONS , dissect_rrlp_AccuracyOpt }, 1304 { 1, &hf_rrlp_msBased , ASN1_NO_EXTENSIONS , dissect_rrlp_Accuracy }, 1305 { 2, &hf_rrlp_msBasedPref , ASN1_NO_EXTENSIONS , dissect_rrlp_Accuracy }, 1306 { 3, &hf_rrlp_msAssistedPref , ASN1_NO_EXTENSIONS , dissect_rrlp_Accuracy }, 1307 { 0, NULL, 0, NULL } 1308 }; 1309 1310 static int 1311 dissect_rrlp_MethodType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1312 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 1313 ett_rrlp_MethodType, MethodType_choice, 1314 NULL); 1315 1316 return offset; 1317 } 1318 1319 1320 static const value_string rrlp_PositionMethod_vals[] = { 1321 { 0, "eotd" }, 1322 { 1, "gps" }, 1323 { 2, "gpsOrEOTD" }, 1324 { 0, NULL } 1325 }; 1326 1327 1328 static int 1329 dissect_rrlp_PositionMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1330 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 1331 3, NULL, FALSE, 0, NULL); 1332 1333 return offset; 1334 } 1335 1336 1337 1338 static int 1339 dissect_rrlp_MeasureResponseTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1340 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1341 0U, 7U, NULL, FALSE); 1342 1343 return offset; 1344 } 1345 1346 1347 static const value_string rrlp_UseMultipleSets_vals[] = { 1348 { 0, "multipleSets" }, 1349 { 1, "oneSet" }, 1350 { 0, NULL } 1351 }; 1352 1353 1354 static int 1355 dissect_rrlp_UseMultipleSets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1356 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 1357 2, NULL, FALSE, 0, NULL); 1358 1359 return offset; 1360 } 1361 1362 1363 static const value_string rrlp_EnvironmentCharacter_vals[] = { 1364 { 0, "badArea" }, 1365 { 1, "notBadArea" }, 1366 { 2, "mixedArea" }, 1367 { 0, NULL } 1368 }; 1369 1370 1371 static int 1372 dissect_rrlp_EnvironmentCharacter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1373 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 1374 3, NULL, TRUE, 0, NULL); 1375 1376 return offset; 1377 } 1378 1379 1380 static const per_sequence_t PositionInstruct_sequence[] = { 1381 { &hf_rrlp_methodType , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MethodType }, 1382 { &hf_rrlp_positionMethod , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_PositionMethod }, 1383 { &hf_rrlp_measureResponseTime, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MeasureResponseTime }, 1384 { &hf_rrlp_useMultipleSets, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_UseMultipleSets }, 1385 { &hf_rrlp_environmentCharacter, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_EnvironmentCharacter }, 1386 { NULL, 0, 0, NULL } 1387 }; 1388 1389 static int 1390 dissect_rrlp_PositionInstruct(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1391 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1392 ett_rrlp_PositionInstruct, PositionInstruct_sequence); 1393 1394 return offset; 1395 } 1396 1397 1398 1399 static int 1400 dissect_rrlp_BCCHCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1401 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1402 0U, 1023U, NULL, FALSE); 1403 1404 return offset; 1405 } 1406 1407 1408 1409 static int 1410 dissect_rrlp_BSIC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1411 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1412 0U, 63U, NULL, FALSE); 1413 1414 return offset; 1415 } 1416 1417 1418 static const value_string rrlp_TimeSlotScheme_vals[] = { 1419 { 0, "equalLength" }, 1420 { 1, "variousLength" }, 1421 { 0, NULL } 1422 }; 1423 1424 1425 static int 1426 dissect_rrlp_TimeSlotScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1427 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 1428 2, NULL, FALSE, 0, NULL); 1429 1430 return offset; 1431 } 1432 1433 1434 1435 static int 1436 dissect_rrlp_BTSPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1437 offset = dissect_rrlp_Ext_GeographicalInformation(tvb, offset, actx, tree, hf_index); 1438 1439 return offset; 1440 } 1441 1442 1443 static const per_sequence_t ReferenceAssistData_sequence[] = { 1444 { &hf_rrlp_bcchCarrier , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier }, 1445 { &hf_rrlp_bsic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC }, 1446 { &hf_rrlp_timeSlotScheme , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlotScheme }, 1447 { &hf_rrlp_btsPosition , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_BTSPosition }, 1448 { NULL, 0, 0, NULL } 1449 }; 1450 1451 static int 1452 dissect_rrlp_ReferenceAssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1453 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1454 ett_rrlp_ReferenceAssistData, ReferenceAssistData_sequence); 1455 1456 return offset; 1457 } 1458 1459 1460 1461 static int 1462 dissect_rrlp_MultiFrameOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1463 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1464 0U, 51U, NULL, FALSE); 1465 1466 return offset; 1467 } 1468 1469 1470 1471 static int 1472 dissect_rrlp_RoughRTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1473 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1474 0U, 1250U, NULL, FALSE); 1475 1476 return offset; 1477 } 1478 1479 1480 1481 static int 1482 dissect_rrlp_FineRTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1483 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1484 0U, 255U, NULL, FALSE); 1485 1486 return offset; 1487 } 1488 1489 1490 1491 static int 1492 dissect_rrlp_RelDistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1493 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1494 -200000, 200000U, NULL, FALSE); 1495 1496 return offset; 1497 } 1498 1499 1500 1501 static int 1502 dissect_rrlp_RelativeAlt(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1503 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1504 -4000, 4000U, NULL, FALSE); 1505 1506 return offset; 1507 } 1508 1509 1510 static const per_sequence_t ReferenceWGS84_sequence[] = { 1511 { &hf_rrlp_relativeNorth , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_RelDistance }, 1512 { &hf_rrlp_relativeEast , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_RelDistance }, 1513 { &hf_rrlp_relativeAlt , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_RelativeAlt }, 1514 { NULL, 0, 0, NULL } 1515 }; 1516 1517 static int 1518 dissect_rrlp_ReferenceWGS84(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1519 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1520 ett_rrlp_ReferenceWGS84, ReferenceWGS84_sequence); 1521 1522 return offset; 1523 } 1524 1525 1526 static const per_sequence_t CalcAssistanceBTS_sequence[] = { 1527 { &hf_rrlp_fineRTD , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_FineRTD }, 1528 { &hf_rrlp_referenceWGS84 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ReferenceWGS84 }, 1529 { NULL, 0, 0, NULL } 1530 }; 1531 1532 static int 1533 dissect_rrlp_CalcAssistanceBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1534 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1535 ett_rrlp_CalcAssistanceBTS, CalcAssistanceBTS_sequence); 1536 1537 return offset; 1538 } 1539 1540 1541 static const per_sequence_t MsrAssistBTS_sequence[] = { 1542 { &hf_rrlp_bcchCarrier , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier }, 1543 { &hf_rrlp_bsic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC }, 1544 { &hf_rrlp_multiFrameOffset, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MultiFrameOffset }, 1545 { &hf_rrlp_timeSlotScheme , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlotScheme }, 1546 { &hf_rrlp_roughRTD , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_RoughRTD }, 1547 { &hf_rrlp_calcAssistanceBTS, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_CalcAssistanceBTS }, 1548 { NULL, 0, 0, NULL } 1549 }; 1550 1551 static int 1552 dissect_rrlp_MsrAssistBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1553 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1554 ett_rrlp_MsrAssistBTS, MsrAssistBTS_sequence); 1555 1556 return offset; 1557 } 1558 1559 1560 static const per_sequence_t SeqOfMsrAssistBTS_sequence_of[1] = { 1561 { &hf_rrlp_SeqOfMsrAssistBTS_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MsrAssistBTS }, 1562 }; 1563 1564 static int 1565 dissect_rrlp_SeqOfMsrAssistBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1566 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 1567 ett_rrlp_SeqOfMsrAssistBTS, SeqOfMsrAssistBTS_sequence_of, 1568 1, 15, FALSE); 1569 1570 return offset; 1571 } 1572 1573 1574 static const per_sequence_t MsrAssistData_sequence[] = { 1575 { &hf_rrlp_msrAssistList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfMsrAssistBTS }, 1576 { NULL, 0, 0, NULL } 1577 }; 1578 1579 static int 1580 dissect_rrlp_MsrAssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1581 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1582 ett_rrlp_MsrAssistData, MsrAssistData_sequence); 1583 1584 return offset; 1585 } 1586 1587 1588 1589 static int 1590 dissect_rrlp_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1591 offset = dissect_per_null(tvb, offset, actx, tree, hf_index); 1592 1593 return offset; 1594 } 1595 1596 1597 static const per_sequence_t AssistBTSData_sequence[] = { 1598 { &hf_rrlp_bsic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC }, 1599 { &hf_rrlp_multiFrameOffset, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MultiFrameOffset }, 1600 { &hf_rrlp_timeSlotScheme , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlotScheme }, 1601 { &hf_rrlp_roughRTD , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_RoughRTD }, 1602 { &hf_rrlp_calcAssistanceBTS, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_CalcAssistanceBTS }, 1603 { NULL, 0, 0, NULL } 1604 }; 1605 1606 static int 1607 dissect_rrlp_AssistBTSData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1608 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1609 ett_rrlp_AssistBTSData, AssistBTSData_sequence); 1610 1611 return offset; 1612 } 1613 1614 1615 static const value_string rrlp_SystemInfoAssistBTS_vals[] = { 1616 { 0, "notPresent" }, 1617 { 1, "present" }, 1618 { 0, NULL } 1619 }; 1620 1621 static const per_choice_t SystemInfoAssistBTS_choice[] = { 1622 { 0, &hf_rrlp_notPresent , ASN1_NO_EXTENSIONS , dissect_rrlp_NULL }, 1623 { 1, &hf_rrlp_present , ASN1_NO_EXTENSIONS , dissect_rrlp_AssistBTSData }, 1624 { 0, NULL, 0, NULL } 1625 }; 1626 1627 static int 1628 dissect_rrlp_SystemInfoAssistBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1629 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 1630 ett_rrlp_SystemInfoAssistBTS, SystemInfoAssistBTS_choice, 1631 NULL); 1632 1633 return offset; 1634 } 1635 1636 1637 static const per_sequence_t SeqOfSystemInfoAssistBTS_sequence_of[1] = { 1638 { &hf_rrlp_SeqOfSystemInfoAssistBTS_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SystemInfoAssistBTS }, 1639 }; 1640 1641 static int 1642 dissect_rrlp_SeqOfSystemInfoAssistBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1643 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 1644 ett_rrlp_SeqOfSystemInfoAssistBTS, SeqOfSystemInfoAssistBTS_sequence_of, 1645 1, 32, FALSE); 1646 1647 return offset; 1648 } 1649 1650 1651 static const per_sequence_t SystemInfoAssistData_sequence[] = { 1652 { &hf_rrlp_systemInfoAssistList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfSystemInfoAssistBTS }, 1653 { NULL, 0, 0, NULL } 1654 }; 1655 1656 static int 1657 dissect_rrlp_SystemInfoAssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1658 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1659 ett_rrlp_SystemInfoAssistData, SystemInfoAssistData_sequence); 1660 1661 return offset; 1662 } 1663 1664 1665 1666 static int 1667 dissect_rrlp_GPSTOW23b(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1668 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1669 0U, 7559999U, NULL, FALSE); 1670 1671 return offset; 1672 } 1673 1674 1675 1676 static int 1677 dissect_rrlp_GPSWeek(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1678 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1679 0U, 1023U, NULL, FALSE); 1680 1681 return offset; 1682 } 1683 1684 1685 static const per_sequence_t GPSTime_sequence[] = { 1686 { &hf_rrlp_gpsTOW23b , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTOW23b }, 1687 { &hf_rrlp_gpsWeek , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSWeek }, 1688 { NULL, 0, 0, NULL } 1689 }; 1690 1691 static int 1692 dissect_rrlp_GPSTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1693 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1694 ett_rrlp_GPSTime, GPSTime_sequence); 1695 1696 return offset; 1697 } 1698 1699 1700 1701 static int 1702 dissect_rrlp_FrameNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1703 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1704 0U, 2097151U, NULL, FALSE); 1705 1706 return offset; 1707 } 1708 1709 1710 1711 static int 1712 dissect_rrlp_TimeSlot(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1713 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1714 0U, 7U, NULL, FALSE); 1715 1716 return offset; 1717 } 1718 1719 1720 1721 static int 1722 dissect_rrlp_BitNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1723 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1724 0U, 156U, NULL, FALSE); 1725 1726 return offset; 1727 } 1728 1729 1730 static const per_sequence_t GSMTime_sequence[] = { 1731 { &hf_rrlp_bcchCarrier , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier }, 1732 { &hf_rrlp_bsic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC }, 1733 { &hf_rrlp_frameNumber , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_FrameNumber }, 1734 { &hf_rrlp_timeSlot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlot }, 1735 { &hf_rrlp_bitNumber , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BitNumber }, 1736 { NULL, 0, 0, NULL } 1737 }; 1738 1739 static int 1740 dissect_rrlp_GSMTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1741 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1742 ett_rrlp_GSMTime, GSMTime_sequence); 1743 1744 return offset; 1745 } 1746 1747 1748 1749 static int 1750 dissect_rrlp_SatelliteID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1751 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1752 0U, 63U, NULL, FALSE); 1753 1754 return offset; 1755 } 1756 1757 1758 1759 static int 1760 dissect_rrlp_TLMWord(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1761 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1762 0U, 16383U, NULL, FALSE); 1763 1764 return offset; 1765 } 1766 1767 1768 1769 static int 1770 dissect_rrlp_AntiSpoofFlag(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1771 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1772 0U, 1U, NULL, FALSE); 1773 1774 return offset; 1775 } 1776 1777 1778 1779 static int 1780 dissect_rrlp_AlertFlag(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1781 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1782 0U, 1U, NULL, FALSE); 1783 1784 return offset; 1785 } 1786 1787 1788 1789 static int 1790 dissect_rrlp_TLMReservedBits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1791 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1792 0U, 3U, NULL, FALSE); 1793 1794 return offset; 1795 } 1796 1797 1798 static const per_sequence_t GPSTOWAssistElement_sequence[] = { 1799 { &hf_rrlp_satelliteID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 1800 { &hf_rrlp_tlmWord , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TLMWord }, 1801 { &hf_rrlp_antiSpoof , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_AntiSpoofFlag }, 1802 { &hf_rrlp_alert , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_AlertFlag }, 1803 { &hf_rrlp_tlmRsvdBits , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TLMReservedBits }, 1804 { NULL, 0, 0, NULL } 1805 }; 1806 1807 static int 1808 dissect_rrlp_GPSTOWAssistElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1809 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1810 ett_rrlp_GPSTOWAssistElement, GPSTOWAssistElement_sequence); 1811 1812 return offset; 1813 } 1814 1815 1816 static const per_sequence_t GPSTOWAssist_sequence_of[1] = { 1817 { &hf_rrlp_GPSTOWAssist_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTOWAssistElement }, 1818 }; 1819 1820 static int 1821 dissect_rrlp_GPSTOWAssist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1822 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 1823 ett_rrlp_GPSTOWAssist, GPSTOWAssist_sequence_of, 1824 1, 12, FALSE); 1825 1826 return offset; 1827 } 1828 1829 1830 static const per_sequence_t ReferenceTime_sequence[] = { 1831 { &hf_rrlp_gpsTime , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTime }, 1832 { &hf_rrlp_gsmTime , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GSMTime }, 1833 { &hf_rrlp_gpsTowAssist , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GPSTOWAssist }, 1834 { NULL, 0, 0, NULL } 1835 }; 1836 1837 static int 1838 dissect_rrlp_ReferenceTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1839 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1840 ett_rrlp_ReferenceTime, ReferenceTime_sequence); 1841 1842 return offset; 1843 } 1844 1845 1846 static const per_sequence_t RefLocation_sequence[] = { 1847 { &hf_rrlp_threeDLocation , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_Ext_GeographicalInformation }, 1848 { NULL, 0, 0, NULL } 1849 }; 1850 1851 static int 1852 dissect_rrlp_RefLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1853 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1854 ett_rrlp_RefLocation, RefLocation_sequence); 1855 1856 return offset; 1857 } 1858 1859 1860 1861 static int 1862 dissect_rrlp_INTEGER_0_604799(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1863 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1864 0U, 604799U, NULL, FALSE); 1865 1866 return offset; 1867 } 1868 1869 1870 1871 static int 1872 dissect_rrlp_INTEGER_0_239(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1873 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1874 0U, 239U, NULL, FALSE); 1875 1876 return offset; 1877 } 1878 1879 1880 1881 static int 1882 dissect_rrlp_INTEGER_0_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1883 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1884 0U, 3U, NULL, FALSE); 1885 1886 return offset; 1887 } 1888 1889 1890 1891 static int 1892 dissect_rrlp_INTEGER_M2047_2047(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1893 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1894 -2047, 2047U, NULL, FALSE); 1895 1896 return offset; 1897 } 1898 1899 1900 1901 static int 1902 dissect_rrlp_INTEGER_M127_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1903 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1904 -127, 127U, NULL, FALSE); 1905 1906 return offset; 1907 } 1908 1909 1910 1911 static int 1912 dissect_rrlp_INTEGER_M7_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1913 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1914 -7, 7U, NULL, FALSE); 1915 1916 return offset; 1917 } 1918 1919 1920 static const per_sequence_t SatElement_sequence[] = { 1921 { &hf_rrlp_satelliteID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 1922 { &hf_rrlp_iode , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_239 }, 1923 { &hf_rrlp_udre , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 }, 1924 { &hf_rrlp_pseudoRangeCor , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2047_2047 }, 1925 { &hf_rrlp_rangeRateCor , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M127_127 }, 1926 { &hf_rrlp_deltaPseudoRangeCor2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M127_127 }, 1927 { &hf_rrlp_deltaRangeRateCor2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M7_7 }, 1928 { &hf_rrlp_deltaPseudoRangeCor3, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M127_127 }, 1929 { &hf_rrlp_deltaRangeRateCor3, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M7_7 }, 1930 { NULL, 0, 0, NULL } 1931 }; 1932 1933 static int 1934 dissect_rrlp_SatElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1935 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1936 ett_rrlp_SatElement, SatElement_sequence); 1937 1938 return offset; 1939 } 1940 1941 1942 static const per_sequence_t SeqOfSatElement_sequence_of[1] = { 1943 { &hf_rrlp_SeqOfSatElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatElement }, 1944 }; 1945 1946 static int 1947 dissect_rrlp_SeqOfSatElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1948 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 1949 ett_rrlp_SeqOfSatElement, SeqOfSatElement_sequence_of, 1950 1, 16, FALSE); 1951 1952 return offset; 1953 } 1954 1955 1956 static const per_sequence_t DGPSCorrections_sequence[] = { 1957 { &hf_rrlp_gpsTOW_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_604799 }, 1958 { &hf_rrlp_status , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 1959 { &hf_rrlp_satList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfSatElement }, 1960 { NULL, 0, 0, NULL } 1961 }; 1962 1963 static int 1964 dissect_rrlp_DGPSCorrections(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1965 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 1966 ett_rrlp_DGPSCorrections, DGPSCorrections_sequence); 1967 1968 return offset; 1969 } 1970 1971 1972 1973 static int 1974 dissect_rrlp_INTEGER_0_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1975 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1976 0U, 15U, NULL, FALSE); 1977 1978 return offset; 1979 } 1980 1981 1982 1983 static int 1984 dissect_rrlp_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1985 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1986 0U, 63U, NULL, FALSE); 1987 1988 return offset; 1989 } 1990 1991 1992 1993 static int 1994 dissect_rrlp_INTEGER_0_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 1995 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1996 0U, 1023U, NULL, FALSE); 1997 1998 return offset; 1999 } 2000 2001 2002 2003 static int 2004 dissect_rrlp_INTEGER_0_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2005 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2006 0U, 1U, NULL, FALSE); 2007 2008 return offset; 2009 } 2010 2011 2012 2013 static int 2014 dissect_rrlp_INTEGER_0_8388607(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2015 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2016 0U, 8388607U, NULL, FALSE); 2017 2018 return offset; 2019 } 2020 2021 2022 2023 static int 2024 dissect_rrlp_INTEGER_0_16777215(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2025 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2026 0U, 16777215U, NULL, FALSE); 2027 2028 return offset; 2029 } 2030 2031 2032 2033 static int 2034 dissect_rrlp_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2035 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2036 0U, 65535U, NULL, FALSE); 2037 2038 return offset; 2039 } 2040 2041 2042 static const per_sequence_t EphemerisSubframe1Reserved_sequence[] = { 2043 { &hf_rrlp_reserved1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_8388607 }, 2044 { &hf_rrlp_reserved2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 }, 2045 { &hf_rrlp_reserved3 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 }, 2046 { &hf_rrlp_reserved4 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 }, 2047 { NULL, 0, 0, NULL } 2048 }; 2049 2050 static int 2051 dissect_rrlp_EphemerisSubframe1Reserved(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2052 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2053 ett_rrlp_EphemerisSubframe1Reserved, EphemerisSubframe1Reserved_sequence); 2054 2055 return offset; 2056 } 2057 2058 2059 2060 static int 2061 dissect_rrlp_INTEGER_M128_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2062 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2063 -128, 127U, NULL, FALSE); 2064 2065 return offset; 2066 } 2067 2068 2069 2070 static int 2071 dissect_rrlp_INTEGER_0_37799(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2072 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2073 0U, 37799U, NULL, FALSE); 2074 2075 return offset; 2076 } 2077 2078 2079 2080 static int 2081 dissect_rrlp_INTEGER_M32768_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2082 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2083 -32768, 32767U, NULL, FALSE); 2084 2085 return offset; 2086 } 2087 2088 2089 2090 static int 2091 dissect_rrlp_INTEGER_M2097152_2097151(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2092 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2093 -2097152, 2097151U, NULL, FALSE); 2094 2095 return offset; 2096 } 2097 2098 2099 2100 static int 2101 dissect_rrlp_INTEGER_M2147483648_2147483647(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2102 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2103 G_MININT32, 2147483647U, NULL, FALSE); 2104 2105 return offset; 2106 } 2107 2108 2109 2110 static int 2111 dissect_rrlp_INTEGER_0_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2112 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2113 0U, 4294967295U, NULL, FALSE); 2114 2115 return offset; 2116 } 2117 2118 2119 2120 static int 2121 dissect_rrlp_INTEGER_0_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2122 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2123 0U, 31U, NULL, FALSE); 2124 2125 return offset; 2126 } 2127 2128 2129 2130 static int 2131 dissect_rrlp_INTEGER_M8388608_8388607(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2132 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2133 -8388608, 8388607U, NULL, FALSE); 2134 2135 return offset; 2136 } 2137 2138 2139 2140 static int 2141 dissect_rrlp_INTEGER_M8192_8191(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2142 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2143 -8192, 8191U, NULL, FALSE); 2144 2145 return offset; 2146 } 2147 2148 2149 static const per_sequence_t UncompressedEphemeris_sequence[] = { 2150 { &hf_rrlp_ephemCodeOnL2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 }, 2151 { &hf_rrlp_ephemURA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 }, 2152 { &hf_rrlp_ephemSVhealth , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 }, 2153 { &hf_rrlp_ephemIODC , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1023 }, 2154 { &hf_rrlp_ephemL2Pflag , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 2155 { &hf_rrlp_ephemSF1Rsvd , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_EphemerisSubframe1Reserved }, 2156 { &hf_rrlp_ephemTgd , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2157 { &hf_rrlp_ephemToc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 }, 2158 { &hf_rrlp_ephemAF2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2159 { &hf_rrlp_ephemAF1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2160 { &hf_rrlp_ephemAF0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 }, 2161 { &hf_rrlp_ephemCrs , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2162 { &hf_rrlp_ephemDeltaN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2163 { &hf_rrlp_ephemM0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 2164 { &hf_rrlp_ephemCuc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2165 { &hf_rrlp_ephemE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 }, 2166 { &hf_rrlp_ephemCus , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2167 { &hf_rrlp_ephemAPowerHalf, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 }, 2168 { &hf_rrlp_ephemToe , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 }, 2169 { &hf_rrlp_ephemFitFlag , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 2170 { &hf_rrlp_ephemAODA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 }, 2171 { &hf_rrlp_ephemCic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2172 { &hf_rrlp_ephemOmegaA0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 2173 { &hf_rrlp_ephemCis , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2174 { &hf_rrlp_ephemI0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 2175 { &hf_rrlp_ephemCrc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2176 { &hf_rrlp_ephemW , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 2177 { &hf_rrlp_ephemOmegaADot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 2178 { &hf_rrlp_ephemIDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 }, 2179 { NULL, 0, 0, NULL } 2180 }; 2181 2182 static int 2183 dissect_rrlp_UncompressedEphemeris(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2184 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2185 ett_rrlp_UncompressedEphemeris, UncompressedEphemeris_sequence); 2186 2187 return offset; 2188 } 2189 2190 2191 static const value_string rrlp_SatStatus_vals[] = { 2192 { 0, "newSatelliteAndModelUC" }, 2193 { 1, "oldSatelliteAndModel" }, 2194 { 2, "newNaviModelUC" }, 2195 { 0, NULL } 2196 }; 2197 2198 static const per_choice_t SatStatus_choice[] = { 2199 { 0, &hf_rrlp_newSatelliteAndModelUC, ASN1_EXTENSION_ROOT , dissect_rrlp_UncompressedEphemeris }, 2200 { 1, &hf_rrlp_oldSatelliteAndModel, ASN1_EXTENSION_ROOT , dissect_rrlp_NULL }, 2201 { 2, &hf_rrlp_newNaviModelUC , ASN1_EXTENSION_ROOT , dissect_rrlp_UncompressedEphemeris }, 2202 { 0, NULL, 0, NULL } 2203 }; 2204 2205 static int 2206 dissect_rrlp_SatStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2207 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 2208 ett_rrlp_SatStatus, SatStatus_choice, 2209 NULL); 2210 2211 return offset; 2212 } 2213 2214 2215 static const per_sequence_t NavModelElement_sequence[] = { 2216 { &hf_rrlp_satelliteID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 2217 { &hf_rrlp_satStatus , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatStatus }, 2218 { NULL, 0, 0, NULL } 2219 }; 2220 2221 static int 2222 dissect_rrlp_NavModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2223 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2224 ett_rrlp_NavModelElement, NavModelElement_sequence); 2225 2226 return offset; 2227 } 2228 2229 2230 static const per_sequence_t SeqOfNavModelElement_sequence_of[1] = { 2231 { &hf_rrlp_SeqOfNavModelElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_NavModelElement }, 2232 }; 2233 2234 static int 2235 dissect_rrlp_SeqOfNavModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2236 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 2237 ett_rrlp_SeqOfNavModelElement, SeqOfNavModelElement_sequence_of, 2238 1, 16, FALSE); 2239 2240 return offset; 2241 } 2242 2243 2244 static const per_sequence_t NavigationModel_sequence[] = { 2245 { &hf_rrlp_navModelList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfNavModelElement }, 2246 { NULL, 0, 0, NULL } 2247 }; 2248 2249 static int 2250 dissect_rrlp_NavigationModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2251 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2252 ett_rrlp_NavigationModel, NavigationModel_sequence); 2253 2254 return offset; 2255 } 2256 2257 2258 static const per_sequence_t IonosphericModel_sequence[] = { 2259 { &hf_rrlp_alfa0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2260 { &hf_rrlp_alfa1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2261 { &hf_rrlp_alfa2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2262 { &hf_rrlp_alfa3 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2263 { &hf_rrlp_beta0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2264 { &hf_rrlp_beta1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2265 { &hf_rrlp_beta2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2266 { &hf_rrlp_beta3 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2267 { NULL, 0, 0, NULL } 2268 }; 2269 2270 static int 2271 dissect_rrlp_IonosphericModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2272 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2273 ett_rrlp_IonosphericModel, IonosphericModel_sequence); 2274 2275 return offset; 2276 } 2277 2278 2279 2280 static int 2281 dissect_rrlp_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2282 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2283 0U, 255U, NULL, FALSE); 2284 2285 return offset; 2286 } 2287 2288 2289 static const per_sequence_t UTCModel_sequence[] = { 2290 { &hf_rrlp_utcA1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 2291 { &hf_rrlp_utcA0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 2292 { &hf_rrlp_utcTot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 2293 { &hf_rrlp_utcWNt , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 2294 { &hf_rrlp_utcDeltaTls , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2295 { &hf_rrlp_utcWNlsf , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 2296 { &hf_rrlp_utcDN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2297 { &hf_rrlp_utcDeltaTlsf , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 2298 { NULL, 0, 0, NULL } 2299 }; 2300 2301 static int 2302 dissect_rrlp_UTCModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2303 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2304 ett_rrlp_UTCModel, UTCModel_sequence); 2305 2306 return offset; 2307 } 2308 2309 2310 2311 static int 2312 dissect_rrlp_INTEGER_M1024_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2313 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2314 -1024, 1023U, NULL, FALSE); 2315 2316 return offset; 2317 } 2318 2319 2320 static const per_sequence_t AlmanacElement_sequence[] = { 2321 { &hf_rrlp_satelliteID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 2322 { &hf_rrlp_almanacE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 }, 2323 { &hf_rrlp_alamanacToa , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 2324 { &hf_rrlp_almanacKsii , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2325 { &hf_rrlp_almanacOmegaDot, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 2326 { &hf_rrlp_almanacSVhealth, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 2327 { &hf_rrlp_almanacAPowerHalf, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 }, 2328 { &hf_rrlp_almanacOmega0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 2329 { &hf_rrlp_almanacW , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 2330 { &hf_rrlp_almanacM0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 2331 { &hf_rrlp_almanacAF0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 2332 { &hf_rrlp_almanacAF1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 2333 { NULL, 0, 0, NULL } 2334 }; 2335 2336 static int 2337 dissect_rrlp_AlmanacElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2338 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2339 ett_rrlp_AlmanacElement, AlmanacElement_sequence); 2340 2341 return offset; 2342 } 2343 2344 2345 static const per_sequence_t SeqOfAlmanacElement_sequence_of[1] = { 2346 { &hf_rrlp_SeqOfAlmanacElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_AlmanacElement }, 2347 }; 2348 2349 static int 2350 dissect_rrlp_SeqOfAlmanacElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2351 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 2352 ett_rrlp_SeqOfAlmanacElement, SeqOfAlmanacElement_sequence_of, 2353 1, 64, FALSE); 2354 2355 return offset; 2356 } 2357 2358 2359 static const per_sequence_t Almanac_sequence[] = { 2360 { &hf_rrlp_alamanacWNa , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 2361 { &hf_rrlp_almanacList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfAlmanacElement }, 2362 { NULL, 0, 0, NULL } 2363 }; 2364 2365 static int 2366 dissect_rrlp_Almanac(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2367 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2368 ett_rrlp_Almanac, Almanac_sequence); 2369 2370 return offset; 2371 } 2372 2373 2374 static const per_sequence_t TimeRelation_sequence[] = { 2375 { &hf_rrlp_gpsTOW_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTOW23b }, 2376 { &hf_rrlp_gsmTime , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GSMTime }, 2377 { NULL, 0, 0, NULL } 2378 }; 2379 2380 static int 2381 dissect_rrlp_TimeRelation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2382 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2383 ett_rrlp_TimeRelation, TimeRelation_sequence); 2384 2385 return offset; 2386 } 2387 2388 2389 2390 static int 2391 dissect_rrlp_INTEGER_M2048_2047(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2392 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2393 -2048, 2047U, NULL, FALSE); 2394 2395 return offset; 2396 } 2397 2398 2399 static const per_sequence_t AddionalDopplerFields_sequence[] = { 2400 { &hf_rrlp_doppler1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 }, 2401 { &hf_rrlp_dopplerUncertainty, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 2402 { NULL, 0, 0, NULL } 2403 }; 2404 2405 static int 2406 dissect_rrlp_AddionalDopplerFields(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2407 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2408 ett_rrlp_AddionalDopplerFields, AddionalDopplerFields_sequence); 2409 2410 return offset; 2411 } 2412 2413 2414 2415 static int 2416 dissect_rrlp_INTEGER_0_1022(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2417 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2418 0U, 1022U, NULL, FALSE); 2419 2420 return offset; 2421 } 2422 2423 2424 2425 static int 2426 dissect_rrlp_INTEGER_0_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2427 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2428 0U, 19U, NULL, FALSE); 2429 2430 return offset; 2431 } 2432 2433 2434 static const per_sequence_t AddionalAngleFields_sequence[] = { 2435 { &hf_rrlp_azimuth , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 }, 2436 { &hf_rrlp_elevation , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 2437 { NULL, 0, 0, NULL } 2438 }; 2439 2440 static int 2441 dissect_rrlp_AddionalAngleFields(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2442 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2443 ett_rrlp_AddionalAngleFields, AddionalAngleFields_sequence); 2444 2445 return offset; 2446 } 2447 2448 2449 static const per_sequence_t AcquisElement_sequence[] = { 2450 { &hf_rrlp_svid , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 2451 { &hf_rrlp_doppler0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2048_2047 }, 2452 { &hf_rrlp_addionalDoppler, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_AddionalDopplerFields }, 2453 { &hf_rrlp_codePhase , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1022 }, 2454 { &hf_rrlp_intCodePhase , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_19 }, 2455 { &hf_rrlp_gpsBitNumber , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 }, 2456 { &hf_rrlp_codePhaseSearchWindow, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 }, 2457 { &hf_rrlp_addionalAngle , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_AddionalAngleFields }, 2458 { NULL, 0, 0, NULL } 2459 }; 2460 2461 static int 2462 dissect_rrlp_AcquisElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2463 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2464 ett_rrlp_AcquisElement, AcquisElement_sequence); 2465 2466 return offset; 2467 } 2468 2469 2470 static const per_sequence_t SeqOfAcquisElement_sequence_of[1] = { 2471 { &hf_rrlp_SeqOfAcquisElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_AcquisElement }, 2472 }; 2473 2474 static int 2475 dissect_rrlp_SeqOfAcquisElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2476 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 2477 ett_rrlp_SeqOfAcquisElement, SeqOfAcquisElement_sequence_of, 2478 1, 16, FALSE); 2479 2480 return offset; 2481 } 2482 2483 2484 static const per_sequence_t AcquisAssist_sequence[] = { 2485 { &hf_rrlp_timeRelation , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeRelation }, 2486 { &hf_rrlp_acquisList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfAcquisElement }, 2487 { NULL, 0, 0, NULL } 2488 }; 2489 2490 static int 2491 dissect_rrlp_AcquisAssist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2492 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2493 ett_rrlp_AcquisAssist, AcquisAssist_sequence); 2494 2495 return offset; 2496 } 2497 2498 2499 static const per_sequence_t SeqOf_BadSatelliteSet_sequence_of[1] = { 2500 { &hf_rrlp_SeqOf_BadSatelliteSet_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 2501 }; 2502 2503 static int 2504 dissect_rrlp_SeqOf_BadSatelliteSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2505 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 2506 ett_rrlp_SeqOf_BadSatelliteSet, SeqOf_BadSatelliteSet_sequence_of, 2507 1, 16, FALSE); 2508 2509 return offset; 2510 } 2511 2512 2513 static const per_sequence_t ControlHeader_sequence[] = { 2514 { &hf_rrlp_referenceTime , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_ReferenceTime }, 2515 { &hf_rrlp_refLocation , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_RefLocation }, 2516 { &hf_rrlp_dgpsCorrections, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_DGPSCorrections }, 2517 { &hf_rrlp_navigationModel, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_NavigationModel }, 2518 { &hf_rrlp_ionosphericModel, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_IonosphericModel }, 2519 { &hf_rrlp_utcModel , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_UTCModel }, 2520 { &hf_rrlp_almanac , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_Almanac }, 2521 { &hf_rrlp_acquisAssist , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_AcquisAssist }, 2522 { &hf_rrlp_realTimeIntegrity, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_SeqOf_BadSatelliteSet }, 2523 { NULL, 0, 0, NULL } 2524 }; 2525 2526 static int 2527 dissect_rrlp_ControlHeader(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2528 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2529 ett_rrlp_ControlHeader, ControlHeader_sequence); 2530 2531 return offset; 2532 } 2533 2534 2535 static const per_sequence_t GPS_AssistData_sequence[] = { 2536 { &hf_rrlp_controlHeader , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ControlHeader }, 2537 { NULL, 0, 0, NULL } 2538 }; 2539 2540 static int 2541 dissect_rrlp_GPS_AssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2542 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2543 ett_rrlp_GPS_AssistData, GPS_AssistData_sequence); 2544 2545 return offset; 2546 } 2547 2548 2549 2550 static int 2551 dissect_rrlp_ExpectedOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2552 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2553 0U, 1250U, NULL, FALSE); 2554 2555 return offset; 2556 } 2557 2558 2559 2560 static int 2561 dissect_rrlp_ExpOTDUncertainty(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2562 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2563 0U, 7U, NULL, FALSE); 2564 2565 return offset; 2566 } 2567 2568 2569 static const per_sequence_t MsrAssistBTS_R98_ExpOTD_sequence[] = { 2570 { &hf_rrlp_expectedOTD , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ExpectedOTD }, 2571 { &hf_rrlp_expOTDUncertainty, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ExpOTDUncertainty }, 2572 { NULL, 0, 0, NULL } 2573 }; 2574 2575 static int 2576 dissect_rrlp_MsrAssistBTS_R98_ExpOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2577 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2578 ett_rrlp_MsrAssistBTS_R98_ExpOTD, MsrAssistBTS_R98_ExpOTD_sequence); 2579 2580 return offset; 2581 } 2582 2583 2584 static const per_sequence_t SeqOfMsrAssistBTS_R98_ExpOTD_sequence_of[1] = { 2585 { &hf_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MsrAssistBTS_R98_ExpOTD }, 2586 }; 2587 2588 static int 2589 dissect_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2590 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 2591 ett_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD, SeqOfMsrAssistBTS_R98_ExpOTD_sequence_of, 2592 1, 15, FALSE); 2593 2594 return offset; 2595 } 2596 2597 2598 static const per_sequence_t MsrAssistData_R98_ExpOTD_sequence[] = { 2599 { &hf_rrlp_msrAssistList_R98_ExpOTD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD }, 2600 { NULL, 0, 0, NULL } 2601 }; 2602 2603 static int 2604 dissect_rrlp_MsrAssistData_R98_ExpOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2605 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2606 ett_rrlp_MsrAssistData_R98_ExpOTD, MsrAssistData_R98_ExpOTD_sequence); 2607 2608 return offset; 2609 } 2610 2611 2612 static const per_sequence_t AssistBTSData_R98_ExpOTD_sequence[] = { 2613 { &hf_rrlp_expectedOTD , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ExpectedOTD }, 2614 { &hf_rrlp_expOTDuncertainty, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ExpOTDUncertainty }, 2615 { NULL, 0, 0, NULL } 2616 }; 2617 2618 static int 2619 dissect_rrlp_AssistBTSData_R98_ExpOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2620 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2621 ett_rrlp_AssistBTSData_R98_ExpOTD, AssistBTSData_R98_ExpOTD_sequence); 2622 2623 return offset; 2624 } 2625 2626 2627 static const value_string rrlp_SystemInfoAssistBTS_R98_ExpOTD_vals[] = { 2628 { 0, "notPresent" }, 2629 { 1, "present" }, 2630 { 0, NULL } 2631 }; 2632 2633 static const per_choice_t SystemInfoAssistBTS_R98_ExpOTD_choice[] = { 2634 { 0, &hf_rrlp_notPresent , ASN1_NO_EXTENSIONS , dissect_rrlp_NULL }, 2635 { 1, &hf_rrlp_present_01 , ASN1_NO_EXTENSIONS , dissect_rrlp_AssistBTSData_R98_ExpOTD }, 2636 { 0, NULL, 0, NULL } 2637 }; 2638 2639 static int 2640 dissect_rrlp_SystemInfoAssistBTS_R98_ExpOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2641 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 2642 ett_rrlp_SystemInfoAssistBTS_R98_ExpOTD, SystemInfoAssistBTS_R98_ExpOTD_choice, 2643 NULL); 2644 2645 return offset; 2646 } 2647 2648 2649 static const per_sequence_t SeqOfSystemInfoAssistBTS_R98_ExpOTD_sequence_of[1] = { 2650 { &hf_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SystemInfoAssistBTS_R98_ExpOTD }, 2651 }; 2652 2653 static int 2654 dissect_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2655 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 2656 ett_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD, SeqOfSystemInfoAssistBTS_R98_ExpOTD_sequence_of, 2657 1, 32, FALSE); 2658 2659 return offset; 2660 } 2661 2662 2663 static const per_sequence_t SystemInfoAssistData_R98_ExpOTD_sequence[] = { 2664 { &hf_rrlp_systemInfoAssistListR98_ExpOTD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD }, 2665 { NULL, 0, 0, NULL } 2666 }; 2667 2668 static int 2669 dissect_rrlp_SystemInfoAssistData_R98_ExpOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2670 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2671 ett_rrlp_SystemInfoAssistData_R98_ExpOTD, SystemInfoAssistData_R98_ExpOTD_sequence); 2672 2673 return offset; 2674 } 2675 2676 2677 static const per_sequence_t Rel98_Ext_ExpOTD_sequence[] = { 2678 { &hf_rrlp_msrAssistData_R98_ExpOTD, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_MsrAssistData_R98_ExpOTD }, 2679 { &hf_rrlp_systemInfoAssistData_R98_ExpOTD, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_SystemInfoAssistData_R98_ExpOTD }, 2680 { NULL, 0, 0, NULL } 2681 }; 2682 2683 static int 2684 dissect_rrlp_Rel98_Ext_ExpOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2685 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2686 ett_rrlp_Rel98_Ext_ExpOTD, Rel98_Ext_ExpOTD_sequence); 2687 2688 return offset; 2689 } 2690 2691 2692 2693 static int 2694 dissect_rrlp_GPSReferenceTimeUncertainty(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2695 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2696 0U, 127U, NULL, FALSE); 2697 2698 return offset; 2699 } 2700 2701 2702 static const per_sequence_t Rel98_MsrPosition_Req_Extension_sequence[] = { 2703 { &hf_rrlp_rel98_Ext_ExpOTD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_Rel98_Ext_ExpOTD }, 2704 { &hf_rrlp_gpsTimeAssistanceMeasurementRequest, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_NULL }, 2705 { &hf_rrlp_gpsReferenceTimeUncertainty, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GPSReferenceTimeUncertainty }, 2706 { NULL, 0, 0, NULL } 2707 }; 2708 2709 static int 2710 dissect_rrlp_Rel98_MsrPosition_Req_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2711 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2712 ett_rrlp_Rel98_MsrPosition_Req_Extension, Rel98_MsrPosition_Req_Extension_sequence); 2713 2714 return offset; 2715 } 2716 2717 2718 2719 static int 2720 dissect_rrlp_INTEGER_0_262143(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2721 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2722 0U, 262143U, NULL, FALSE); 2723 2724 return offset; 2725 } 2726 2727 2728 static const per_sequence_t Extended_reference_sequence[] = { 2729 { &hf_rrlp_smlc_code , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 }, 2730 { &hf_rrlp_transaction_ID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_262143 }, 2731 { NULL, 0, 0, NULL } 2732 }; 2733 2734 static int 2735 dissect_rrlp_Extended_reference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2736 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2737 ett_rrlp_Extended_reference, Extended_reference_sequence); 2738 2739 return offset; 2740 } 2741 2742 2743 static const per_sequence_t Rel5_MsrPosition_Req_Extension_sequence[] = { 2744 { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_Extended_reference }, 2745 { NULL, 0, 0, NULL } 2746 }; 2747 2748 static int 2749 dissect_rrlp_Rel5_MsrPosition_Req_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2750 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2751 ett_rrlp_Rel5_MsrPosition_Req_Extension, Rel5_MsrPosition_Req_Extension_sequence); 2752 2753 return offset; 2754 } 2755 2756 2757 static int * const GANSSPositioningMethod_bits[] = { 2758 &hf_rrlp_GANSSPositioningMethod_gps, 2759 &hf_rrlp_GANSSPositioningMethod_galileo, 2760 &hf_rrlp_GANSSPositioningMethod_sbas, 2761 &hf_rrlp_GANSSPositioningMethod_modernizedGPS, 2762 &hf_rrlp_GANSSPositioningMethod_qzss, 2763 &hf_rrlp_GANSSPositioningMethod_glonass, 2764 NULL 2765 }; 2766 2767 static int 2768 dissect_rrlp_GANSSPositioningMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2769 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 2770 2, 16, FALSE, GANSSPositioningMethod_bits, 6, NULL, NULL); 2771 2772 return offset; 2773 } 2774 2775 2776 2777 static int 2778 dissect_rrlp_INTEGER_0_8191(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2779 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2780 0U, 8191U, NULL, FALSE); 2781 2782 return offset; 2783 } 2784 2785 2786 2787 static int 2788 dissect_rrlp_GANSSTOD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2789 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2790 0U, 86399U, NULL, FALSE); 2791 2792 return offset; 2793 } 2794 2795 2796 2797 static int 2798 dissect_rrlp_GANSSTODUncertainty(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2799 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2800 0U, 127U, NULL, FALSE); 2801 2802 return offset; 2803 } 2804 2805 2806 static const per_sequence_t GANSSRefTimeInfo_sequence[] = { 2807 { &hf_rrlp_ganssDay , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_8191 }, 2808 { &hf_rrlp_ganssTOD , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSTOD }, 2809 { &hf_rrlp_ganssTODUncertainty, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GANSSTODUncertainty }, 2810 { &hf_rrlp_ganssTimeID , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_7 }, 2811 { NULL, 0, 0, NULL } 2812 }; 2813 2814 static int 2815 dissect_rrlp_GANSSRefTimeInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2816 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2817 ett_rrlp_GANSSRefTimeInfo, GANSSRefTimeInfo_sequence); 2818 2819 return offset; 2820 } 2821 2822 2823 2824 static int 2825 dissect_rrlp_FrameDrift(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2826 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2827 -64, 63U, NULL, FALSE); 2828 2829 return offset; 2830 } 2831 2832 2833 static const per_sequence_t GANSSTOD_GSMTimeAssociation_sequence[] = { 2834 { &hf_rrlp_bcchCarrier , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier }, 2835 { &hf_rrlp_bsic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC }, 2836 { &hf_rrlp_frameNumber , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_FrameNumber }, 2837 { &hf_rrlp_timeSlot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlot }, 2838 { &hf_rrlp_bitNumber , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BitNumber }, 2839 { &hf_rrlp_frameDrift , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_FrameDrift }, 2840 { NULL, 0, 0, NULL } 2841 }; 2842 2843 static int 2844 dissect_rrlp_GANSSTOD_GSMTimeAssociation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2845 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2846 ett_rrlp_GANSSTOD_GSMTimeAssociation, GANSSTOD_GSMTimeAssociation_sequence); 2847 2848 return offset; 2849 } 2850 2851 2852 static const per_sequence_t GANSSReferenceTime_sequence[] = { 2853 { &hf_rrlp_ganssRefTimeInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSRefTimeInfo }, 2854 { &hf_rrlp_ganssTOD_GSMTimeAssociation, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GANSSTOD_GSMTimeAssociation }, 2855 { NULL, 0, 0, NULL } 2856 }; 2857 2858 static int 2859 dissect_rrlp_GANSSReferenceTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2860 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2861 ett_rrlp_GANSSReferenceTime, GANSSReferenceTime_sequence); 2862 2863 return offset; 2864 } 2865 2866 2867 static const per_sequence_t GANSSRefLocation_sequence[] = { 2868 { &hf_rrlp_threeDLocation , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_Ext_GeographicalInformation }, 2869 { NULL, 0, 0, NULL } 2870 }; 2871 2872 static int 2873 dissect_rrlp_GANSSRefLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2874 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2875 ett_rrlp_GANSSRefLocation, GANSSRefLocation_sequence); 2876 2877 return offset; 2878 } 2879 2880 2881 2882 static int 2883 dissect_rrlp_INTEGER_0_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2884 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2885 0U, 4095U, NULL, FALSE); 2886 2887 return offset; 2888 } 2889 2890 2891 static const per_sequence_t GANSSIonosphereModel_sequence[] = { 2892 { &hf_rrlp_ai0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4095 }, 2893 { &hf_rrlp_ai1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4095 }, 2894 { &hf_rrlp_ai2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4095 }, 2895 { NULL, 0, 0, NULL } 2896 }; 2897 2898 static int 2899 dissect_rrlp_GANSSIonosphereModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2900 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2901 ett_rrlp_GANSSIonosphereModel, GANSSIonosphereModel_sequence); 2902 2903 return offset; 2904 } 2905 2906 2907 static const per_sequence_t GANSSIonoStormFlags_sequence[] = { 2908 { &hf_rrlp_ionoStormFlag1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 2909 { &hf_rrlp_ionoStormFlag2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 2910 { &hf_rrlp_ionoStormFlag3 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 2911 { &hf_rrlp_ionoStormFlag4 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 2912 { &hf_rrlp_ionoStormFlag5 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 2913 { NULL, 0, 0, NULL } 2914 }; 2915 2916 static int 2917 dissect_rrlp_GANSSIonoStormFlags(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2918 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2919 ett_rrlp_GANSSIonoStormFlags, GANSSIonoStormFlags_sequence); 2920 2921 return offset; 2922 } 2923 2924 2925 static const per_sequence_t GANSSIonosphericModel_sequence[] = { 2926 { &hf_rrlp_ganssIonoModel , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSIonosphereModel }, 2927 { &hf_rrlp_ganssIonoStormFlags, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSIonoStormFlags }, 2928 { NULL, 0, 0, NULL } 2929 }; 2930 2931 static int 2932 dissect_rrlp_GANSSIonosphericModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2933 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2934 ett_rrlp_GANSSIonosphericModel, GANSSIonosphericModel_sequence); 2935 2936 return offset; 2937 } 2938 2939 2940 2941 static int 2942 dissect_rrlp_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2943 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 2944 2, 2, FALSE, NULL, 0, NULL, NULL); 2945 2946 return offset; 2947 } 2948 2949 2950 static const per_sequence_t GANSSAddIonosphericModel_sequence[] = { 2951 { &hf_rrlp_dataID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_2 }, 2952 { &hf_rrlp_ionoModel , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_IonosphericModel }, 2953 { NULL, 0, 0, NULL } 2954 }; 2955 2956 static int 2957 dissect_rrlp_GANSSAddIonosphericModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2958 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 2959 ett_rrlp_GANSSAddIonosphericModel, GANSSAddIonosphericModel_sequence); 2960 2961 return offset; 2962 } 2963 2964 2965 2966 static int 2967 dissect_rrlp_INTEGER_M1048576_1048575(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2968 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2969 -1048576, 1048575U, NULL, FALSE); 2970 2971 return offset; 2972 } 2973 2974 2975 2976 static int 2977 dissect_rrlp_INTEGER_M16384_16383(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2978 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2979 -16384, 16383U, NULL, FALSE); 2980 2981 return offset; 2982 } 2983 2984 2985 2986 static int 2987 dissect_rrlp_INTEGER_M1073741824_1073741823(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2988 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2989 -1073741824, 1073741823U, NULL, FALSE); 2990 2991 return offset; 2992 } 2993 2994 2995 2996 static int 2997 dissect_rrlp_INTEGER_M262144_262143(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 2998 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 2999 -262144, 262143U, NULL, FALSE); 3000 3001 return offset; 3002 } 3003 3004 3005 static const per_sequence_t GANSSEarthOrientParam_sequence[] = { 3006 { &hf_rrlp_teop , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 }, 3007 { &hf_rrlp_pmX , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 }, 3008 { &hf_rrlp_pmXdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 }, 3009 { &hf_rrlp_pmY , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 }, 3010 { &hf_rrlp_pmYdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 }, 3011 { &hf_rrlp_deltaUT1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1073741824_1073741823 }, 3012 { &hf_rrlp_deltaUT1dot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M262144_262143 }, 3013 { NULL, 0, 0, NULL } 3014 }; 3015 3016 static int 3017 dissect_rrlp_GANSSEarthOrientParam(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3018 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3019 ett_rrlp_GANSSEarthOrientParam, GANSSEarthOrientParam_sequence); 3020 3021 return offset; 3022 } 3023 3024 3025 static const per_sequence_t GANSSReferenceTime_R10_Ext_sequence[] = { 3026 { &hf_rrlp_ganssDayCycleNumber, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 3027 { NULL, 0, 0, NULL } 3028 }; 3029 3030 static int 3031 dissect_rrlp_GANSSReferenceTime_R10_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3032 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3033 ett_rrlp_GANSSReferenceTime_R10_Ext, GANSSReferenceTime_R10_Ext_sequence); 3034 3035 return offset; 3036 } 3037 3038 3039 static const per_sequence_t GANSSCommonAssistData_sequence[] = { 3040 { &hf_rrlp_ganssReferenceTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSReferenceTime }, 3041 { &hf_rrlp_ganssRefLocation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSRefLocation }, 3042 { &hf_rrlp_ganssIonosphericModel, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSIonosphericModel }, 3043 { &hf_rrlp_ganssAddIonosphericModel, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSAddIonosphericModel }, 3044 { &hf_rrlp_ganssEarthOrientParam, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSEarthOrientParam }, 3045 { &hf_rrlp_ganssReferenceTime_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSReferenceTime_R10_Ext }, 3046 { NULL, 0, 0, NULL } 3047 }; 3048 3049 static int 3050 dissect_rrlp_GANSSCommonAssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3051 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3052 ett_rrlp_GANSSCommonAssistData, GANSSCommonAssistData_sequence); 3053 3054 return offset; 3055 } 3056 3057 3058 3059 static int 3060 dissect_rrlp_TA0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3061 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3062 G_MININT32, 2147483647U, NULL, FALSE); 3063 3064 return offset; 3065 } 3066 3067 3068 3069 static int 3070 dissect_rrlp_TA1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3071 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3072 -8388608, 8388607U, NULL, FALSE); 3073 3074 return offset; 3075 } 3076 3077 3078 3079 static int 3080 dissect_rrlp_TA2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3081 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3082 -64, 63U, NULL, FALSE); 3083 3084 return offset; 3085 } 3086 3087 3088 static const per_sequence_t GANSSTimeModelElement_sequence[] = { 3089 { &hf_rrlp_ganssTimeModelRefTime, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 }, 3090 { &hf_rrlp_tA0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_TA0 }, 3091 { &hf_rrlp_tA1 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_TA1 }, 3092 { &hf_rrlp_tA2 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_TA2 }, 3093 { &hf_rrlp_gnssTOID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 3094 { &hf_rrlp_weekNumber , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_8191 }, 3095 { NULL, 0, 0, NULL } 3096 }; 3097 3098 static int 3099 dissect_rrlp_GANSSTimeModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3100 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3101 ett_rrlp_GANSSTimeModelElement, GANSSTimeModelElement_sequence); 3102 3103 return offset; 3104 } 3105 3106 3107 static const per_sequence_t SeqOfGANSSTimeModel_sequence_of[1] = { 3108 { &hf_rrlp_SeqOfGANSSTimeModel_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSTimeModelElement }, 3109 }; 3110 3111 static int 3112 dissect_rrlp_SeqOfGANSSTimeModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3113 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3114 ett_rrlp_SeqOfGANSSTimeModel, SeqOfGANSSTimeModel_sequence_of, 3115 1, 7, FALSE); 3116 3117 return offset; 3118 } 3119 3120 3121 3122 static int 3123 dissect_rrlp_INTEGER_0_119(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3124 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3125 0U, 119U, NULL, FALSE); 3126 3127 return offset; 3128 } 3129 3130 3131 3132 static int 3133 dissect_rrlp_GANSSSignalID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3134 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3135 0U, 7U, NULL, FALSE); 3136 3137 return offset; 3138 } 3139 3140 3141 3142 static int 3143 dissect_rrlp_SVID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3144 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3145 0U, 63U, NULL, FALSE); 3146 3147 return offset; 3148 } 3149 3150 3151 static const per_sequence_t DGANSSSgnElement_sequence[] = { 3152 { &hf_rrlp_svID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 3153 { &hf_rrlp_iod , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1023 }, 3154 { &hf_rrlp_udre , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 }, 3155 { &hf_rrlp_pseudoRangeCor , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2047_2047 }, 3156 { &hf_rrlp_rangeRateCor , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M127_127 }, 3157 { NULL, 0, 0, NULL } 3158 }; 3159 3160 static int 3161 dissect_rrlp_DGANSSSgnElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3162 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3163 ett_rrlp_DGANSSSgnElement, DGANSSSgnElement_sequence); 3164 3165 return offset; 3166 } 3167 3168 3169 static const per_sequence_t SeqOfDGANSSSgnElement_sequence_of[1] = { 3170 { &hf_rrlp_SeqOfDGANSSSgnElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_DGANSSSgnElement }, 3171 }; 3172 3173 static int 3174 dissect_rrlp_SeqOfDGANSSSgnElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3175 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3176 ett_rrlp_SeqOfDGANSSSgnElement, SeqOfDGANSSSgnElement_sequence_of, 3177 1, 16, FALSE); 3178 3179 return offset; 3180 } 3181 3182 3183 static const per_sequence_t SgnTypeElement_sequence[] = { 3184 { &hf_rrlp_ganssSignalID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID }, 3185 { &hf_rrlp_ganssStatusHealth, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 3186 { &hf_rrlp_dganssSgnList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfDGANSSSgnElement }, 3187 { NULL, 0, 0, NULL } 3188 }; 3189 3190 static int 3191 dissect_rrlp_SgnTypeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3192 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3193 ett_rrlp_SgnTypeElement, SgnTypeElement_sequence); 3194 3195 return offset; 3196 } 3197 3198 3199 static const per_sequence_t SeqOfSgnTypeElement_sequence_of[1] = { 3200 { &hf_rrlp_SeqOfSgnTypeElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SgnTypeElement }, 3201 }; 3202 3203 static int 3204 dissect_rrlp_SeqOfSgnTypeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3205 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3206 ett_rrlp_SeqOfSgnTypeElement, SeqOfSgnTypeElement_sequence_of, 3207 1, 3, FALSE); 3208 3209 return offset; 3210 } 3211 3212 3213 static const per_sequence_t GANSSDiffCorrections_sequence[] = { 3214 { &hf_rrlp_dganssRefTime , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_119 }, 3215 { &hf_rrlp_sgnTypeList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfSgnTypeElement }, 3216 { NULL, 0, 0, NULL } 3217 }; 3218 3219 static int 3220 dissect_rrlp_GANSSDiffCorrections(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3221 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3222 ett_rrlp_GANSSDiffCorrections, GANSSDiffCorrections_sequence); 3223 3224 return offset; 3225 } 3226 3227 3228 3229 static int 3230 dissect_rrlp_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3231 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 3232 5, 5, FALSE, NULL, 0, NULL, NULL); 3233 3234 return offset; 3235 } 3236 3237 3238 3239 static int 3240 dissect_rrlp_INTEGER_0_16383(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3241 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3242 0U, 16383U, NULL, FALSE); 3243 3244 return offset; 3245 } 3246 3247 3248 3249 static int 3250 dissect_rrlp_INTEGER_M131072_131071(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3251 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3252 -131072, 131071U, NULL, FALSE); 3253 3254 return offset; 3255 } 3256 3257 3258 3259 static int 3260 dissect_rrlp_INTEGER_M134217728_134217727(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3261 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3262 -134217728, 134217727U, NULL, FALSE); 3263 3264 return offset; 3265 } 3266 3267 3268 3269 static int 3270 dissect_rrlp_INTEGER_M512_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3271 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3272 -512, 511U, NULL, FALSE); 3273 3274 return offset; 3275 } 3276 3277 3278 static const per_sequence_t StandardClockModelElement_sequence[] = { 3279 { &hf_rrlp_stanClockToc , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16383 }, 3280 { &hf_rrlp_stanClockAF2 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2048_2047 }, 3281 { &hf_rrlp_stanClockAF1 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 }, 3282 { &hf_rrlp_stanClockAF0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M134217728_134217727 }, 3283 { &hf_rrlp_stanClockTgd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M512_511 }, 3284 { &hf_rrlp_stanModelID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_1 }, 3285 { NULL, 0, 0, NULL } 3286 }; 3287 3288 static int 3289 dissect_rrlp_StandardClockModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3290 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3291 ett_rrlp_StandardClockModelElement, StandardClockModelElement_sequence); 3292 3293 return offset; 3294 } 3295 3296 3297 static const per_sequence_t SeqOfStandardClockModelElement_sequence_of[1] = { 3298 { &hf_rrlp_SeqOfStandardClockModelElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_StandardClockModelElement }, 3299 }; 3300 3301 static int 3302 dissect_rrlp_SeqOfStandardClockModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3303 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3304 ett_rrlp_SeqOfStandardClockModelElement, SeqOfStandardClockModelElement_sequence_of, 3305 1, 2, FALSE); 3306 3307 return offset; 3308 } 3309 3310 3311 static const per_sequence_t NAVclockModel_sequence[] = { 3312 { &hf_rrlp_navToc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 }, 3313 { &hf_rrlp_navaf2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 3314 { &hf_rrlp_navaf1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3315 { &hf_rrlp_navaf0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 }, 3316 { &hf_rrlp_navTgd , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 3317 { NULL, 0, 0, NULL } 3318 }; 3319 3320 static int 3321 dissect_rrlp_NAVclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3322 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3323 ett_rrlp_NAVclockModel, NAVclockModel_sequence); 3324 3325 return offset; 3326 } 3327 3328 3329 3330 static int 3331 dissect_rrlp_INTEGER_0_2015(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3332 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3333 0U, 2015U, NULL, FALSE); 3334 3335 return offset; 3336 } 3337 3338 3339 3340 static int 3341 dissect_rrlp_INTEGER_M16_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3342 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3343 -16, 15U, NULL, FALSE); 3344 3345 return offset; 3346 } 3347 3348 3349 3350 static int 3351 dissect_rrlp_INTEGER_M524288_524287(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3352 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3353 -524288, 524287U, NULL, FALSE); 3354 3355 return offset; 3356 } 3357 3358 3359 3360 static int 3361 dissect_rrlp_INTEGER_M33554432_33554431(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3362 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3363 -33554432, 33554431U, NULL, FALSE); 3364 3365 return offset; 3366 } 3367 3368 3369 3370 static int 3371 dissect_rrlp_INTEGER_M4096_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3372 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3373 -4096, 4095U, NULL, FALSE); 3374 3375 return offset; 3376 } 3377 3378 3379 static const per_sequence_t CNAVclockModel_sequence[] = { 3380 { &hf_rrlp_cnavToc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2015 }, 3381 { &hf_rrlp_cnavTop , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2015 }, 3382 { &hf_rrlp_cnavURA0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 3383 { &hf_rrlp_cnavURA1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 3384 { &hf_rrlp_cnavURA2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 3385 { &hf_rrlp_cnavAf2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 }, 3386 { &hf_rrlp_cnavAf1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M524288_524287 }, 3387 { &hf_rrlp_cnavAf0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M33554432_33554431 }, 3388 { &hf_rrlp_cnavTgd , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4096_4095 }, 3389 { &hf_rrlp_cnavISCl1cp , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M4096_4095 }, 3390 { &hf_rrlp_cnavISCl1cd , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M4096_4095 }, 3391 { &hf_rrlp_cnavISCl1ca , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M4096_4095 }, 3392 { &hf_rrlp_cnavISCl2c , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M4096_4095 }, 3393 { &hf_rrlp_cnavISCl5i5 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M4096_4095 }, 3394 { &hf_rrlp_cnavISCl5q5 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M4096_4095 }, 3395 { NULL, 0, 0, NULL } 3396 }; 3397 3398 static int 3399 dissect_rrlp_CNAVclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3400 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3401 ett_rrlp_CNAVclockModel, CNAVclockModel_sequence); 3402 3403 return offset; 3404 } 3405 3406 3407 static const per_sequence_t GLONASSclockModel_sequence[] = { 3408 { &hf_rrlp_gloTau , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 }, 3409 { &hf_rrlp_gloGamma , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 3410 { &hf_rrlp_gloDeltaTau , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M16_15 }, 3411 { NULL, 0, 0, NULL } 3412 }; 3413 3414 static int 3415 dissect_rrlp_GLONASSclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3416 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3417 ett_rrlp_GLONASSclockModel, GLONASSclockModel_sequence); 3418 3419 return offset; 3420 } 3421 3422 3423 3424 static int 3425 dissect_rrlp_INTEGER_0_5399(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3426 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3427 0U, 5399U, NULL, FALSE); 3428 3429 return offset; 3430 } 3431 3432 3433 static const per_sequence_t SBASclockModel_sequence[] = { 3434 { &hf_rrlp_sbasTo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_5399 }, 3435 { &hf_rrlp_sbasAgfo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2048_2047 }, 3436 { &hf_rrlp_sbasAgf1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 3437 { NULL, 0, 0, NULL } 3438 }; 3439 3440 static int 3441 dissect_rrlp_SBASclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3442 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3443 ett_rrlp_SBASclockModel, SBASclockModel_sequence); 3444 3445 return offset; 3446 } 3447 3448 3449 static const value_string rrlp_GANSSClockModel_vals[] = { 3450 { 0, "standardClockModelList" }, 3451 { 1, "navClockModel" }, 3452 { 2, "cnavClockModel" }, 3453 { 3, "glonassClockModel" }, 3454 { 4, "sbasClockModel" }, 3455 { 0, NULL } 3456 }; 3457 3458 static const per_choice_t GANSSClockModel_choice[] = { 3459 { 0, &hf_rrlp_standardClockModelList, ASN1_EXTENSION_ROOT , dissect_rrlp_SeqOfStandardClockModelElement }, 3460 { 1, &hf_rrlp_navClockModel , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NAVclockModel }, 3461 { 2, &hf_rrlp_cnavClockModel , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_CNAVclockModel }, 3462 { 3, &hf_rrlp_glonassClockModel, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_GLONASSclockModel }, 3463 { 4, &hf_rrlp_sbasClockModel , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_SBASclockModel }, 3464 { 0, NULL, 0, NULL } 3465 }; 3466 3467 static int 3468 dissect_rrlp_GANSSClockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3469 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 3470 ett_rrlp_GANSSClockModel, GANSSClockModel_choice, 3471 NULL); 3472 3473 return offset; 3474 } 3475 3476 3477 static const per_sequence_t NavModel_KeplerianSet_sequence[] = { 3478 { &hf_rrlp_keplerToe , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16383 }, 3479 { &hf_rrlp_keplerW , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 3480 { &hf_rrlp_keplerDeltaN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3481 { &hf_rrlp_keplerM0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 3482 { &hf_rrlp_keplerOmegaDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 3483 { &hf_rrlp_keplerE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 }, 3484 { &hf_rrlp_keplerIDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 }, 3485 { &hf_rrlp_keplerAPowerHalf, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 }, 3486 { &hf_rrlp_keplerI0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 3487 { &hf_rrlp_keplerOmega0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 3488 { &hf_rrlp_keplerCrs , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3489 { &hf_rrlp_keplerCis , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3490 { &hf_rrlp_keplerCus , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3491 { &hf_rrlp_keplerCrc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3492 { &hf_rrlp_keplerCic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3493 { &hf_rrlp_keplerCuc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3494 { NULL, 0, 0, NULL } 3495 }; 3496 3497 static int 3498 dissect_rrlp_NavModel_KeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3499 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3500 ett_rrlp_NavModel_KeplerianSet, NavModel_KeplerianSet_sequence); 3501 3502 return offset; 3503 } 3504 3505 3506 static const per_sequence_t NavModel_NAVKeplerianSet_sequence[] = { 3507 { &hf_rrlp_navURA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 }, 3508 { &hf_rrlp_navFitFlag , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 3509 { &hf_rrlp_navToe , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 }, 3510 { &hf_rrlp_navOmega , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 3511 { &hf_rrlp_navDeltaN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3512 { &hf_rrlp_navM0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 3513 { &hf_rrlp_navOmegaADot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 3514 { &hf_rrlp_navE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 }, 3515 { &hf_rrlp_navIDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 }, 3516 { &hf_rrlp_navAPowerHalf , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 }, 3517 { &hf_rrlp_navI0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 3518 { &hf_rrlp_navOmegaA0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 3519 { &hf_rrlp_navCrs , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3520 { &hf_rrlp_navCis , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3521 { &hf_rrlp_navCus , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3522 { &hf_rrlp_navCrc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3523 { &hf_rrlp_navCic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3524 { &hf_rrlp_navCuc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3525 { NULL, 0, 0, NULL } 3526 }; 3527 3528 static int 3529 dissect_rrlp_NavModel_NAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3530 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3531 ett_rrlp_NavModel_NAVKeplerianSet, NavModel_NAVKeplerianSet_sequence); 3532 3533 return offset; 3534 } 3535 3536 3537 3538 static int 3539 dissect_rrlp_INTEGER_M16777216_16777215(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3540 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3541 -16777216, 16777215U, NULL, FALSE); 3542 3543 return offset; 3544 } 3545 3546 3547 3548 static int 3549 dissect_rrlp_INTEGER_M65536_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3550 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3551 -65536, 65535U, NULL, FALSE); 3552 3553 return offset; 3554 } 3555 3556 3557 3558 static int 3559 dissect_rrlp_INTEGER_M4194304_4194303(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3560 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3561 -4194304, 4194303U, NULL, FALSE); 3562 3563 return offset; 3564 } 3565 3566 3567 3568 static int 3569 dissect_rrlp_INTEGER_M4294967296_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3570 offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, 3571 G_GINT64_CONSTANT(-4294967296), 4294967295U, NULL, FALSE); 3572 3573 return offset; 3574 } 3575 3576 3577 3578 static int 3579 dissect_rrlp_INTEGER_0_8589934591(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3580 offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, 3581 0U, G_GUINT64_CONSTANT(8589934591), NULL, FALSE); 3582 3583 return offset; 3584 } 3585 3586 3587 static const per_sequence_t NavModel_CNAVKeplerianSet_sequence[] = { 3588 { &hf_rrlp_cnavTop , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2015 }, 3589 { &hf_rrlp_cnavURAindex , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 3590 { &hf_rrlp_cnavDeltaA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M33554432_33554431 }, 3591 { &hf_rrlp_cnavAdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16777216_16777215 }, 3592 { &hf_rrlp_cnavDeltaNo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 }, 3593 { &hf_rrlp_cnavDeltaNoDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4194304_4194303 }, 3594 { &hf_rrlp_cnavMo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4294967296_4294967295 }, 3595 { &hf_rrlp_cnavE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_8589934591 }, 3596 { &hf_rrlp_cnavOmega , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4294967296_4294967295 }, 3597 { &hf_rrlp_cnavOMEGA0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4294967296_4294967295 }, 3598 { &hf_rrlp_cnavDeltaOmegaDot, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 }, 3599 { &hf_rrlp_cnavIo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4294967296_4294967295 }, 3600 { &hf_rrlp_cnavIoDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 }, 3601 { &hf_rrlp_cnavCis , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3602 { &hf_rrlp_cnavCic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 3603 { &hf_rrlp_cnavCrs , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 3604 { &hf_rrlp_cnavCrc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 3605 { &hf_rrlp_cnavCus , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 }, 3606 { &hf_rrlp_cnavCuc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 }, 3607 { NULL, 0, 0, NULL } 3608 }; 3609 3610 static int 3611 dissect_rrlp_NavModel_CNAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3612 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3613 ett_rrlp_NavModel_CNAVKeplerianSet, NavModel_CNAVKeplerianSet_sequence); 3614 3615 return offset; 3616 } 3617 3618 3619 3620 static int 3621 dissect_rrlp_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3622 offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL); 3623 3624 return offset; 3625 } 3626 3627 3628 3629 static int 3630 dissect_rrlp_INTEGER_M67108864_67108863(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3631 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3632 -67108864, 67108863U, NULL, FALSE); 3633 3634 return offset; 3635 } 3636 3637 3638 static const per_sequence_t NavModel_GLONASSecef_sequence[] = { 3639 { &hf_rrlp_gloEn , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 }, 3640 { &hf_rrlp_gloP1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_2 }, 3641 { &hf_rrlp_gloP2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 3642 { &hf_rrlp_gloM , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 }, 3643 { &hf_rrlp_gloX , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M67108864_67108863 }, 3644 { &hf_rrlp_gloXdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 3645 { &hf_rrlp_gloXdotdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 3646 { &hf_rrlp_gloY , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M67108864_67108863 }, 3647 { &hf_rrlp_gloYdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 3648 { &hf_rrlp_gloYdotdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 3649 { &hf_rrlp_gloZ , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M67108864_67108863 }, 3650 { &hf_rrlp_gloZdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 3651 { &hf_rrlp_gloZdotdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 3652 { NULL, 0, 0, NULL } 3653 }; 3654 3655 static int 3656 dissect_rrlp_NavModel_GLONASSecef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3657 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3658 ett_rrlp_NavModel_GLONASSecef, NavModel_GLONASSecef_sequence); 3659 3660 return offset; 3661 } 3662 3663 3664 3665 static int 3666 dissect_rrlp_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3667 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 3668 4, 4, FALSE, NULL, 0, NULL, NULL); 3669 3670 return offset; 3671 } 3672 3673 3674 3675 static int 3676 dissect_rrlp_INTEGER_M536870912_536870911(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3677 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3678 -536870912, 536870911U, NULL, FALSE); 3679 3680 return offset; 3681 } 3682 3683 3684 static const per_sequence_t NavModel_SBASecef_sequence[] = { 3685 { &hf_rrlp_sbasTo , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_5399 }, 3686 { &hf_rrlp_sbasAccuracy , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_4 }, 3687 { &hf_rrlp_sbasXg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M536870912_536870911 }, 3688 { &hf_rrlp_sbasYg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M536870912_536870911 }, 3689 { &hf_rrlp_sbasZg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16777216_16777215 }, 3690 { &hf_rrlp_sbasXgDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 }, 3691 { &hf_rrlp_sbasYgDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 }, 3692 { &hf_rrlp_sbasZgDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 }, 3693 { &hf_rrlp_sbasXgDotDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 }, 3694 { &hf_rrlp_sbagYgDotDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 }, 3695 { &hf_rrlp_sbasZgDotDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 }, 3696 { NULL, 0, 0, NULL } 3697 }; 3698 3699 static int 3700 dissect_rrlp_NavModel_SBASecef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3701 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3702 ett_rrlp_NavModel_SBASecef, NavModel_SBASecef_sequence); 3703 3704 return offset; 3705 } 3706 3707 3708 static const value_string rrlp_GANSSOrbitModel_vals[] = { 3709 { 0, "keplerianSet" }, 3710 { 1, "navKeplerianSet" }, 3711 { 2, "cnavKeplerianSet" }, 3712 { 3, "glonassECEF" }, 3713 { 4, "sbasECEF" }, 3714 { 0, NULL } 3715 }; 3716 3717 static const per_choice_t GANSSOrbitModel_choice[] = { 3718 { 0, &hf_rrlp_keplerianSet , ASN1_EXTENSION_ROOT , dissect_rrlp_NavModel_KeplerianSet }, 3719 { 1, &hf_rrlp_navKeplerianSet, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_NAVKeplerianSet }, 3720 { 2, &hf_rrlp_cnavKeplerianSet, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_CNAVKeplerianSet }, 3721 { 3, &hf_rrlp_glonassECEF , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_GLONASSecef }, 3722 { 4, &hf_rrlp_sbasECEF , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_SBASecef }, 3723 { 0, NULL, 0, NULL } 3724 }; 3725 3726 static int 3727 dissect_rrlp_GANSSOrbitModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3728 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 3729 ett_rrlp_GANSSOrbitModel, GANSSOrbitModel_choice, 3730 NULL); 3731 3732 return offset; 3733 } 3734 3735 3736 3737 static int 3738 dissect_rrlp_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3739 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 3740 1, 1, FALSE, NULL, 0, NULL, NULL); 3741 3742 return offset; 3743 } 3744 3745 3746 static const per_sequence_t GANSSSatelliteElement_sequence[] = { 3747 { &hf_rrlp_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 3748 { &hf_rrlp_svHealth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_5 }, 3749 { &hf_rrlp_iod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1023 }, 3750 { &hf_rrlp_ganssClockModel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSClockModel }, 3751 { &hf_rrlp_ganssOrbitModel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSOrbitModel }, 3752 { &hf_rrlp_svHealthMSB , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_BIT_STRING_SIZE_1 }, 3753 { &hf_rrlp_iodMSB , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_1 }, 3754 { NULL, 0, 0, NULL } 3755 }; 3756 3757 static int 3758 dissect_rrlp_GANSSSatelliteElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3759 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3760 ett_rrlp_GANSSSatelliteElement, GANSSSatelliteElement_sequence); 3761 3762 return offset; 3763 } 3764 3765 3766 static const per_sequence_t SeqOfGANSSSatelliteElement_sequence_of[1] = { 3767 { &hf_rrlp_SeqOfGANSSSatelliteElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSatelliteElement }, 3768 }; 3769 3770 static int 3771 dissect_rrlp_SeqOfGANSSSatelliteElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3772 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3773 ett_rrlp_SeqOfGANSSSatelliteElement, SeqOfGANSSSatelliteElement_sequence_of, 3774 1, 32, FALSE); 3775 3776 return offset; 3777 } 3778 3779 3780 static const per_sequence_t GANSSNavModel_sequence[] = { 3781 { &hf_rrlp_nonBroadcastIndFlag, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 3782 { &hf_rrlp_ganssSatelliteList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSSSatelliteElement }, 3783 { NULL, 0, 0, NULL } 3784 }; 3785 3786 static int 3787 dissect_rrlp_GANSSNavModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3788 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3789 ett_rrlp_GANSSNavModel, GANSSNavModel_sequence); 3790 3791 return offset; 3792 } 3793 3794 3795 static int * const GANSSSignals_bits[] = { 3796 &hf_rrlp_GANSSSignals_signal1, 3797 &hf_rrlp_GANSSSignals_signal2, 3798 &hf_rrlp_GANSSSignals_signal3, 3799 &hf_rrlp_GANSSSignals_signal4, 3800 &hf_rrlp_GANSSSignals_signal5, 3801 &hf_rrlp_GANSSSignals_signal6, 3802 &hf_rrlp_GANSSSignals_signal7, 3803 &hf_rrlp_GANSSSignals_signal8, 3804 NULL 3805 }; 3806 3807 static int 3808 dissect_rrlp_GANSSSignals(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3809 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 3810 1, 8, FALSE, GANSSSignals_bits, 8, NULL, NULL); 3811 3812 return offset; 3813 } 3814 3815 3816 static const per_sequence_t BadSignalElement_sequence[] = { 3817 { &hf_rrlp_badSVID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 3818 { &hf_rrlp_badSignalID , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GANSSSignals }, 3819 { NULL, 0, 0, NULL } 3820 }; 3821 3822 static int 3823 dissect_rrlp_BadSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3824 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3825 ett_rrlp_BadSignalElement, BadSignalElement_sequence); 3826 3827 return offset; 3828 } 3829 3830 3831 static const per_sequence_t SeqOfBadSignalElement_sequence_of[1] = { 3832 { &hf_rrlp_SeqOfBadSignalElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BadSignalElement }, 3833 }; 3834 3835 static int 3836 dissect_rrlp_SeqOfBadSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3837 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3838 ett_rrlp_SeqOfBadSignalElement, SeqOfBadSignalElement_sequence_of, 3839 1, 16, FALSE); 3840 3841 return offset; 3842 } 3843 3844 3845 static const per_sequence_t GANSSRealTimeIntegrity_sequence[] = { 3846 { &hf_rrlp_ganssBadSignalList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfBadSignalElement }, 3847 { NULL, 0, 0, NULL } 3848 }; 3849 3850 static int 3851 dissect_rrlp_GANSSRealTimeIntegrity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3852 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3853 ett_rrlp_GANSSRealTimeIntegrity, GANSSRealTimeIntegrity_sequence); 3854 3855 return offset; 3856 } 3857 3858 3859 3860 static int 3861 dissect_rrlp_INTEGER_0_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3862 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3863 0U, 59U, NULL, FALSE); 3864 3865 return offset; 3866 } 3867 3868 3869 3870 static int 3871 dissect_rrlp_GANSSDataBit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3872 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3873 0U, 1U, NULL, FALSE); 3874 3875 return offset; 3876 } 3877 3878 3879 static const per_sequence_t SeqOf_GANSSDataBits_sequence_of[1] = { 3880 { &hf_rrlp_SeqOf_GANSSDataBits_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSDataBit }, 3881 }; 3882 3883 static int 3884 dissect_rrlp_SeqOf_GANSSDataBits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3885 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3886 ett_rrlp_SeqOf_GANSSDataBits, SeqOf_GANSSDataBits_sequence_of, 3887 1, 1024, FALSE); 3888 3889 return offset; 3890 } 3891 3892 3893 static const per_sequence_t GANSSDataBitsSgnElement_sequence[] = { 3894 { &hf_rrlp_ganssSignalType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID }, 3895 { &hf_rrlp_ganssDataBits , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOf_GANSSDataBits }, 3896 { NULL, 0, 0, NULL } 3897 }; 3898 3899 static int 3900 dissect_rrlp_GANSSDataBitsSgnElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3901 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3902 ett_rrlp_GANSSDataBitsSgnElement, GANSSDataBitsSgnElement_sequence); 3903 3904 return offset; 3905 } 3906 3907 3908 static const per_sequence_t Seq_OfGANSSDataBitsSgn_sequence_of[1] = { 3909 { &hf_rrlp_Seq_OfGANSSDataBitsSgn_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSDataBitsSgnElement }, 3910 }; 3911 3912 static int 3913 dissect_rrlp_Seq_OfGANSSDataBitsSgn(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3914 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3915 ett_rrlp_Seq_OfGANSSDataBitsSgn, Seq_OfGANSSDataBitsSgn_sequence_of, 3916 1, 8, FALSE); 3917 3918 return offset; 3919 } 3920 3921 3922 static const per_sequence_t GanssDataBitsElement_sequence[] = { 3923 { &hf_rrlp_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 3924 { &hf_rrlp_ganssDataBitsSgnList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_Seq_OfGANSSDataBitsSgn }, 3925 { NULL, 0, 0, NULL } 3926 }; 3927 3928 static int 3929 dissect_rrlp_GanssDataBitsElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3930 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3931 ett_rrlp_GanssDataBitsElement, GanssDataBitsElement_sequence); 3932 3933 return offset; 3934 } 3935 3936 3937 static const per_sequence_t SeqOfGanssDataBitsElement_sequence_of[1] = { 3938 { &hf_rrlp_SeqOfGanssDataBitsElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GanssDataBitsElement }, 3939 }; 3940 3941 static int 3942 dissect_rrlp_SeqOfGanssDataBitsElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3943 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 3944 ett_rrlp_SeqOfGanssDataBitsElement, SeqOfGanssDataBitsElement_sequence_of, 3945 1, 32, FALSE); 3946 3947 return offset; 3948 } 3949 3950 3951 static const per_sequence_t GANSSDataBitAssist_sequence[] = { 3952 { &hf_rrlp_ganssTOD_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_59 }, 3953 { &hf_rrlp_ganssDataBitsSatList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGanssDataBitsElement }, 3954 { NULL, 0, 0, NULL } 3955 }; 3956 3957 static int 3958 dissect_rrlp_GANSSDataBitAssist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3959 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3960 ett_rrlp_GANSSDataBitAssist, GANSSDataBitAssist_sequence); 3961 3962 return offset; 3963 } 3964 3965 3966 3967 static int 3968 dissect_rrlp_INTEGER_0_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3969 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3970 0U, 4U, NULL, FALSE); 3971 3972 return offset; 3973 } 3974 3975 3976 static const per_sequence_t AdditionalDopplerFields_sequence[] = { 3977 { &hf_rrlp_doppler1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 }, 3978 { &hf_rrlp_dopplerUncertainty_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4 }, 3979 { NULL, 0, 0, NULL } 3980 }; 3981 3982 static int 3983 dissect_rrlp_AdditionalDopplerFields(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3984 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 3985 ett_rrlp_AdditionalDopplerFields, AdditionalDopplerFields_sequence); 3986 3987 return offset; 3988 } 3989 3990 3991 3992 static int 3993 dissect_rrlp_INTEGER_0_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 3994 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 3995 0U, 127U, NULL, FALSE); 3996 3997 return offset; 3998 } 3999 4000 4001 static const per_sequence_t GANSSRefMeasurementElement_sequence[] = { 4002 { &hf_rrlp_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4003 { &hf_rrlp_doppler0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2048_2047 }, 4004 { &hf_rrlp_additionalDoppler, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_AdditionalDopplerFields }, 4005 { &hf_rrlp_codePhase , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1022 }, 4006 { &hf_rrlp_intCodePhase_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_127 }, 4007 { &hf_rrlp_codePhaseSearchWindow_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 }, 4008 { &hf_rrlp_additionalAngle, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_AddionalAngleFields }, 4009 { NULL, 0, 0, NULL } 4010 }; 4011 4012 static int 4013 dissect_rrlp_GANSSRefMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4014 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4015 ett_rrlp_GANSSRefMeasurementElement, GANSSRefMeasurementElement_sequence); 4016 4017 return offset; 4018 } 4019 4020 4021 static const per_sequence_t SeqOfGANSSRefMeasurementElement_sequence_of[1] = { 4022 { &hf_rrlp_SeqOfGANSSRefMeasurementElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSRefMeasurementElement }, 4023 }; 4024 4025 static int 4026 dissect_rrlp_SeqOfGANSSRefMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4027 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4028 ett_rrlp_SeqOfGANSSRefMeasurementElement, SeqOfGANSSRefMeasurementElement_sequence_of, 4029 1, 16, FALSE); 4030 4031 return offset; 4032 } 4033 4034 4035 static const per_sequence_t GANSSRefMeasurementAssist_sequence[] = { 4036 { &hf_rrlp_ganssSignalID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID }, 4037 { &hf_rrlp_ganssRefMeasAssistList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSSRefMeasurementElement }, 4038 { NULL, 0, 0, NULL } 4039 }; 4040 4041 static int 4042 dissect_rrlp_GANSSRefMeasurementAssist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4043 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4044 ett_rrlp_GANSSRefMeasurementAssist, GANSSRefMeasurementAssist_sequence); 4045 4046 return offset; 4047 } 4048 4049 4050 4051 static int 4052 dissect_rrlp_INTEGER_0_2047(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4053 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4054 0U, 2047U, NULL, FALSE); 4055 4056 return offset; 4057 } 4058 4059 4060 static const per_sequence_t Almanac_KeplerianSet_sequence[] = { 4061 { &hf_rrlp_svID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4062 { &hf_rrlp_kepAlmanacE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2047 }, 4063 { &hf_rrlp_kepAlmanacDeltaI, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 4064 { &hf_rrlp_kepAlmanacOmegaDot, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 4065 { &hf_rrlp_kepSVHealth , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 }, 4066 { &hf_rrlp_kepAlmanacAPowerHalf, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 }, 4067 { &hf_rrlp_kepAlmanacOmega0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4068 { &hf_rrlp_kepAlmanacW , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4069 { &hf_rrlp_kepAlmanacM0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4070 { &hf_rrlp_kepAlmanacAF0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 }, 4071 { &hf_rrlp_kepAlmanacAF1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 4072 { NULL, 0, 0, NULL } 4073 }; 4074 4075 static int 4076 dissect_rrlp_Almanac_KeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4077 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4078 ett_rrlp_Almanac_KeplerianSet, Almanac_KeplerianSet_sequence); 4079 4080 return offset; 4081 } 4082 4083 4084 static const per_sequence_t Almanac_NAVKeplerianSet_sequence[] = { 4085 { &hf_rrlp_svID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4086 { &hf_rrlp_navAlmE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 }, 4087 { &hf_rrlp_navAlmDeltaI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4088 { &hf_rrlp_navAlmOMEGADOT , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4089 { &hf_rrlp_navAlmSVHealth , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4090 { &hf_rrlp_navAlmSqrtA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 }, 4091 { &hf_rrlp_navAlmOMEGAo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 4092 { &hf_rrlp_navAlmOmega , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 4093 { &hf_rrlp_navAlmMo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 4094 { &hf_rrlp_navAlmaf0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 4095 { &hf_rrlp_navAlmaf1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 4096 { NULL, 0, 0, NULL } 4097 }; 4098 4099 static int 4100 dissect_rrlp_Almanac_NAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4101 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4102 ett_rrlp_Almanac_NAVKeplerianSet, Almanac_NAVKeplerianSet_sequence); 4103 4104 return offset; 4105 } 4106 4107 4108 4109 static int 4110 dissect_rrlp_INTEGER_M64_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4111 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4112 -64, 63U, NULL, FALSE); 4113 4114 return offset; 4115 } 4116 4117 4118 static const per_sequence_t Almanac_ReducedKeplerianSet_sequence[] = { 4119 { &hf_rrlp_svID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4120 { &hf_rrlp_redAlmDeltaA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4121 { &hf_rrlp_redAlmOmega0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M64_63 }, 4122 { &hf_rrlp_redAlmPhi0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M64_63 }, 4123 { &hf_rrlp_redAlmL1Health , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 4124 { &hf_rrlp_redAlmL2Health , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 4125 { &hf_rrlp_redAlmL5Health , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 4126 { NULL, 0, 0, NULL } 4127 }; 4128 4129 static int 4130 dissect_rrlp_Almanac_ReducedKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4131 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4132 ett_rrlp_Almanac_ReducedKeplerianSet, Almanac_ReducedKeplerianSet_sequence); 4133 4134 return offset; 4135 } 4136 4137 4138 4139 static int 4140 dissect_rrlp_INTEGER_0_131071(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4141 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4142 0U, 131071U, NULL, FALSE); 4143 4144 return offset; 4145 } 4146 4147 4148 static const per_sequence_t Almanac_MidiAlmanacSet_sequence[] = { 4149 { &hf_rrlp_svID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4150 { &hf_rrlp_midiAlmE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2047 }, 4151 { &hf_rrlp_midiAlmDeltaI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 4152 { &hf_rrlp_midiAlmOmegaDot, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 4153 { &hf_rrlp_midiAlmSqrtA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_131071 }, 4154 { &hf_rrlp_midiAlmOmega0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4155 { &hf_rrlp_midiAlmOmega , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4156 { &hf_rrlp_midiAlmMo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4157 { &hf_rrlp_midiAlmaf0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 }, 4158 { &hf_rrlp_midiAlmaf1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 }, 4159 { &hf_rrlp_midiAlmL1Health, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 4160 { &hf_rrlp_midiAlmL2Health, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 4161 { &hf_rrlp_midiAlmL5Health, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 4162 { NULL, 0, 0, NULL } 4163 }; 4164 4165 static int 4166 dissect_rrlp_Almanac_MidiAlmanacSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4167 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4168 ett_rrlp_Almanac_MidiAlmanacSet, Almanac_MidiAlmanacSet_sequence); 4169 4170 return offset; 4171 } 4172 4173 4174 4175 static int 4176 dissect_rrlp_INTEGER_1_1461(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4177 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4178 1U, 1461U, NULL, FALSE); 4179 4180 return offset; 4181 } 4182 4183 4184 4185 static int 4186 dissect_rrlp_INTEGER_1_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4187 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4188 1U, 24U, NULL, FALSE); 4189 4190 return offset; 4191 } 4192 4193 4194 4195 static int 4196 dissect_rrlp_INTEGER_0_2097151(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4197 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4198 0U, 2097151U, NULL, FALSE); 4199 4200 return offset; 4201 } 4202 4203 4204 4205 static int 4206 dissect_rrlp_INTEGER_0_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4207 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4208 0U, 32767U, NULL, FALSE); 4209 4210 return offset; 4211 } 4212 4213 4214 static const per_sequence_t Almanac_GlonassAlmanacSet_sequence[] = { 4215 { &hf_rrlp_gloAlmNA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_1461 }, 4216 { &hf_rrlp_gloAlmnA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_24 }, 4217 { &hf_rrlp_gloAlmHA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 }, 4218 { &hf_rrlp_gloAlmLambdaA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 }, 4219 { &hf_rrlp_gloAlmtlambdaA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2097151 }, 4220 { &hf_rrlp_gloAlmDeltaIa , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 }, 4221 { &hf_rrlp_gloAlmDeltaTA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 }, 4222 { &hf_rrlp_gloAlmDeltaTdotA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M64_63 }, 4223 { &hf_rrlp_gloAlmEpsilonA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_32767 }, 4224 { &hf_rrlp_gloAlmOmegaA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4225 { &hf_rrlp_gloAlmTauA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 }, 4226 { &hf_rrlp_gloAlmCA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 }, 4227 { &hf_rrlp_gloAlmMA , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_BIT_STRING_SIZE_2 }, 4228 { NULL, 0, 0, NULL } 4229 }; 4230 4231 static int 4232 dissect_rrlp_Almanac_GlonassAlmanacSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4233 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4234 ett_rrlp_Almanac_GlonassAlmanacSet, Almanac_GlonassAlmanacSet_sequence); 4235 4236 return offset; 4237 } 4238 4239 4240 4241 static int 4242 dissect_rrlp_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4243 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 4244 8, 8, FALSE, NULL, 0, NULL, NULL); 4245 4246 return offset; 4247 } 4248 4249 4250 4251 static int 4252 dissect_rrlp_INTEGER_M256_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4253 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4254 -256, 255U, NULL, FALSE); 4255 4256 return offset; 4257 } 4258 4259 4260 4261 static int 4262 dissect_rrlp_INTEGER_M4_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4263 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4264 -4, 3U, NULL, FALSE); 4265 4266 return offset; 4267 } 4268 4269 4270 4271 static int 4272 dissect_rrlp_INTEGER_M8_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4273 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4274 -8, 7U, NULL, FALSE); 4275 4276 return offset; 4277 } 4278 4279 4280 static const per_sequence_t Almanac_ECEFsbasAlmanacSet_sequence[] = { 4281 { &hf_rrlp_sbasAlmDataID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 }, 4282 { &hf_rrlp_svID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4283 { &hf_rrlp_sbasAlmHealth , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_8 }, 4284 { &hf_rrlp_sbasAlmXg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 }, 4285 { &hf_rrlp_sbasAlmYg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 }, 4286 { &hf_rrlp_sbasAlmZg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M256_255 }, 4287 { &hf_rrlp_sbasAlmXgdot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4_3 }, 4288 { &hf_rrlp_sbasAlmYgDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4_3 }, 4289 { &hf_rrlp_sbasAlmZgDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8_7 }, 4290 { &hf_rrlp_sbasAlmTo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2047 }, 4291 { NULL, 0, 0, NULL } 4292 }; 4293 4294 static int 4295 dissect_rrlp_Almanac_ECEFsbasAlmanacSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4296 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4297 ett_rrlp_Almanac_ECEFsbasAlmanacSet, Almanac_ECEFsbasAlmanacSet_sequence); 4298 4299 return offset; 4300 } 4301 4302 4303 static const value_string rrlp_GANSSAlmanacElement_vals[] = { 4304 { 0, "keplerianAlmanacSet" }, 4305 { 1, "keplerianNAVAlmanac" }, 4306 { 2, "keplerianReducedAlmanac" }, 4307 { 3, "keplerianMidiAlmanac" }, 4308 { 4, "keplerianGLONASS" }, 4309 { 5, "ecefSBASAlmanac" }, 4310 { 0, NULL } 4311 }; 4312 4313 static const per_choice_t GANSSAlmanacElement_choice[] = { 4314 { 0, &hf_rrlp_keplerianAlmanacSet, ASN1_EXTENSION_ROOT , dissect_rrlp_Almanac_KeplerianSet }, 4315 { 1, &hf_rrlp_keplerianNAVAlmanac, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_NAVKeplerianSet }, 4316 { 2, &hf_rrlp_keplerianReducedAlmanac, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_ReducedKeplerianSet }, 4317 { 3, &hf_rrlp_keplerianMidiAlmanac, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_MidiAlmanacSet }, 4318 { 4, &hf_rrlp_keplerianGLONASS, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_GlonassAlmanacSet }, 4319 { 5, &hf_rrlp_ecefSBASAlmanac, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_ECEFsbasAlmanacSet }, 4320 { 0, NULL, 0, NULL } 4321 }; 4322 4323 static int 4324 dissect_rrlp_GANSSAlmanacElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4325 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 4326 ett_rrlp_GANSSAlmanacElement, GANSSAlmanacElement_choice, 4327 NULL); 4328 4329 return offset; 4330 } 4331 4332 4333 static const per_sequence_t SeqOfGANSSAlmanacElement_sequence_of[1] = { 4334 { &hf_rrlp_SeqOfGANSSAlmanacElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSAlmanacElement }, 4335 }; 4336 4337 static int 4338 dissect_rrlp_SeqOfGANSSAlmanacElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4339 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4340 ett_rrlp_SeqOfGANSSAlmanacElement, SeqOfGANSSAlmanacElement_sequence_of, 4341 1, 36, FALSE); 4342 4343 return offset; 4344 } 4345 4346 4347 static const per_sequence_t GANSSAlmanacModel_sequence[] = { 4348 { &hf_rrlp_weekNumber_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4349 { &hf_rrlp_toa , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_255 }, 4350 { &hf_rrlp_ioda , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_3 }, 4351 { &hf_rrlp_ganssAlmanacList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSSAlmanacElement }, 4352 { NULL, 0, 0, NULL } 4353 }; 4354 4355 static int 4356 dissect_rrlp_GANSSAlmanacModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4357 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4358 ett_rrlp_GANSSAlmanacModel, GANSSAlmanacModel_sequence); 4359 4360 return offset; 4361 } 4362 4363 4364 static const per_sequence_t GANSSUTCModel_sequence[] = { 4365 { &hf_rrlp_ganssUtcA1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 4366 { &hf_rrlp_ganssUtcA0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 4367 { &hf_rrlp_ganssUtcTot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4368 { &hf_rrlp_ganssUtcWNt , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4369 { &hf_rrlp_ganssUtcDeltaTls, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4370 { &hf_rrlp_ganssUtcWNlsf , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4371 { &hf_rrlp_ganssUtcDN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4372 { &hf_rrlp_ganssUtcDeltaTlsf, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4373 { NULL, 0, 0, NULL } 4374 }; 4375 4376 static int 4377 dissect_rrlp_GANSSUTCModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4378 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4379 ett_rrlp_GANSSUTCModel, GANSSUTCModel_sequence); 4380 4381 return offset; 4382 } 4383 4384 4385 static const per_sequence_t GANSSEphemerisExtensionTime_sequence[] = { 4386 { &hf_rrlp_ganssEphExtDay , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_8191 }, 4387 { &hf_rrlp_ganssEphExtTOD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSTOD }, 4388 { NULL, 0, 0, NULL } 4389 }; 4390 4391 static int 4392 dissect_rrlp_GANSSEphemerisExtensionTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4393 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4394 ett_rrlp_GANSSEphemerisExtensionTime, GANSSEphemerisExtensionTime_sequence); 4395 4396 return offset; 4397 } 4398 4399 4400 4401 static int 4402 dissect_rrlp_INTEGER_1_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4403 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4404 1U, 8U, NULL, FALSE); 4405 4406 return offset; 4407 } 4408 4409 4410 4411 static int 4412 dissect_rrlp_INTEGER_1_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4413 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4414 1U, 512U, NULL, FALSE); 4415 4416 return offset; 4417 } 4418 4419 4420 static const per_sequence_t GANSSEphemerisExtensionHeader_sequence[] = { 4421 { &hf_rrlp_timeAtEstimation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSEphemerisExtensionTime }, 4422 { &hf_rrlp_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_8 }, 4423 { &hf_rrlp_ephemerisExtensionDuration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_512 }, 4424 { NULL, 0, 0, NULL } 4425 }; 4426 4427 static int 4428 dissect_rrlp_GANSSEphemerisExtensionHeader(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4429 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4430 ett_rrlp_GANSSEphemerisExtensionHeader, GANSSEphemerisExtensionHeader_sequence); 4431 4432 return offset; 4433 } 4434 4435 4436 static const per_sequence_t ReferenceNavModel_sequence[] = { 4437 { &hf_rrlp_keplerToe_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 }, 4438 { &hf_rrlp_keplerW , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 4439 { &hf_rrlp_keplerDeltaN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4440 { &hf_rrlp_keplerM0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 4441 { &hf_rrlp_keplerOmegaDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 4442 { &hf_rrlp_keplerE , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 }, 4443 { &hf_rrlp_keplerIDot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 }, 4444 { &hf_rrlp_keplerAPowerHalf, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 }, 4445 { &hf_rrlp_keplerI0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 4446 { &hf_rrlp_keplerOmega0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 4447 { &hf_rrlp_keplerCrs , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4448 { &hf_rrlp_keplerCis , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4449 { &hf_rrlp_keplerCus , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4450 { &hf_rrlp_keplerCrc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4451 { &hf_rrlp_keplerCic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4452 { &hf_rrlp_keplerCuc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4453 { NULL, 0, 0, NULL } 4454 }; 4455 4456 static int 4457 dissect_rrlp_ReferenceNavModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4458 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4459 ett_rrlp_ReferenceNavModel, ReferenceNavModel_sequence); 4460 4461 return offset; 4462 } 4463 4464 4465 static const per_sequence_t GANSSReferenceOrbit_sequence[] = { 4466 { &hf_rrlp_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4467 { &hf_rrlp_ganssOrbitModel_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_ReferenceNavModel }, 4468 { &hf_rrlp_ganssClockModel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSClockModel }, 4469 { NULL, 0, 0, NULL } 4470 }; 4471 4472 static int 4473 dissect_rrlp_GANSSReferenceOrbit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4474 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4475 ett_rrlp_GANSSReferenceOrbit, GANSSReferenceOrbit_sequence); 4476 4477 return offset; 4478 } 4479 4480 4481 static const per_sequence_t SeqOfGANSSRefOrbit_sequence_of[1] = { 4482 { &hf_rrlp_SeqOfGANSSRefOrbit_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSReferenceOrbit }, 4483 }; 4484 4485 static int 4486 dissect_rrlp_SeqOfGANSSRefOrbit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4487 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4488 ett_rrlp_SeqOfGANSSRefOrbit, SeqOfGANSSRefOrbit_sequence_of, 4489 1, 32, FALSE); 4490 4491 return offset; 4492 } 4493 4494 4495 4496 static int 4497 dissect_rrlp_INTEGER_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4498 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4499 1U, 32U, NULL, FALSE); 4500 4501 return offset; 4502 } 4503 4504 4505 4506 static int 4507 dissect_rrlp_INTEGER_1_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4508 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4509 1U, 16U, NULL, FALSE); 4510 4511 return offset; 4512 } 4513 4514 4515 4516 static int 4517 dissect_rrlp_INTEGER_1_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4518 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4519 1U, 14U, NULL, FALSE); 4520 4521 return offset; 4522 } 4523 4524 4525 4526 static int 4527 dissect_rrlp_INTEGER_1_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4528 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4529 1U, 10U, NULL, FALSE); 4530 4531 return offset; 4532 } 4533 4534 4535 static const per_sequence_t GANSSEphemerisDeltaBitSizes_sequence[] = { 4536 { &hf_rrlp_bitsize_delta_omega, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 4537 { &hf_rrlp_bitsize_delta_deltaN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 4538 { &hf_rrlp_bitsize_delta_m0, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 4539 { &hf_rrlp_bitsize_delta_omegadot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_24 }, 4540 { &hf_rrlp_bitsize_delta_e, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 4541 { &hf_rrlp_bitsize_delta_idot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_14 }, 4542 { &hf_rrlp_bitsize_delta_sqrtA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 4543 { &hf_rrlp_bitsize_delta_i0, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 4544 { &hf_rrlp_bitsize_delta_omega0, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 4545 { &hf_rrlp_bitsize_delta_crs, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 4546 { &hf_rrlp_bitsize_delta_cis, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 4547 { &hf_rrlp_bitsize_delta_cus, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 4548 { &hf_rrlp_bitsize_delta_crc, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 4549 { &hf_rrlp_bitsize_delta_cic, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 4550 { &hf_rrlp_bitsize_delta_cuc, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 4551 { &hf_rrlp_bitsize_delta_tgd1, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_10 }, 4552 { &hf_rrlp_bitsize_delta_tgd2, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_10 }, 4553 { NULL, 0, 0, NULL } 4554 }; 4555 4556 static int 4557 dissect_rrlp_GANSSEphemerisDeltaBitSizes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4558 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4559 ett_rrlp_GANSSEphemerisDeltaBitSizes, GANSSEphemerisDeltaBitSizes_sequence); 4560 4561 return offset; 4562 } 4563 4564 4565 static const per_sequence_t GANSSEphemerisDeltaScales_sequence[] = { 4566 { &hf_rrlp_scale_delta_omega, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4567 { &hf_rrlp_scale_delta_deltaN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4568 { &hf_rrlp_scale_delta_m0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4569 { &hf_rrlp_scale_delta_omegadot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4570 { &hf_rrlp_scale_delta_e , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4571 { &hf_rrlp_scale_delta_idot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4572 { &hf_rrlp_scale_delta_sqrtA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4573 { &hf_rrlp_scale_delta_i0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4574 { &hf_rrlp_scale_delta_omega0, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4575 { &hf_rrlp_scale_delta_crs, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4576 { &hf_rrlp_scale_delta_cis, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4577 { &hf_rrlp_scale_delta_cus, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4578 { &hf_rrlp_scale_delta_crc, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4579 { &hf_rrlp_scale_delta_cic, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4580 { &hf_rrlp_scale_delta_cuc, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4581 { &hf_rrlp_scale_delta_tgd1, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4582 { &hf_rrlp_scale_delta_tgd2, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 4583 { NULL, 0, 0, NULL } 4584 }; 4585 4586 static int 4587 dissect_rrlp_GANSSEphemerisDeltaScales(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4588 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4589 ett_rrlp_GANSSEphemerisDeltaScales, GANSSEphemerisDeltaScales_sequence); 4590 4591 return offset; 4592 } 4593 4594 4595 static const per_sequence_t GANSSDeltaEpochHeader_sequence[] = { 4596 { &hf_rrlp_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_1_8 }, 4597 { &hf_rrlp_ephemerisDeltaSizes, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSEphemerisDeltaBitSizes }, 4598 { &hf_rrlp_ephemerisDeltaScales, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSEphemerisDeltaScales }, 4599 { NULL, 0, 0, NULL } 4600 }; 4601 4602 static int 4603 dissect_rrlp_GANSSDeltaEpochHeader(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4604 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4605 ett_rrlp_GANSSDeltaEpochHeader, GANSSDeltaEpochHeader_sequence); 4606 4607 return offset; 4608 } 4609 4610 4611 4612 static int 4613 dissect_rrlp_OCTET_STRING_SIZE_1_49(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4614 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 4615 1, 49, FALSE, NULL); 4616 4617 return offset; 4618 } 4619 4620 4621 static const per_sequence_t GANSSDeltaElementList_sequence_of[1] = { 4622 { &hf_rrlp_GANSSDeltaElementList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OCTET_STRING_SIZE_1_49 }, 4623 }; 4624 4625 static int 4626 dissect_rrlp_GANSSDeltaElementList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4627 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4628 ett_rrlp_GANSSDeltaElementList, GANSSDeltaElementList_sequence_of, 4629 1, 32, FALSE); 4630 4631 return offset; 4632 } 4633 4634 4635 static const per_sequence_t GANSSEphemerisDeltaEpoch_sequence[] = { 4636 { &hf_rrlp_ganssDeltaEpochHeader, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSDeltaEpochHeader }, 4637 { &hf_rrlp_ganssDeltaElementList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSDeltaElementList }, 4638 { NULL, 0, 0, NULL } 4639 }; 4640 4641 static int 4642 dissect_rrlp_GANSSEphemerisDeltaEpoch(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4643 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4644 ett_rrlp_GANSSEphemerisDeltaEpoch, GANSSEphemerisDeltaEpoch_sequence); 4645 4646 return offset; 4647 } 4648 4649 4650 static const per_sequence_t GANSSEphemerisDeltaMatrix_sequence_of[1] = { 4651 { &hf_rrlp_GANSSEphemerisDeltaMatrix_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSEphemerisDeltaEpoch }, 4652 }; 4653 4654 static int 4655 dissect_rrlp_GANSSEphemerisDeltaMatrix(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4656 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4657 ett_rrlp_GANSSEphemerisDeltaMatrix, GANSSEphemerisDeltaMatrix_sequence_of, 4658 1, 128, FALSE); 4659 4660 return offset; 4661 } 4662 4663 4664 static const per_sequence_t GANSSEphemerisExtension_sequence[] = { 4665 { &hf_rrlp_ganssEphemerisHeader, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSEphemerisExtensionHeader }, 4666 { &hf_rrlp_ganssReferenceSet, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_SeqOfGANSSRefOrbit }, 4667 { &hf_rrlp_ganssephemerisDeltasMatrix, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSEphemerisDeltaMatrix }, 4668 { NULL, 0, 0, NULL } 4669 }; 4670 4671 static int 4672 dissect_rrlp_GANSSEphemerisExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4673 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4674 ett_rrlp_GANSSEphemerisExtension, GANSSEphemerisExtension_sequence); 4675 4676 return offset; 4677 } 4678 4679 4680 4681 static int 4682 dissect_rrlp_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4683 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 4684 64, 64, FALSE, NULL, 0, NULL, NULL); 4685 4686 return offset; 4687 } 4688 4689 4690 static const per_sequence_t GANSSSatEventsInfo_sequence[] = { 4691 { &hf_rrlp_eventOccured , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_64 }, 4692 { &hf_rrlp_futureEventNoted, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_64 }, 4693 { NULL, 0, 0, NULL } 4694 }; 4695 4696 static int 4697 dissect_rrlp_GANSSSatEventsInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4698 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4699 ett_rrlp_GANSSSatEventsInfo, GANSSSatEventsInfo_sequence); 4700 4701 return offset; 4702 } 4703 4704 4705 static const per_sequence_t GANSSEphemerisExtensionCheck_sequence[] = { 4706 { &hf_rrlp_ganssBeginTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSEphemerisExtensionTime }, 4707 { &hf_rrlp_ganssEndTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSEphemerisExtensionTime }, 4708 { &hf_rrlp_ganssSatEventsInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSatEventsInfo }, 4709 { NULL, 0, 0, NULL } 4710 }; 4711 4712 static int 4713 dissect_rrlp_GANSSEphemerisExtensionCheck(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4714 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4715 ett_rrlp_GANSSEphemerisExtensionCheck, GANSSEphemerisExtensionCheck_sequence); 4716 4717 return offset; 4718 } 4719 4720 4721 static const per_sequence_t UTCmodelSet2_sequence[] = { 4722 { &hf_rrlp_utcA0_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 4723 { &hf_rrlp_utcA1_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4096_4095 }, 4724 { &hf_rrlp_utcA2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M64_63 }, 4725 { &hf_rrlp_utcDeltaTls , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4726 { &hf_rrlp_utcTot_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 }, 4727 { &hf_rrlp_utcWNot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_8191 }, 4728 { &hf_rrlp_utcWNlsf , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4729 { &hf_rrlp_utcDN_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_4 }, 4730 { &hf_rrlp_utcDeltaTlsf , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4731 { NULL, 0, 0, NULL } 4732 }; 4733 4734 static int 4735 dissect_rrlp_UTCmodelSet2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4736 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4737 ett_rrlp_UTCmodelSet2, UTCmodelSet2_sequence); 4738 4739 return offset; 4740 } 4741 4742 4743 static const per_sequence_t UTCmodelSet3_sequence[] = { 4744 { &hf_rrlp_nA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_1461 }, 4745 { &hf_rrlp_tauC , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 4746 { &hf_rrlp_b1 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M1024_1023 }, 4747 { &hf_rrlp_b2 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M512_511 }, 4748 { &hf_rrlp_kp , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_BIT_STRING_SIZE_2 }, 4749 { NULL, 0, 0, NULL } 4750 }; 4751 4752 static int 4753 dissect_rrlp_UTCmodelSet3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4754 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4755 ett_rrlp_UTCmodelSet3, UTCmodelSet3_sequence); 4756 4757 return offset; 4758 } 4759 4760 4761 static const per_sequence_t UTCmodelSet4_sequence[] = { 4762 { &hf_rrlp_utcA1wnt , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 }, 4763 { &hf_rrlp_utcA0wnt , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 }, 4764 { &hf_rrlp_utcTot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4765 { &hf_rrlp_utcWNt , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4766 { &hf_rrlp_utcDeltaTls , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4767 { &hf_rrlp_utcWNlsf , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 }, 4768 { &hf_rrlp_utcDN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4769 { &hf_rrlp_utcDeltaTlsf , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4770 { &hf_rrlp_utcStandardID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 4771 { NULL, 0, 0, NULL } 4772 }; 4773 4774 static int 4775 dissect_rrlp_UTCmodelSet4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4776 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4777 ett_rrlp_UTCmodelSet4, UTCmodelSet4_sequence); 4778 4779 return offset; 4780 } 4781 4782 4783 static const value_string rrlp_GANSSAddUTCModel_vals[] = { 4784 { 0, "utcModel2" }, 4785 { 1, "utcModel3" }, 4786 { 2, "utcModel4" }, 4787 { 0, NULL } 4788 }; 4789 4790 static const per_choice_t GANSSAddUTCModel_choice[] = { 4791 { 0, &hf_rrlp_utcModel2 , ASN1_EXTENSION_ROOT , dissect_rrlp_UTCmodelSet2 }, 4792 { 1, &hf_rrlp_utcModel3 , ASN1_EXTENSION_ROOT , dissect_rrlp_UTCmodelSet3 }, 4793 { 2, &hf_rrlp_utcModel4 , ASN1_EXTENSION_ROOT , dissect_rrlp_UTCmodelSet4 }, 4794 { 0, NULL, 0, NULL } 4795 }; 4796 4797 static int 4798 dissect_rrlp_GANSSAddUTCModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4799 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 4800 ett_rrlp_GANSSAddUTCModel, GANSSAddUTCModel_choice, 4801 NULL); 4802 4803 return offset; 4804 } 4805 4806 4807 static const per_sequence_t GANSS_ID1_element_sequence[] = { 4808 { &hf_rrlp_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4809 { &hf_rrlp_signalsAvailable, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignals }, 4810 { NULL, 0, 0, NULL } 4811 }; 4812 4813 static int 4814 dissect_rrlp_GANSS_ID1_element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4815 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4816 ett_rrlp_GANSS_ID1_element, GANSS_ID1_element_sequence); 4817 4818 return offset; 4819 } 4820 4821 4822 static const per_sequence_t GANSS_ID1_sequence_of[1] = { 4823 { &hf_rrlp_GANSS_ID1_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_ID1_element }, 4824 }; 4825 4826 static int 4827 dissect_rrlp_GANSS_ID1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4828 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4829 ett_rrlp_GANSS_ID1, GANSS_ID1_sequence_of, 4830 1, 64, FALSE); 4831 4832 return offset; 4833 } 4834 4835 4836 4837 static int 4838 dissect_rrlp_INTEGER_M7_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4839 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 4840 -7, 13U, NULL, FALSE); 4841 4842 return offset; 4843 } 4844 4845 4846 static const per_sequence_t GANSS_ID3_element_sequence[] = { 4847 { &hf_rrlp_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4848 { &hf_rrlp_signalsAvailable, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignals }, 4849 { &hf_rrlp_channelNumber , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M7_13 }, 4850 { NULL, 0, 0, NULL } 4851 }; 4852 4853 static int 4854 dissect_rrlp_GANSS_ID3_element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4855 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4856 ett_rrlp_GANSS_ID3_element, GANSS_ID3_element_sequence); 4857 4858 return offset; 4859 } 4860 4861 4862 static const per_sequence_t GANSS_ID3_sequence_of[1] = { 4863 { &hf_rrlp_GANSS_ID3_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_ID3_element }, 4864 }; 4865 4866 static int 4867 dissect_rrlp_GANSS_ID3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4868 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4869 ett_rrlp_GANSS_ID3, GANSS_ID3_sequence_of, 4870 1, 64, FALSE); 4871 4872 return offset; 4873 } 4874 4875 4876 static const value_string rrlp_GANSSAuxiliaryInformation_vals[] = { 4877 { 0, "ganssID1" }, 4878 { 1, "ganssID3" }, 4879 { 0, NULL } 4880 }; 4881 4882 static const per_choice_t GANSSAuxiliaryInformation_choice[] = { 4883 { 0, &hf_rrlp_ganssID1 , ASN1_EXTENSION_ROOT , dissect_rrlp_GANSS_ID1 }, 4884 { 1, &hf_rrlp_ganssID3 , ASN1_EXTENSION_ROOT , dissect_rrlp_GANSS_ID3 }, 4885 { 0, NULL, 0, NULL } 4886 }; 4887 4888 static int 4889 dissect_rrlp_GANSSAuxiliaryInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4890 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 4891 ett_rrlp_GANSSAuxiliaryInformation, GANSSAuxiliaryInformation_choice, 4892 NULL); 4893 4894 return offset; 4895 } 4896 4897 4898 static const per_sequence_t DGANSSExtensionSgnElement_sequence[] = { 4899 { &hf_rrlp_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4900 { &hf_rrlp_udreGrowthRate , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 4901 { &hf_rrlp_udreValidityTime, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 4902 { NULL, 0, 0, NULL } 4903 }; 4904 4905 static int 4906 dissect_rrlp_DGANSSExtensionSgnElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4907 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4908 ett_rrlp_DGANSSExtensionSgnElement, DGANSSExtensionSgnElement_sequence); 4909 4910 return offset; 4911 } 4912 4913 4914 static const per_sequence_t SeqOfDGANSSExtensionSgnElement_sequence_of[1] = { 4915 { &hf_rrlp_SeqOfDGANSSExtensionSgnElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_DGANSSExtensionSgnElement }, 4916 }; 4917 4918 static int 4919 dissect_rrlp_SeqOfDGANSSExtensionSgnElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4920 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4921 ett_rrlp_SeqOfDGANSSExtensionSgnElement, SeqOfDGANSSExtensionSgnElement_sequence_of, 4922 1, 16, FALSE); 4923 4924 return offset; 4925 } 4926 4927 4928 static const per_sequence_t DGANSSExtensionSgnTypeElement_sequence[] = { 4929 { &hf_rrlp_ganssSignalID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID }, 4930 { &hf_rrlp_dganssExtensionSgnList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfDGANSSExtensionSgnElement }, 4931 { NULL, 0, 0, NULL } 4932 }; 4933 4934 static int 4935 dissect_rrlp_DGANSSExtensionSgnTypeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4936 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4937 ett_rrlp_DGANSSExtensionSgnTypeElement, DGANSSExtensionSgnTypeElement_sequence); 4938 4939 return offset; 4940 } 4941 4942 4943 static const per_sequence_t GANSSDiffCorrectionsValidityPeriod_sequence_of[1] = { 4944 { &hf_rrlp_GANSSDiffCorrectionsValidityPeriod_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_DGANSSExtensionSgnTypeElement }, 4945 }; 4946 4947 static int 4948 dissect_rrlp_GANSSDiffCorrectionsValidityPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4949 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4950 ett_rrlp_GANSSDiffCorrectionsValidityPeriod, GANSSDiffCorrectionsValidityPeriod_sequence_of, 4951 1, 3, FALSE); 4952 4953 return offset; 4954 } 4955 4956 4957 static const per_sequence_t GANSSTimeModelElement_R10_Ext_sequence[] = { 4958 { &hf_rrlp_gnssTOID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 4959 { &hf_rrlp_deltaT , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 4960 { NULL, 0, 0, NULL } 4961 }; 4962 4963 static int 4964 dissect_rrlp_GANSSTimeModelElement_R10_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4965 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4966 ett_rrlp_GANSSTimeModelElement_R10_Ext, GANSSTimeModelElement_R10_Ext_sequence); 4967 4968 return offset; 4969 } 4970 4971 4972 static const per_sequence_t SeqOfGANSSTimeModel_R10_Ext_sequence_of[1] = { 4973 { &hf_rrlp_SeqOfGANSSTimeModel_R10_Ext_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSTimeModelElement_R10_Ext }, 4974 }; 4975 4976 static int 4977 dissect_rrlp_SeqOfGANSSTimeModel_R10_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4978 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 4979 ett_rrlp_SeqOfGANSSTimeModel_R10_Ext, SeqOfGANSSTimeModel_R10_Ext_sequence_of, 4980 1, 7, FALSE); 4981 4982 return offset; 4983 } 4984 4985 4986 static const per_sequence_t GANSSRefMeasurement_R10_Ext_Element_sequence[] = { 4987 { &hf_rrlp_svID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 4988 { &hf_rrlp_azimuthLSB , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 }, 4989 { &hf_rrlp_elevationLSB , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 }, 4990 { NULL, 0, 0, NULL } 4991 }; 4992 4993 static int 4994 dissect_rrlp_GANSSRefMeasurement_R10_Ext_Element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 4995 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 4996 ett_rrlp_GANSSRefMeasurement_R10_Ext_Element, GANSSRefMeasurement_R10_Ext_Element_sequence); 4997 4998 return offset; 4999 } 5000 5001 5002 static const per_sequence_t GANSSRefMeasurementAssist_R10_Ext_sequence_of[1] = { 5003 { &hf_rrlp_GANSSRefMeasurementAssist_R10_Ext_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSRefMeasurement_R10_Ext_Element }, 5004 }; 5005 5006 static int 5007 dissect_rrlp_GANSSRefMeasurementAssist_R10_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5008 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5009 ett_rrlp_GANSSRefMeasurementAssist_R10_Ext, GANSSRefMeasurementAssist_R10_Ext_sequence_of, 5010 1, 16, FALSE); 5011 5012 return offset; 5013 } 5014 5015 5016 static const per_sequence_t GANSSAlmanacModel_R10_Ext_sequence[] = { 5017 { &hf_rrlp_completeAlmanacProvided, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 5018 { NULL, 0, 0, NULL } 5019 }; 5020 5021 static int 5022 dissect_rrlp_GANSSAlmanacModel_R10_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5023 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5024 ett_rrlp_GANSSAlmanacModel_R10_Ext, GANSSAlmanacModel_R10_Ext_sequence); 5025 5026 return offset; 5027 } 5028 5029 5030 static const per_sequence_t GANSSGenericAssistDataElement_sequence[] = { 5031 { &hf_rrlp_ganssID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_7 }, 5032 { &hf_rrlp_ganssTimeModel , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_SeqOfGANSSTimeModel }, 5033 { &hf_rrlp_ganssDiffCorrections, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSDiffCorrections }, 5034 { &hf_rrlp_ganssNavigationModel, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSNavModel }, 5035 { &hf_rrlp_ganssRealTimeIntegrity, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSRealTimeIntegrity }, 5036 { &hf_rrlp_ganssDataBitAssist, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSDataBitAssist }, 5037 { &hf_rrlp_ganssRefMeasurementAssist, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSRefMeasurementAssist }, 5038 { &hf_rrlp_ganssAlmanacModel, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSAlmanacModel }, 5039 { &hf_rrlp_ganssUTCModel , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSUTCModel }, 5040 { &hf_rrlp_ganssEphemerisExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSEphemerisExtension }, 5041 { &hf_rrlp_ganssEphemerisExtCheck, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSEphemerisExtensionCheck }, 5042 { &hf_rrlp_sbasID , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_7 }, 5043 { &hf_rrlp_ganssAddUTCModel, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSAddUTCModel }, 5044 { &hf_rrlp_ganssAuxiliaryInfo, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSAuxiliaryInformation }, 5045 { &hf_rrlp_ganssDiffCorrectionsValidityPeriod, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSDiffCorrectionsValidityPeriod }, 5046 { &hf_rrlp_ganssTimeModel_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_SeqOfGANSSTimeModel_R10_Ext }, 5047 { &hf_rrlp_ganssRefMeasurementAssist_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSRefMeasurementAssist_R10_Ext }, 5048 { &hf_rrlp_ganssAlmanacModel_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSAlmanacModel_R10_Ext }, 5049 { NULL, 0, 0, NULL } 5050 }; 5051 5052 static int 5053 dissect_rrlp_GANSSGenericAssistDataElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5054 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5055 ett_rrlp_GANSSGenericAssistDataElement, GANSSGenericAssistDataElement_sequence); 5056 5057 return offset; 5058 } 5059 5060 5061 static const per_sequence_t SeqOfGANSSGenericAssistDataElement_sequence_of[1] = { 5062 { &hf_rrlp_SeqOfGANSSGenericAssistDataElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSGenericAssistDataElement }, 5063 }; 5064 5065 static int 5066 dissect_rrlp_SeqOfGANSSGenericAssistDataElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5067 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5068 ett_rrlp_SeqOfGANSSGenericAssistDataElement, SeqOfGANSSGenericAssistDataElement_sequence_of, 5069 1, 8, FALSE); 5070 5071 return offset; 5072 } 5073 5074 5075 static const per_sequence_t GANSS_ControlHeader_sequence[] = { 5076 { &hf_rrlp_ganssCommonAssistData, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GANSSCommonAssistData }, 5077 { &hf_rrlp_ganssGenericAssistDataList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_SeqOfGANSSGenericAssistDataElement }, 5078 { NULL, 0, 0, NULL } 5079 }; 5080 5081 static int 5082 dissect_rrlp_GANSS_ControlHeader(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5083 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5084 ett_rrlp_GANSS_ControlHeader, GANSS_ControlHeader_sequence); 5085 5086 return offset; 5087 } 5088 5089 5090 static const per_sequence_t GANSS_AssistData_sequence[] = { 5091 { &hf_rrlp_ganss_controlHeader, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_ControlHeader }, 5092 { NULL, 0, 0, NULL } 5093 }; 5094 5095 static int 5096 dissect_rrlp_GANSS_AssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5097 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5098 ett_rrlp_GANSS_AssistData, GANSS_AssistData_sequence); 5099 5100 return offset; 5101 } 5102 5103 5104 5105 static int 5106 dissect_rrlp_RequiredResponseTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5107 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5108 1U, 128U, NULL, FALSE); 5109 5110 return offset; 5111 } 5112 5113 5114 static const per_sequence_t GPSEphemerisExtensionTime_sequence[] = { 5115 { &hf_rrlp_gpsWeek , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSWeek }, 5116 { &hf_rrlp_gpsTOW_02 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_604799 }, 5117 { NULL, 0, 0, NULL } 5118 }; 5119 5120 static int 5121 dissect_rrlp_GPSEphemerisExtensionTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5122 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5123 ett_rrlp_GPSEphemerisExtensionTime, GPSEphemerisExtensionTime_sequence); 5124 5125 return offset; 5126 } 5127 5128 5129 static const per_sequence_t GPSEphemerisExtensionHeader_sequence[] = { 5130 { &hf_rrlp_timeofEstimation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSEphemerisExtensionTime }, 5131 { &hf_rrlp_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_8 }, 5132 { &hf_rrlp_ephemerisExtensionDuration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_512 }, 5133 { NULL, 0, 0, NULL } 5134 }; 5135 5136 static int 5137 dissect_rrlp_GPSEphemerisExtensionHeader(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5138 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5139 ett_rrlp_GPSEphemerisExtensionHeader, GPSEphemerisExtensionHeader_sequence); 5140 5141 return offset; 5142 } 5143 5144 5145 static const per_sequence_t GPSClockModel_sequence[] = { 5146 { &hf_rrlp_af2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 5147 { &hf_rrlp_af1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 5148 { &hf_rrlp_af0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 }, 5149 { &hf_rrlp_tgd , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 }, 5150 { NULL, 0, 0, NULL } 5151 }; 5152 5153 static int 5154 dissect_rrlp_GPSClockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5155 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5156 ett_rrlp_GPSClockModel, GPSClockModel_sequence); 5157 5158 return offset; 5159 } 5160 5161 5162 static const per_sequence_t GPSReferenceOrbit_sequence[] = { 5163 { &hf_rrlp_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 5164 { &hf_rrlp_gpsOrbitModel , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_ReferenceNavModel }, 5165 { &hf_rrlp_gpsClockModel , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSClockModel }, 5166 { NULL, 0, 0, NULL } 5167 }; 5168 5169 static int 5170 dissect_rrlp_GPSReferenceOrbit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5171 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5172 ett_rrlp_GPSReferenceOrbit, GPSReferenceOrbit_sequence); 5173 5174 return offset; 5175 } 5176 5177 5178 static const per_sequence_t SeqOfGPSRefOrbit_sequence_of[1] = { 5179 { &hf_rrlp_SeqOfGPSRefOrbit_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSReferenceOrbit }, 5180 }; 5181 5182 static int 5183 dissect_rrlp_SeqOfGPSRefOrbit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5184 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5185 ett_rrlp_SeqOfGPSRefOrbit, SeqOfGPSRefOrbit_sequence_of, 5186 1, 32, FALSE); 5187 5188 return offset; 5189 } 5190 5191 5192 static const per_sequence_t GPSEphemerisDeltaBitSizes_sequence[] = { 5193 { &hf_rrlp_bitsize_delta_omega, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 5194 { &hf_rrlp_bitsize_delta_deltaN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 5195 { &hf_rrlp_bitsize_delta_m0, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 5196 { &hf_rrlp_bitsize_delta_omegadot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_24 }, 5197 { &hf_rrlp_bitsize_delta_e, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 5198 { &hf_rrlp_bitsize_delta_idot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_14 }, 5199 { &hf_rrlp_bitsize_delta_sqrtA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 5200 { &hf_rrlp_bitsize_delta_i0, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 5201 { &hf_rrlp_bitsize_delta_omega0, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 }, 5202 { &hf_rrlp_bitsize_delta_crs, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 5203 { &hf_rrlp_bitsize_delta_cis, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 5204 { &hf_rrlp_bitsize_delta_cus, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 5205 { &hf_rrlp_bitsize_delta_crc, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 5206 { &hf_rrlp_bitsize_delta_cic, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 5207 { &hf_rrlp_bitsize_delta_cuc, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 }, 5208 { &hf_rrlp_bitsize_delta_tgd, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_10 }, 5209 { NULL, 0, 0, NULL } 5210 }; 5211 5212 static int 5213 dissect_rrlp_GPSEphemerisDeltaBitSizes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5214 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5215 ett_rrlp_GPSEphemerisDeltaBitSizes, GPSEphemerisDeltaBitSizes_sequence); 5216 5217 return offset; 5218 } 5219 5220 5221 static const per_sequence_t GPSEphemerisDeltaScales_sequence[] = { 5222 { &hf_rrlp_scale_delta_omega, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5223 { &hf_rrlp_scale_delta_deltaN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5224 { &hf_rrlp_scale_delta_m0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5225 { &hf_rrlp_scale_delta_omegadot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5226 { &hf_rrlp_scale_delta_e , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5227 { &hf_rrlp_scale_delta_idot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5228 { &hf_rrlp_scale_delta_sqrtA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5229 { &hf_rrlp_scale_delta_i0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5230 { &hf_rrlp_scale_delta_omega0, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5231 { &hf_rrlp_scale_delta_crs, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5232 { &hf_rrlp_scale_delta_cis, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5233 { &hf_rrlp_scale_delta_cus, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5234 { &hf_rrlp_scale_delta_crc, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5235 { &hf_rrlp_scale_delta_cic, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5236 { &hf_rrlp_scale_delta_cuc, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5237 { &hf_rrlp_scale_delta_tgd, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 }, 5238 { NULL, 0, 0, NULL } 5239 }; 5240 5241 static int 5242 dissect_rrlp_GPSEphemerisDeltaScales(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5243 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5244 ett_rrlp_GPSEphemerisDeltaScales, GPSEphemerisDeltaScales_sequence); 5245 5246 return offset; 5247 } 5248 5249 5250 static const per_sequence_t GPSDeltaEpochHeader_sequence[] = { 5251 { &hf_rrlp_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_1_8 }, 5252 { &hf_rrlp_ephemerisDeltaSizes_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSEphemerisDeltaBitSizes }, 5253 { &hf_rrlp_ephemerisDeltaScales_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSEphemerisDeltaScales }, 5254 { NULL, 0, 0, NULL } 5255 }; 5256 5257 static int 5258 dissect_rrlp_GPSDeltaEpochHeader(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5259 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5260 ett_rrlp_GPSDeltaEpochHeader, GPSDeltaEpochHeader_sequence); 5261 5262 return offset; 5263 } 5264 5265 5266 5267 static int 5268 dissect_rrlp_OCTET_STRING_SIZE_1_47(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5269 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 5270 1, 47, FALSE, NULL); 5271 5272 return offset; 5273 } 5274 5275 5276 static const per_sequence_t GPSDeltaElementList_sequence_of[1] = { 5277 { &hf_rrlp_GPSDeltaElementList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OCTET_STRING_SIZE_1_47 }, 5278 }; 5279 5280 static int 5281 dissect_rrlp_GPSDeltaElementList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5282 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5283 ett_rrlp_GPSDeltaElementList, GPSDeltaElementList_sequence_of, 5284 1, 32, FALSE); 5285 5286 return offset; 5287 } 5288 5289 5290 static const per_sequence_t GPSEphemerisDeltaEpoch_sequence[] = { 5291 { &hf_rrlp_gpsDeltaEpochHeader, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSDeltaEpochHeader }, 5292 { &hf_rrlp_gpsDeltaElementList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSDeltaElementList }, 5293 { NULL, 0, 0, NULL } 5294 }; 5295 5296 static int 5297 dissect_rrlp_GPSEphemerisDeltaEpoch(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5298 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5299 ett_rrlp_GPSEphemerisDeltaEpoch, GPSEphemerisDeltaEpoch_sequence); 5300 5301 return offset; 5302 } 5303 5304 5305 static const per_sequence_t GPSEphemerisDeltaMatrix_sequence_of[1] = { 5306 { &hf_rrlp_GPSEphemerisDeltaMatrix_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSEphemerisDeltaEpoch }, 5307 }; 5308 5309 static int 5310 dissect_rrlp_GPSEphemerisDeltaMatrix(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5311 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5312 ett_rrlp_GPSEphemerisDeltaMatrix, GPSEphemerisDeltaMatrix_sequence_of, 5313 1, 128, FALSE); 5314 5315 return offset; 5316 } 5317 5318 5319 static const per_sequence_t GPSEphemerisExtension_sequence[] = { 5320 { &hf_rrlp_gpsEphemerisHeader, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSEphemerisExtensionHeader }, 5321 { &hf_rrlp_gpsReferenceSet, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_SeqOfGPSRefOrbit }, 5322 { &hf_rrlp_gpsephemerisDeltaMatrix, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSEphemerisDeltaMatrix }, 5323 { NULL, 0, 0, NULL } 5324 }; 5325 5326 static int 5327 dissect_rrlp_GPSEphemerisExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5328 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5329 ett_rrlp_GPSEphemerisExtension, GPSEphemerisExtension_sequence); 5330 5331 return offset; 5332 } 5333 5334 5335 5336 static int 5337 dissect_rrlp_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5338 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 5339 32, 32, FALSE, NULL, 0, NULL, NULL); 5340 5341 return offset; 5342 } 5343 5344 5345 static const per_sequence_t GPSSatEventsInfo_sequence[] = { 5346 { &hf_rrlp_eventOccured_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_32 }, 5347 { &hf_rrlp_futureEventNoted_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_32 }, 5348 { NULL, 0, 0, NULL } 5349 }; 5350 5351 static int 5352 dissect_rrlp_GPSSatEventsInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5353 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5354 ett_rrlp_GPSSatEventsInfo, GPSSatEventsInfo_sequence); 5355 5356 return offset; 5357 } 5358 5359 5360 static const per_sequence_t GPSEphemerisExtensionCheck_sequence[] = { 5361 { &hf_rrlp_gpsBeginTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSEphemerisExtensionTime }, 5362 { &hf_rrlp_gpsEndTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSEphemerisExtensionTime }, 5363 { &hf_rrlp_gpsSatEventsInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSSatEventsInfo }, 5364 { NULL, 0, 0, NULL } 5365 }; 5366 5367 static int 5368 dissect_rrlp_GPSEphemerisExtensionCheck(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5369 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5370 ett_rrlp_GPSEphemerisExtensionCheck, GPSEphemerisExtensionCheck_sequence); 5371 5372 return offset; 5373 } 5374 5375 5376 static const per_sequence_t DGPSExtensionSatElement_sequence[] = { 5377 { &hf_rrlp_satelliteID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 5378 { &hf_rrlp_udreGrowthRate , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 5379 { &hf_rrlp_udreValidityTime, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 5380 { NULL, 0, 0, NULL } 5381 }; 5382 5383 static int 5384 dissect_rrlp_DGPSExtensionSatElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5385 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5386 ett_rrlp_DGPSExtensionSatElement, DGPSExtensionSatElement_sequence); 5387 5388 return offset; 5389 } 5390 5391 5392 static const per_sequence_t DGPSCorrectionsValidityPeriod_sequence_of[1] = { 5393 { &hf_rrlp_DGPSCorrectionsValidityPeriod_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_DGPSExtensionSatElement }, 5394 }; 5395 5396 static int 5397 dissect_rrlp_DGPSCorrectionsValidityPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5398 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5399 ett_rrlp_DGPSCorrectionsValidityPeriod, DGPSCorrectionsValidityPeriod_sequence_of, 5400 1, 16, FALSE); 5401 5402 return offset; 5403 } 5404 5405 5406 static const per_sequence_t GPSReferenceTime_R10_Ext_sequence[] = { 5407 { &hf_rrlp_gpsWeekCycleNumber, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 5408 { NULL, 0, 0, NULL } 5409 }; 5410 5411 static int 5412 dissect_rrlp_GPSReferenceTime_R10_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5413 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5414 ett_rrlp_GPSReferenceTime_R10_Ext, GPSReferenceTime_R10_Ext_sequence); 5415 5416 return offset; 5417 } 5418 5419 5420 static const per_sequence_t GPSAcquisAssist_R10_Ext_Element_sequence[] = { 5421 { &hf_rrlp_satelliteID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 5422 { &hf_rrlp_azimuthLSB , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 }, 5423 { &hf_rrlp_elevationLSB , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 }, 5424 { NULL, 0, 0, NULL } 5425 }; 5426 5427 static int 5428 dissect_rrlp_GPSAcquisAssist_R10_Ext_Element(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5429 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5430 ett_rrlp_GPSAcquisAssist_R10_Ext_Element, GPSAcquisAssist_R10_Ext_Element_sequence); 5431 5432 return offset; 5433 } 5434 5435 5436 static const per_sequence_t GPSAcquisAssist_R10_Ext_sequence_of[1] = { 5437 { &hf_rrlp_GPSAcquisAssist_R10_Ext_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSAcquisAssist_R10_Ext_Element }, 5438 }; 5439 5440 static int 5441 dissect_rrlp_GPSAcquisAssist_R10_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5442 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5443 ett_rrlp_GPSAcquisAssist_R10_Ext, GPSAcquisAssist_R10_Ext_sequence_of, 5444 1, 16, FALSE); 5445 5446 return offset; 5447 } 5448 5449 5450 static const per_sequence_t GPSAlmanac_R10_Ext_sequence[] = { 5451 { &hf_rrlp_completeAlmanacProvided, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN }, 5452 { NULL, 0, 0, NULL } 5453 }; 5454 5455 static int 5456 dissect_rrlp_GPSAlmanac_R10_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5457 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5458 ett_rrlp_GPSAlmanac_R10_Ext, GPSAlmanac_R10_Ext_sequence); 5459 5460 return offset; 5461 } 5462 5463 5464 static const per_sequence_t Add_GPS_ControlHeader_sequence[] = { 5465 { &hf_rrlp_gpsEphemerisExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSEphemerisExtension }, 5466 { &hf_rrlp_gpsEphemerisExtensionCheck, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSEphemerisExtensionCheck }, 5467 { &hf_rrlp_dgpsCorrectionsValidityPeriod, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_DGPSCorrectionsValidityPeriod }, 5468 { &hf_rrlp_gpsReferenceTime_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GPSReferenceTime_R10_Ext }, 5469 { &hf_rrlp_gpsAcquisAssist_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GPSAcquisAssist_R10_Ext }, 5470 { &hf_rrlp_gpsAlmanac_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GPSAlmanac_R10_Ext }, 5471 { NULL, 0, 0, NULL } 5472 }; 5473 5474 static int 5475 dissect_rrlp_Add_GPS_ControlHeader(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5476 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5477 ett_rrlp_Add_GPS_ControlHeader, Add_GPS_ControlHeader_sequence); 5478 5479 return offset; 5480 } 5481 5482 5483 static const per_sequence_t Add_GPS_AssistData_sequence[] = { 5484 { &hf_rrlp_add_GPS_controlHeader, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_Add_GPS_ControlHeader }, 5485 { NULL, 0, 0, NULL } 5486 }; 5487 5488 static int 5489 dissect_rrlp_Add_GPS_AssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5490 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5491 ett_rrlp_Add_GPS_AssistData, Add_GPS_AssistData_sequence); 5492 5493 return offset; 5494 } 5495 5496 5497 static const per_sequence_t Rel7_MsrPosition_Req_Extension_sequence[] = { 5498 { &hf_rrlp_velocityRequested, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_NULL }, 5499 { &hf_rrlp_ganssPositionMethod, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSPositioningMethod }, 5500 { &hf_rrlp_ganss_AssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSS_AssistData }, 5501 { &hf_rrlp_ganssCarrierPhaseMeasurementRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_NULL }, 5502 { &hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_NULL }, 5503 { &hf_rrlp_requiredResponseTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_RequiredResponseTime }, 5504 { &hf_rrlp_add_GPS_AssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_Add_GPS_AssistData }, 5505 { &hf_rrlp_ganssMultiFreqMeasurementRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_NULL }, 5506 { NULL, 0, 0, NULL } 5507 }; 5508 5509 static int 5510 dissect_rrlp_Rel7_MsrPosition_Req_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5511 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5512 ett_rrlp_Rel7_MsrPosition_Req_Extension, Rel7_MsrPosition_Req_Extension_sequence); 5513 5514 return offset; 5515 } 5516 5517 5518 static const per_sequence_t MsrPosition_Req_sequence[] = { 5519 { &hf_rrlp_positionInstruct, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_PositionInstruct }, 5520 { &hf_rrlp_referenceAssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ReferenceAssistData }, 5521 { &hf_rrlp_msrAssistData , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_MsrAssistData }, 5522 { &hf_rrlp_systemInfoAssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_SystemInfoAssistData }, 5523 { &hf_rrlp_gps_AssistData , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPS_AssistData }, 5524 { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ExtensionContainer }, 5525 { &hf_rrlp_rel98_MsrPosition_Req_extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel98_MsrPosition_Req_Extension }, 5526 { &hf_rrlp_rel5_MsrPosition_Req_extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel5_MsrPosition_Req_Extension }, 5527 { &hf_rrlp_rel7_MsrPosition_Req_extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel7_MsrPosition_Req_Extension }, 5528 { NULL, 0, 0, NULL } 5529 }; 5530 5531 static int 5532 dissect_rrlp_MsrPosition_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5533 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5534 ett_rrlp_MsrPosition_Req, MsrPosition_Req_sequence); 5535 5536 return offset; 5537 } 5538 5539 5540 5541 static int 5542 dissect_rrlp_INTEGER_2_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5543 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5544 2U, 3U, NULL, FALSE); 5545 5546 return offset; 5547 } 5548 5549 5550 5551 static int 5552 dissect_rrlp_INTEGER_1_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5553 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5554 1U, 3U, NULL, FALSE); 5555 5556 return offset; 5557 } 5558 5559 5560 static const value_string rrlp_ReferenceRelation_vals[] = { 5561 { 0, "secondBTSThirdSet" }, 5562 { 1, "secondBTSSecondSet" }, 5563 { 2, "firstBTSFirstSet" }, 5564 { 0, NULL } 5565 }; 5566 5567 5568 static int 5569 dissect_rrlp_ReferenceRelation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5570 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 5571 3, NULL, FALSE, 0, NULL); 5572 5573 return offset; 5574 } 5575 5576 5577 static const per_sequence_t MultipleSets_sequence[] = { 5578 { &hf_rrlp_nbrOfSets , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_2_3 }, 5579 { &hf_rrlp_nbrOfReferenceBTSs, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_3 }, 5580 { &hf_rrlp_referenceRelation, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_ReferenceRelation }, 5581 { NULL, 0, 0, NULL } 5582 }; 5583 5584 static int 5585 dissect_rrlp_MultipleSets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5586 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5587 ett_rrlp_MultipleSets, MultipleSets_sequence); 5588 5589 return offset; 5590 } 5591 5592 5593 static const per_sequence_t BSICAndCarrier_sequence[] = { 5594 { &hf_rrlp_carrier , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier }, 5595 { &hf_rrlp_bsic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC }, 5596 { NULL, 0, 0, NULL } 5597 }; 5598 5599 static int 5600 dissect_rrlp_BSICAndCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5601 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5602 ett_rrlp_BSICAndCarrier, BSICAndCarrier_sequence); 5603 5604 return offset; 5605 } 5606 5607 5608 5609 static int 5610 dissect_rrlp_CellID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5611 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5612 0U, 65535U, NULL, FALSE); 5613 5614 return offset; 5615 } 5616 5617 5618 5619 static int 5620 dissect_rrlp_RequestIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5621 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5622 1U, 16U, NULL, FALSE); 5623 5624 return offset; 5625 } 5626 5627 5628 5629 static int 5630 dissect_rrlp_SystemInfoIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5631 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5632 1U, 32U, NULL, FALSE); 5633 5634 return offset; 5635 } 5636 5637 5638 5639 static int 5640 dissect_rrlp_LAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5641 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5642 0U, 65535U, NULL, FALSE); 5643 5644 return offset; 5645 } 5646 5647 5648 static const per_sequence_t CellIDAndLAC_sequence[] = { 5649 { &hf_rrlp_referenceLAC , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_LAC }, 5650 { &hf_rrlp_referenceCI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_CellID }, 5651 { NULL, 0, 0, NULL } 5652 }; 5653 5654 static int 5655 dissect_rrlp_CellIDAndLAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5656 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5657 ett_rrlp_CellIDAndLAC, CellIDAndLAC_sequence); 5658 5659 return offset; 5660 } 5661 5662 5663 static const value_string rrlp_ReferenceIdentityType_vals[] = { 5664 { 0, "bsicAndCarrier" }, 5665 { 1, "ci" }, 5666 { 2, "requestIndex" }, 5667 { 3, "systemInfoIndex" }, 5668 { 4, "ciAndLAC" }, 5669 { 0, NULL } 5670 }; 5671 5672 static const per_choice_t ReferenceIdentityType_choice[] = { 5673 { 0, &hf_rrlp_bsicAndCarrier , ASN1_NO_EXTENSIONS , dissect_rrlp_BSICAndCarrier }, 5674 { 1, &hf_rrlp_ci , ASN1_NO_EXTENSIONS , dissect_rrlp_CellID }, 5675 { 2, &hf_rrlp_requestIndex , ASN1_NO_EXTENSIONS , dissect_rrlp_RequestIndex }, 5676 { 3, &hf_rrlp_systemInfoIndex, ASN1_NO_EXTENSIONS , dissect_rrlp_SystemInfoIndex }, 5677 { 4, &hf_rrlp_ciAndLAC , ASN1_NO_EXTENSIONS , dissect_rrlp_CellIDAndLAC }, 5678 { 0, NULL, 0, NULL } 5679 }; 5680 5681 static int 5682 dissect_rrlp_ReferenceIdentityType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5683 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 5684 ett_rrlp_ReferenceIdentityType, ReferenceIdentityType_choice, 5685 NULL); 5686 5687 return offset; 5688 } 5689 5690 5691 static const per_sequence_t SeqOfReferenceIdentityType_sequence_of[1] = { 5692 { &hf_rrlp_SeqOfReferenceIdentityType_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ReferenceIdentityType }, 5693 }; 5694 5695 static int 5696 dissect_rrlp_SeqOfReferenceIdentityType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5697 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5698 ett_rrlp_SeqOfReferenceIdentityType, SeqOfReferenceIdentityType_sequence_of, 5699 1, 3, FALSE); 5700 5701 return offset; 5702 } 5703 5704 5705 static const per_sequence_t ReferenceIdentity_sequence[] = { 5706 { &hf_rrlp_refBTSList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfReferenceIdentityType }, 5707 { NULL, 0, 0, NULL } 5708 }; 5709 5710 static int 5711 dissect_rrlp_ReferenceIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5712 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5713 ett_rrlp_ReferenceIdentity, ReferenceIdentity_sequence); 5714 5715 return offset; 5716 } 5717 5718 5719 5720 static int 5721 dissect_rrlp_INTEGER_0_42431(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5722 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5723 0U, 42431U, NULL, FALSE); 5724 5725 return offset; 5726 } 5727 5728 5729 5730 static int 5731 dissect_rrlp_ModuloTimeSlot(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5732 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5733 0U, 3U, NULL, FALSE); 5734 5735 return offset; 5736 } 5737 5738 5739 5740 static int 5741 dissect_rrlp_RefQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5742 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5743 0U, 31U, NULL, FALSE); 5744 5745 return offset; 5746 } 5747 5748 5749 5750 static int 5751 dissect_rrlp_NumOfMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5752 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5753 0U, 7U, NULL, FALSE); 5754 5755 return offset; 5756 } 5757 5758 5759 static const per_sequence_t TOA_MeasurementsOfRef_sequence[] = { 5760 { &hf_rrlp_refQuality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_RefQuality }, 5761 { &hf_rrlp_numOfMeasurements, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_NumOfMeasurements }, 5762 { NULL, 0, 0, NULL } 5763 }; 5764 5765 static int 5766 dissect_rrlp_TOA_MeasurementsOfRef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5767 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5768 ett_rrlp_TOA_MeasurementsOfRef, TOA_MeasurementsOfRef_sequence); 5769 5770 return offset; 5771 } 5772 5773 5774 5775 static int 5776 dissect_rrlp_StdResolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5777 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5778 0U, 3U, NULL, FALSE); 5779 5780 return offset; 5781 } 5782 5783 5784 5785 static int 5786 dissect_rrlp_INTEGER_0_960(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5787 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5788 0U, 960U, NULL, FALSE); 5789 5790 return offset; 5791 } 5792 5793 5794 static const per_sequence_t MultiFrameCarrier_sequence[] = { 5795 { &hf_rrlp_bcchCarrier , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier }, 5796 { &hf_rrlp_multiFrameOffset, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MultiFrameOffset }, 5797 { NULL, 0, 0, NULL } 5798 }; 5799 5800 static int 5801 dissect_rrlp_MultiFrameCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5802 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5803 ett_rrlp_MultiFrameCarrier, MultiFrameCarrier_sequence); 5804 5805 return offset; 5806 } 5807 5808 5809 static const value_string rrlp_NeighborIdentity_vals[] = { 5810 { 0, "bsicAndCarrier" }, 5811 { 1, "ci" }, 5812 { 2, "multiFrameCarrier" }, 5813 { 3, "requestIndex" }, 5814 { 4, "systemInfoIndex" }, 5815 { 5, "ciAndLAC" }, 5816 { 0, NULL } 5817 }; 5818 5819 static const per_choice_t NeighborIdentity_choice[] = { 5820 { 0, &hf_rrlp_bsicAndCarrier , ASN1_NO_EXTENSIONS , dissect_rrlp_BSICAndCarrier }, 5821 { 1, &hf_rrlp_ci , ASN1_NO_EXTENSIONS , dissect_rrlp_CellID }, 5822 { 2, &hf_rrlp_multiFrameCarrier, ASN1_NO_EXTENSIONS , dissect_rrlp_MultiFrameCarrier }, 5823 { 3, &hf_rrlp_requestIndex , ASN1_NO_EXTENSIONS , dissect_rrlp_RequestIndex }, 5824 { 4, &hf_rrlp_systemInfoIndex, ASN1_NO_EXTENSIONS , dissect_rrlp_SystemInfoIndex }, 5825 { 5, &hf_rrlp_ciAndLAC , ASN1_NO_EXTENSIONS , dissect_rrlp_CellIDAndLAC }, 5826 { 0, NULL, 0, NULL } 5827 }; 5828 5829 static int 5830 dissect_rrlp_NeighborIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5831 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 5832 ett_rrlp_NeighborIdentity, NeighborIdentity_choice, 5833 NULL); 5834 5835 return offset; 5836 } 5837 5838 5839 static const per_sequence_t EOTDQuality_sequence[] = { 5840 { &hf_rrlp_nbrOfMeasurements, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 5841 { &hf_rrlp_stdOfEOTD , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 }, 5842 { NULL, 0, 0, NULL } 5843 }; 5844 5845 static int 5846 dissect_rrlp_EOTDQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5847 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5848 ett_rrlp_EOTDQuality, EOTDQuality_sequence); 5849 5850 return offset; 5851 } 5852 5853 5854 5855 static int 5856 dissect_rrlp_OTDValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5857 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 5858 0U, 39999U, NULL, FALSE); 5859 5860 return offset; 5861 } 5862 5863 5864 static const per_sequence_t OTD_MeasurementWithID_sequence[] = { 5865 { &hf_rrlp_neighborIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_NeighborIdentity }, 5866 { &hf_rrlp_nborTimeSlot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ModuloTimeSlot }, 5867 { &hf_rrlp_eotdQuality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_EOTDQuality }, 5868 { &hf_rrlp_otdValue , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OTDValue }, 5869 { NULL, 0, 0, NULL } 5870 }; 5871 5872 static int 5873 dissect_rrlp_OTD_MeasurementWithID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5874 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5875 ett_rrlp_OTD_MeasurementWithID, OTD_MeasurementWithID_sequence); 5876 5877 return offset; 5878 } 5879 5880 5881 5882 static int 5883 dissect_rrlp_OTD_FirstSetMsrs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5884 offset = dissect_rrlp_OTD_MeasurementWithID(tvb, offset, actx, tree, hf_index); 5885 5886 return offset; 5887 } 5888 5889 5890 static const per_sequence_t SeqOfOTD_FirstSetMsrs_sequence_of[1] = { 5891 { &hf_rrlp_SeqOfOTD_FirstSetMsrs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_FirstSetMsrs }, 5892 }; 5893 5894 static int 5895 dissect_rrlp_SeqOfOTD_FirstSetMsrs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5896 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5897 ett_rrlp_SeqOfOTD_FirstSetMsrs, SeqOfOTD_FirstSetMsrs_sequence_of, 5898 1, 10, FALSE); 5899 5900 return offset; 5901 } 5902 5903 5904 static const per_sequence_t OTD_MsrElementFirst_sequence[] = { 5905 { &hf_rrlp_refFrameNumber , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_42431 }, 5906 { &hf_rrlp_referenceTimeSlot, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ModuloTimeSlot }, 5907 { &hf_rrlp_toaMeasurementsOfRef, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_TOA_MeasurementsOfRef }, 5908 { &hf_rrlp_stdResolution , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_StdResolution }, 5909 { &hf_rrlp_taCorrection , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_960 }, 5910 { &hf_rrlp_otd_FirstSetMsrs, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_SeqOfOTD_FirstSetMsrs }, 5911 { NULL, 0, 0, NULL } 5912 }; 5913 5914 static int 5915 dissect_rrlp_OTD_MsrElementFirst(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5916 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5917 ett_rrlp_OTD_MsrElementFirst, OTD_MsrElementFirst_sequence); 5918 5919 return offset; 5920 } 5921 5922 5923 static const per_sequence_t OTD_Measurement_sequence[] = { 5924 { &hf_rrlp_nborTimeSlot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ModuloTimeSlot }, 5925 { &hf_rrlp_eotdQuality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_EOTDQuality }, 5926 { &hf_rrlp_otdValue , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OTDValue }, 5927 { NULL, 0, 0, NULL } 5928 }; 5929 5930 static int 5931 dissect_rrlp_OTD_Measurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5932 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5933 ett_rrlp_OTD_Measurement, OTD_Measurement_sequence); 5934 5935 return offset; 5936 } 5937 5938 5939 static const value_string rrlp_OTD_MsrsOfOtherSets_vals[] = { 5940 { 0, "identityNotPresent" }, 5941 { 1, "identityPresent" }, 5942 { 0, NULL } 5943 }; 5944 5945 static const per_choice_t OTD_MsrsOfOtherSets_choice[] = { 5946 { 0, &hf_rrlp_identityNotPresent, ASN1_NO_EXTENSIONS , dissect_rrlp_OTD_Measurement }, 5947 { 1, &hf_rrlp_identityPresent, ASN1_NO_EXTENSIONS , dissect_rrlp_OTD_MeasurementWithID }, 5948 { 0, NULL, 0, NULL } 5949 }; 5950 5951 static int 5952 dissect_rrlp_OTD_MsrsOfOtherSets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5953 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 5954 ett_rrlp_OTD_MsrsOfOtherSets, OTD_MsrsOfOtherSets_choice, 5955 NULL); 5956 5957 return offset; 5958 } 5959 5960 5961 static const per_sequence_t SeqOfOTD_MsrsOfOtherSets_sequence_of[1] = { 5962 { &hf_rrlp_SeqOfOTD_MsrsOfOtherSets_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_MsrsOfOtherSets }, 5963 }; 5964 5965 static int 5966 dissect_rrlp_SeqOfOTD_MsrsOfOtherSets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5967 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 5968 ett_rrlp_SeqOfOTD_MsrsOfOtherSets, SeqOfOTD_MsrsOfOtherSets_sequence_of, 5969 1, 10, FALSE); 5970 5971 return offset; 5972 } 5973 5974 5975 static const per_sequence_t OTD_MsrElementRest_sequence[] = { 5976 { &hf_rrlp_refFrameNumber , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_42431 }, 5977 { &hf_rrlp_referenceTimeSlot, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_ModuloTimeSlot }, 5978 { &hf_rrlp_toaMeasurementsOfRef, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_TOA_MeasurementsOfRef }, 5979 { &hf_rrlp_stdResolution , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_StdResolution }, 5980 { &hf_rrlp_taCorrection , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_960 }, 5981 { &hf_rrlp_otd_MsrsOfOtherSets, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_SeqOfOTD_MsrsOfOtherSets }, 5982 { NULL, 0, 0, NULL } 5983 }; 5984 5985 static int 5986 dissect_rrlp_OTD_MsrElementRest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 5987 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 5988 ett_rrlp_OTD_MsrElementRest, OTD_MsrElementRest_sequence); 5989 5990 return offset; 5991 } 5992 5993 5994 static const per_sequence_t SeqOfOTD_MsrElementRest_sequence_of[1] = { 5995 { &hf_rrlp_SeqOfOTD_MsrElementRest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_MsrElementRest }, 5996 }; 5997 5998 static int 5999 dissect_rrlp_SeqOfOTD_MsrElementRest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6000 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6001 ett_rrlp_SeqOfOTD_MsrElementRest, SeqOfOTD_MsrElementRest_sequence_of, 6002 1, 2, FALSE); 6003 6004 return offset; 6005 } 6006 6007 6008 static const per_sequence_t OTD_MeasureInfo_sequence[] = { 6009 { &hf_rrlp_otdMsrFirstSets, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_MsrElementFirst }, 6010 { &hf_rrlp_otdMsrRestSets , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_SeqOfOTD_MsrElementRest }, 6011 { NULL, 0, 0, NULL } 6012 }; 6013 6014 static int 6015 dissect_rrlp_OTD_MeasureInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6016 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6017 ett_rrlp_OTD_MeasureInfo, OTD_MeasureInfo_sequence); 6018 6019 return offset; 6020 } 6021 6022 6023 6024 static int 6025 dissect_rrlp_INTEGER_0_14399999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6026 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 6027 0U, 14399999U, NULL, FALSE); 6028 6029 return offset; 6030 } 6031 6032 6033 static const value_string rrlp_FixType_vals[] = { 6034 { 0, "twoDFix" }, 6035 { 1, "threeDFix" }, 6036 { 0, NULL } 6037 }; 6038 6039 6040 static int 6041 dissect_rrlp_FixType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6042 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 6043 0U, 1U, NULL, FALSE); 6044 6045 return offset; 6046 } 6047 6048 6049 static const per_sequence_t LocationInfo_sequence[] = { 6050 { &hf_rrlp_refFrame , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 }, 6051 { &hf_rrlp_gpsTOW , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_14399999 }, 6052 { &hf_rrlp_fixType , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_FixType }, 6053 { &hf_rrlp_posEstimate , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_Ext_GeographicalInformation }, 6054 { NULL, 0, 0, NULL } 6055 }; 6056 6057 static int 6058 dissect_rrlp_LocationInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6059 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6060 ett_rrlp_LocationInfo, LocationInfo_sequence); 6061 6062 return offset; 6063 } 6064 6065 6066 6067 static int 6068 dissect_rrlp_GPSTOW24b(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6069 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 6070 0U, 14399999U, NULL, FALSE); 6071 6072 return offset; 6073 } 6074 6075 6076 6077 static int 6078 dissect_rrlp_INTEGER_0_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6079 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 6080 0U, 1024U, NULL, FALSE); 6081 6082 return offset; 6083 } 6084 6085 6086 static const value_string rrlp_MpathIndic_vals[] = { 6087 { 0, "notMeasured" }, 6088 { 1, "low" }, 6089 { 2, "medium" }, 6090 { 3, "high" }, 6091 { 0, NULL } 6092 }; 6093 6094 6095 static int 6096 dissect_rrlp_MpathIndic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6097 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 6098 4, NULL, FALSE, 0, NULL); 6099 6100 return offset; 6101 } 6102 6103 6104 static const per_sequence_t GPS_MsrElement_sequence[] = { 6105 { &hf_rrlp_satelliteID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID }, 6106 { &hf_rrlp_cNo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 }, 6107 { &hf_rrlp_doppler , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 }, 6108 { &hf_rrlp_wholeChips , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1022 }, 6109 { &hf_rrlp_fracChips , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1024 }, 6110 { &hf_rrlp_mpathIndic , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MpathIndic }, 6111 { &hf_rrlp_pseuRangeRMSErr, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 }, 6112 { NULL, 0, 0, NULL } 6113 }; 6114 6115 static int 6116 dissect_rrlp_GPS_MsrElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6117 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6118 ett_rrlp_GPS_MsrElement, GPS_MsrElement_sequence); 6119 6120 return offset; 6121 } 6122 6123 6124 static const per_sequence_t SeqOfGPS_MsrElement_sequence_of[1] = { 6125 { &hf_rrlp_SeqOfGPS_MsrElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPS_MsrElement }, 6126 }; 6127 6128 static int 6129 dissect_rrlp_SeqOfGPS_MsrElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6130 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6131 ett_rrlp_SeqOfGPS_MsrElement, SeqOfGPS_MsrElement_sequence_of, 6132 1, 16, FALSE); 6133 6134 return offset; 6135 } 6136 6137 6138 static const per_sequence_t GPS_MsrSetElement_sequence[] = { 6139 { &hf_rrlp_refFrame , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_65535 }, 6140 { &hf_rrlp_gpsTOW_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTOW24b }, 6141 { &hf_rrlp_gps_msrList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGPS_MsrElement }, 6142 { NULL, 0, 0, NULL } 6143 }; 6144 6145 static int 6146 dissect_rrlp_GPS_MsrSetElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6147 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6148 ett_rrlp_GPS_MsrSetElement, GPS_MsrSetElement_sequence); 6149 6150 return offset; 6151 } 6152 6153 6154 static const per_sequence_t SeqOfGPS_MsrSetElement_sequence_of[1] = { 6155 { &hf_rrlp_SeqOfGPS_MsrSetElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GPS_MsrSetElement }, 6156 }; 6157 6158 static int 6159 dissect_rrlp_SeqOfGPS_MsrSetElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6160 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6161 ett_rrlp_SeqOfGPS_MsrSetElement, SeqOfGPS_MsrSetElement_sequence_of, 6162 1, 3, FALSE); 6163 6164 return offset; 6165 } 6166 6167 6168 static const per_sequence_t GPS_MeasureInfo_sequence[] = { 6169 { &hf_rrlp_gpsMsrSetList , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGPS_MsrSetElement }, 6170 { NULL, 0, 0, NULL } 6171 }; 6172 6173 static int 6174 dissect_rrlp_GPS_MeasureInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6175 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6176 ett_rrlp_GPS_MeasureInfo, GPS_MeasureInfo_sequence); 6177 6178 return offset; 6179 } 6180 6181 6182 static const value_string rrlp_LocErrorReason_vals[] = { 6183 { 0, "unDefined" }, 6184 { 1, "notEnoughBTSs" }, 6185 { 2, "notEnoughSats" }, 6186 { 3, "eotdLocCalAssDataMissing" }, 6187 { 4, "eotdAssDataMissing" }, 6188 { 5, "gpsLocCalAssDataMissing" }, 6189 { 6, "gpsAssDataMissing" }, 6190 { 7, "methodNotSupported" }, 6191 { 8, "notProcessed" }, 6192 { 9, "refBTSForGPSNotServingBTS" }, 6193 { 10, "refBTSForEOTDNotServingBTS" }, 6194 { 11, "notEnoughGANSSSats" }, 6195 { 12, "ganssAssDataMissing" }, 6196 { 13, "refBTSForGANSSNotServingBTS" }, 6197 { 0, NULL } 6198 }; 6199 6200 6201 static int 6202 dissect_rrlp_LocErrorReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6203 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 6204 11, NULL, TRUE, 3, NULL); 6205 6206 return offset; 6207 } 6208 6209 6210 6211 static int 6212 dissect_rrlp_GPSAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6213 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 6214 1, maxGPSAssistanceData, FALSE, NULL); 6215 6216 return offset; 6217 } 6218 6219 6220 6221 static int 6222 dissect_rrlp_GANSSAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6223 offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, 6224 1, maxGANSSAssistanceData, FALSE, NULL); 6225 6226 return offset; 6227 } 6228 6229 6230 static const per_sequence_t AdditionalAssistanceData_sequence[] = { 6231 { &hf_rrlp_gpsAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSAssistanceData }, 6232 { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ExtensionContainer }, 6233 { &hf_rrlp_ganssAssistanceData, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSAssistanceData }, 6234 { NULL, 0, 0, NULL } 6235 }; 6236 6237 static int 6238 dissect_rrlp_AdditionalAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6239 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6240 ett_rrlp_AdditionalAssistanceData, AdditionalAssistanceData_sequence); 6241 6242 return offset; 6243 } 6244 6245 6246 static const per_sequence_t LocationError_sequence[] = { 6247 { &hf_rrlp_locErrorReason , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_LocErrorReason }, 6248 { &hf_rrlp_additionalAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_AdditionalAssistanceData }, 6249 { NULL, 0, 0, NULL } 6250 }; 6251 6252 static int 6253 dissect_rrlp_LocationError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6254 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6255 ett_rrlp_LocationError, LocationError_sequence); 6256 6257 return offset; 6258 } 6259 6260 6261 static const per_sequence_t SeqOfOTD_FirstSetMsrs_R98_Ext_sequence_of[1] = { 6262 { &hf_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_FirstSetMsrs }, 6263 }; 6264 6265 static int 6266 dissect_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6267 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6268 ett_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext, SeqOfOTD_FirstSetMsrs_R98_Ext_sequence_of, 6269 1, 5, FALSE); 6270 6271 return offset; 6272 } 6273 6274 6275 static const per_sequence_t OTD_MsrElementFirst_R98_Ext_sequence[] = { 6276 { &hf_rrlp_otd_FirstSetMsrs_R98_Ext, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext }, 6277 { NULL, 0, 0, NULL } 6278 }; 6279 6280 static int 6281 dissect_rrlp_OTD_MsrElementFirst_R98_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6282 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6283 ett_rrlp_OTD_MsrElementFirst_R98_Ext, OTD_MsrElementFirst_R98_Ext_sequence); 6284 6285 return offset; 6286 } 6287 6288 6289 static const per_sequence_t OTD_MeasureInfo_R98_Ext_sequence[] = { 6290 { &hf_rrlp_otdMsrFirstSets_R98_Ext, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_MsrElementFirst_R98_Ext }, 6291 { NULL, 0, 0, NULL } 6292 }; 6293 6294 static int 6295 dissect_rrlp_OTD_MeasureInfo_R98_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6296 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6297 ett_rrlp_OTD_MeasureInfo_R98_Ext, OTD_MeasureInfo_R98_Ext_sequence); 6298 6299 return offset; 6300 } 6301 6302 6303 static const per_sequence_t T_rel_98_Ext_MeasureInfo_sequence[] = { 6304 { &hf_rrlp_otd_MeasureInfo_R98_Ext, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_OTD_MeasureInfo_R98_Ext }, 6305 { NULL, 0, 0, NULL } 6306 }; 6307 6308 static int 6309 dissect_rrlp_T_rel_98_Ext_MeasureInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6310 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6311 ett_rrlp_T_rel_98_Ext_MeasureInfo, T_rel_98_Ext_MeasureInfo_sequence); 6312 6313 return offset; 6314 } 6315 6316 6317 6318 static int 6319 dissect_rrlp_INTEGER_0_9999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6320 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 6321 0U, 9999U, NULL, FALSE); 6322 6323 return offset; 6324 } 6325 6326 6327 static const per_sequence_t GPSTimeAssistanceMeasurements_sequence[] = { 6328 { &hf_rrlp_referenceFrameMSB, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_63 }, 6329 { &hf_rrlp_gpsTowSubms , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_9999 }, 6330 { &hf_rrlp_deltaTow , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_127 }, 6331 { &hf_rrlp_gpsReferenceTimeUncertainty, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GPSReferenceTimeUncertainty }, 6332 { NULL, 0, 0, NULL } 6333 }; 6334 6335 static int 6336 dissect_rrlp_GPSTimeAssistanceMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6337 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6338 ett_rrlp_GPSTimeAssistanceMeasurements, GPSTimeAssistanceMeasurements_sequence); 6339 6340 return offset; 6341 } 6342 6343 6344 static const per_sequence_t Rel_98_MsrPosition_Rsp_Extension_sequence[] = { 6345 { &hf_rrlp_rel_98_Ext_MeasureInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_T_rel_98_Ext_MeasureInfo }, 6346 { &hf_rrlp_timeAssistanceMeasurements, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GPSTimeAssistanceMeasurements }, 6347 { NULL, 0, 0, NULL } 6348 }; 6349 6350 static int 6351 dissect_rrlp_Rel_98_MsrPosition_Rsp_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6352 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6353 ett_rrlp_Rel_98_MsrPosition_Rsp_Extension, Rel_98_MsrPosition_Rsp_Extension_sequence); 6354 6355 return offset; 6356 } 6357 6358 6359 6360 static int 6361 dissect_rrlp_OTD_MeasureInfo_5_Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6362 offset = dissect_rrlp_SeqOfOTD_MsrElementRest(tvb, offset, actx, tree, hf_index); 6363 6364 return offset; 6365 } 6366 6367 6368 static const value_string rrlp_UlPseudoSegInd_vals[] = { 6369 { 0, "firstOfMany" }, 6370 { 1, "secondOfMany" }, 6371 { 0, NULL } 6372 }; 6373 6374 6375 static int 6376 dissect_rrlp_UlPseudoSegInd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6377 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 6378 2, NULL, FALSE, 0, NULL); 6379 6380 return offset; 6381 } 6382 6383 6384 static const per_sequence_t Rel_5_MsrPosition_Rsp_Extension_sequence[] = { 6385 { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_Extended_reference }, 6386 { &hf_rrlp_otd_MeasureInfo_5_Ext, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_OTD_MeasureInfo_5_Ext }, 6387 { &hf_rrlp_ulPseudoSegInd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_UlPseudoSegInd }, 6388 { NULL, 0, 0, NULL } 6389 }; 6390 6391 static int 6392 dissect_rrlp_Rel_5_MsrPosition_Rsp_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6393 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6394 ett_rrlp_Rel_5_MsrPosition_Rsp_Extension, Rel_5_MsrPosition_Rsp_Extension_sequence); 6395 6396 return offset; 6397 } 6398 6399 6400 static const per_sequence_t ReferenceFrame_sequence[] = { 6401 { &hf_rrlp_referenceFN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 }, 6402 { &hf_rrlp_referenceFNMSB , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_63 }, 6403 { NULL, 0, 0, NULL } 6404 }; 6405 6406 static int 6407 dissect_rrlp_ReferenceFrame(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6408 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6409 ett_rrlp_ReferenceFrame, ReferenceFrame_sequence); 6410 6411 return offset; 6412 } 6413 6414 6415 6416 static int 6417 dissect_rrlp_GANSSTODm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6418 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 6419 0U, 3599999U, NULL, FALSE); 6420 6421 return offset; 6422 } 6423 6424 6425 6426 static int 6427 dissect_rrlp_INTEGER_0_16384(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6428 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 6429 0U, 16384U, NULL, FALSE); 6430 6431 return offset; 6432 } 6433 6434 6435 static int * const PositionData_bits[] = { 6436 &hf_rrlp_PositionData_e_otd, 6437 &hf_rrlp_PositionData_gps, 6438 &hf_rrlp_PositionData_galileo, 6439 &hf_rrlp_PositionData_sbas, 6440 &hf_rrlp_PositionData_modernizedGPS, 6441 &hf_rrlp_PositionData_qzss, 6442 &hf_rrlp_PositionData_glonass, 6443 NULL 6444 }; 6445 6446 static int 6447 dissect_rrlp_PositionData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6448 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 6449 3, 16, FALSE, PositionData_bits, 7, NULL, NULL); 6450 6451 return offset; 6452 } 6453 6454 6455 static const per_sequence_t GANSSLocationInfo_sequence[] = { 6456 { &hf_rrlp_referenceFrame , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ReferenceFrame }, 6457 { &hf_rrlp_ganssTODm , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSTODm }, 6458 { &hf_rrlp_ganssTODFrac , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_16384 }, 6459 { &hf_rrlp_ganssTODUncertainty, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSTODUncertainty }, 6460 { &hf_rrlp_ganssTimeID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_7 }, 6461 { &hf_rrlp_fixType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_FixType }, 6462 { &hf_rrlp_posData , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_PositionData }, 6463 { &hf_rrlp_stationaryIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_1 }, 6464 { &hf_rrlp_posEstimate , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_Ext_GeographicalInformation }, 6465 { NULL, 0, 0, NULL } 6466 }; 6467 6468 static int 6469 dissect_rrlp_GANSSLocationInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6470 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6471 ett_rrlp_GANSSLocationInfo, GANSSLocationInfo_sequence); 6472 6473 return offset; 6474 } 6475 6476 6477 6478 static int 6479 dissect_rrlp_INTEGER_0_33554431(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6480 offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 6481 0U, 33554431U, NULL, FALSE); 6482 6483 return offset; 6484 } 6485 6486 6487 static const per_sequence_t GANSS_SgnElement_sequence[] = { 6488 { &hf_rrlp_svID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID }, 6489 { &hf_rrlp_cNo , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 }, 6490 { &hf_rrlp_mpathDet , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_MpathIndic }, 6491 { &hf_rrlp_carrierQualityInd, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_3 }, 6492 { &hf_rrlp_codePhase_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2097151 }, 6493 { &hf_rrlp_integerCodePhase, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_127 }, 6494 { &hf_rrlp_codePhaseRMSError, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 }, 6495 { &hf_rrlp_doppler , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_M32768_32767 }, 6496 { &hf_rrlp_adr , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_33554431 }, 6497 { NULL, 0, 0, NULL } 6498 }; 6499 6500 static int 6501 dissect_rrlp_GANSS_SgnElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6502 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6503 ett_rrlp_GANSS_SgnElement, GANSS_SgnElement_sequence); 6504 6505 return offset; 6506 } 6507 6508 6509 static const per_sequence_t SeqOfGANSS_SgnElement_sequence_of[1] = { 6510 { &hf_rrlp_SeqOfGANSS_SgnElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_SgnElement }, 6511 }; 6512 6513 static int 6514 dissect_rrlp_SeqOfGANSS_SgnElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6515 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6516 ett_rrlp_SeqOfGANSS_SgnElement, SeqOfGANSS_SgnElement_sequence_of, 6517 1, 16, FALSE); 6518 6519 return offset; 6520 } 6521 6522 6523 static const per_sequence_t GANSS_SgnTypeElement_sequence[] = { 6524 { &hf_rrlp_ganssSignalID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID }, 6525 { &hf_rrlp_ganssCodePhaseAmbiguity, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_127 }, 6526 { &hf_rrlp_ganss_SgnList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSS_SgnElement }, 6527 { NULL, 0, 0, NULL } 6528 }; 6529 6530 static int 6531 dissect_rrlp_GANSS_SgnTypeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6532 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6533 ett_rrlp_GANSS_SgnTypeElement, GANSS_SgnTypeElement_sequence); 6534 6535 return offset; 6536 } 6537 6538 6539 static const per_sequence_t SeqOfGANSS_SgnTypeElement_sequence_of[1] = { 6540 { &hf_rrlp_SeqOfGANSS_SgnTypeElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_SgnTypeElement }, 6541 }; 6542 6543 static int 6544 dissect_rrlp_SeqOfGANSS_SgnTypeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6545 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6546 ett_rrlp_SeqOfGANSS_SgnTypeElement, SeqOfGANSS_SgnTypeElement_sequence_of, 6547 1, 8, FALSE); 6548 6549 return offset; 6550 } 6551 6552 6553 static const per_sequence_t GANSS_MsrElement_sequence[] = { 6554 { &hf_rrlp_ganssID , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_7 }, 6555 { &hf_rrlp_ganss_SgnTypeList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSS_SgnTypeElement }, 6556 { NULL, 0, 0, NULL } 6557 }; 6558 6559 static int 6560 dissect_rrlp_GANSS_MsrElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6561 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6562 ett_rrlp_GANSS_MsrElement, GANSS_MsrElement_sequence); 6563 6564 return offset; 6565 } 6566 6567 6568 static const per_sequence_t SeqOfGANSS_MsrElement_sequence_of[1] = { 6569 { &hf_rrlp_SeqOfGANSS_MsrElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_MsrElement }, 6570 }; 6571 6572 static int 6573 dissect_rrlp_SeqOfGANSS_MsrElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6574 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6575 ett_rrlp_SeqOfGANSS_MsrElement, SeqOfGANSS_MsrElement_sequence_of, 6576 1, 8, FALSE); 6577 6578 return offset; 6579 } 6580 6581 6582 static const per_sequence_t GANSS_MsrSetElement_sequence[] = { 6583 { &hf_rrlp_referenceFrame , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_ReferenceFrame }, 6584 { &hf_rrlp_ganssTODm , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GANSSTODm }, 6585 { &hf_rrlp_deltaGANSSTOD , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_127 }, 6586 { &hf_rrlp_ganssTODUncertainty, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_rrlp_GANSSTODUncertainty }, 6587 { &hf_rrlp_ganss_MsrElementList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSS_MsrElement }, 6588 { NULL, 0, 0, NULL } 6589 }; 6590 6591 static int 6592 dissect_rrlp_GANSS_MsrSetElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6593 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6594 ett_rrlp_GANSS_MsrSetElement, GANSS_MsrSetElement_sequence); 6595 6596 return offset; 6597 } 6598 6599 6600 static const per_sequence_t SeqOfGANSS_MsrSetElement_sequence_of[1] = { 6601 { &hf_rrlp_SeqOfGANSS_MsrSetElement_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_MsrSetElement }, 6602 }; 6603 6604 static int 6605 dissect_rrlp_SeqOfGANSS_MsrSetElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6606 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6607 ett_rrlp_SeqOfGANSS_MsrSetElement, SeqOfGANSS_MsrSetElement_sequence_of, 6608 1, 3, FALSE); 6609 6610 return offset; 6611 } 6612 6613 6614 static const per_sequence_t GANSSMeasureInfo_sequence[] = { 6615 { &hf_rrlp_ganssMsrSetList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSS_MsrSetElement }, 6616 { NULL, 0, 0, NULL } 6617 }; 6618 6619 static int 6620 dissect_rrlp_GANSSMeasureInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6621 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6622 ett_rrlp_GANSSMeasureInfo, GANSSMeasureInfo_sequence); 6623 6624 return offset; 6625 } 6626 6627 6628 static const per_sequence_t Rel_7_MsrPosition_Rsp_Extension_sequence[] = { 6629 { &hf_rrlp_velEstimate , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_VelocityEstimate }, 6630 { &hf_rrlp_ganssLocationInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSLocationInfo }, 6631 { &hf_rrlp_ganssMeasureInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSMeasureInfo }, 6632 { NULL, 0, 0, NULL } 6633 }; 6634 6635 static int 6636 dissect_rrlp_Rel_7_MsrPosition_Rsp_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6637 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6638 ett_rrlp_Rel_7_MsrPosition_Rsp_Extension, Rel_7_MsrPosition_Rsp_Extension_sequence); 6639 6640 return offset; 6641 } 6642 6643 6644 static const per_sequence_t MsrPosition_Rsp_sequence[] = { 6645 { &hf_rrlp_multipleSets , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_MultipleSets }, 6646 { &hf_rrlp_referenceIdentity, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ReferenceIdentity }, 6647 { &hf_rrlp_otd_MeasureInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_OTD_MeasureInfo }, 6648 { &hf_rrlp_locationInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_LocationInfo }, 6649 { &hf_rrlp_gps_MeasureInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPS_MeasureInfo }, 6650 { &hf_rrlp_locationError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_LocationError }, 6651 { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ExtensionContainer }, 6652 { &hf_rrlp_rel_98_MsrPosition_Rsp_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel_98_MsrPosition_Rsp_Extension }, 6653 { &hf_rrlp_rel_5_MsrPosition_Rsp_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel_5_MsrPosition_Rsp_Extension }, 6654 { &hf_rrlp_rel_7_MsrPosition_Rsp_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel_7_MsrPosition_Rsp_Extension }, 6655 { NULL, 0, 0, NULL } 6656 }; 6657 6658 static int 6659 dissect_rrlp_MsrPosition_Rsp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6660 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6661 ett_rrlp_MsrPosition_Rsp, MsrPosition_Rsp_sequence); 6662 6663 return offset; 6664 } 6665 6666 6667 static const value_string rrlp_MoreAssDataToBeSent_vals[] = { 6668 { 0, "noMoreMessages" }, 6669 { 1, "moreMessagesOnTheWay" }, 6670 { 0, NULL } 6671 }; 6672 6673 6674 static int 6675 dissect_rrlp_MoreAssDataToBeSent(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6676 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 6677 2, NULL, FALSE, 0, NULL); 6678 6679 return offset; 6680 } 6681 6682 6683 static const per_sequence_t Rel98_AssistanceData_Extension_sequence[] = { 6684 { &hf_rrlp_rel98_Ext_ExpOTD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_Rel98_Ext_ExpOTD }, 6685 { &hf_rrlp_gpsTimeAssistanceMeasurementRequest, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_NULL }, 6686 { &hf_rrlp_gpsReferenceTimeUncertainty, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GPSReferenceTimeUncertainty }, 6687 { NULL, 0, 0, NULL } 6688 }; 6689 6690 static int 6691 dissect_rrlp_Rel98_AssistanceData_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6692 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6693 ett_rrlp_Rel98_AssistanceData_Extension, Rel98_AssistanceData_Extension_sequence); 6694 6695 return offset; 6696 } 6697 6698 6699 static const per_sequence_t Rel5_AssistanceData_Extension_sequence[] = { 6700 { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_Extended_reference }, 6701 { NULL, 0, 0, NULL } 6702 }; 6703 6704 static int 6705 dissect_rrlp_Rel5_AssistanceData_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6706 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6707 ett_rrlp_Rel5_AssistanceData_Extension, Rel5_AssistanceData_Extension_sequence); 6708 6709 return offset; 6710 } 6711 6712 6713 static const per_sequence_t Rel7_AssistanceData_Extension_sequence[] = { 6714 { &hf_rrlp_ganss_AssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSS_AssistData }, 6715 { &hf_rrlp_ganssCarrierPhaseMeasurementRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_NULL }, 6716 { &hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_NULL }, 6717 { &hf_rrlp_add_GPS_AssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_Add_GPS_AssistData }, 6718 { NULL, 0, 0, NULL } 6719 }; 6720 6721 static int 6722 dissect_rrlp_Rel7_AssistanceData_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6723 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6724 ett_rrlp_Rel7_AssistanceData_Extension, Rel7_AssistanceData_Extension_sequence); 6725 6726 return offset; 6727 } 6728 6729 6730 static const per_sequence_t AssistanceData_sequence[] = { 6731 { &hf_rrlp_referenceAssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ReferenceAssistData }, 6732 { &hf_rrlp_msrAssistData , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_MsrAssistData }, 6733 { &hf_rrlp_systemInfoAssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_SystemInfoAssistData }, 6734 { &hf_rrlp_gps_AssistData , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPS_AssistData }, 6735 { &hf_rrlp_moreAssDataToBeSent, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_MoreAssDataToBeSent }, 6736 { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ExtensionContainer }, 6737 { &hf_rrlp_rel98_AssistanceData_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel98_AssistanceData_Extension }, 6738 { &hf_rrlp_rel5_AssistanceData_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel5_AssistanceData_Extension }, 6739 { &hf_rrlp_rel7_AssistanceData_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel7_AssistanceData_Extension }, 6740 { NULL, 0, 0, NULL } 6741 }; 6742 6743 static int 6744 dissect_rrlp_AssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6745 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6746 ett_rrlp_AssistanceData, AssistanceData_sequence); 6747 6748 return offset; 6749 } 6750 6751 6752 static const value_string rrlp_ErrorCodes_vals[] = { 6753 { 0, "unDefined" }, 6754 { 1, "missingComponet" }, 6755 { 2, "incorrectData" }, 6756 { 3, "missingIEorComponentElement" }, 6757 { 4, "messageTooShort" }, 6758 { 5, "unknowReferenceNumber" }, 6759 { 0, NULL } 6760 }; 6761 6762 6763 static int 6764 dissect_rrlp_ErrorCodes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6765 offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 6766 6, NULL, TRUE, 0, NULL); 6767 6768 return offset; 6769 } 6770 6771 6772 static const per_sequence_t Rel_5_ProtocolError_Extension_sequence[] = { 6773 { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_Extended_reference }, 6774 { NULL, 0, 0, NULL } 6775 }; 6776 6777 static int 6778 dissect_rrlp_Rel_5_ProtocolError_Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6779 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6780 ett_rrlp_Rel_5_ProtocolError_Extension, Rel_5_ProtocolError_Extension_sequence); 6781 6782 return offset; 6783 } 6784 6785 6786 static const per_sequence_t ProtocolError_sequence[] = { 6787 { &hf_rrlp_errorCause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_ErrorCodes }, 6788 { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ExtensionContainer }, 6789 { &hf_rrlp_rel_5_ProtocolError_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_Rel_5_ProtocolError_Extension }, 6790 { NULL, 0, 0, NULL } 6791 }; 6792 6793 static int 6794 dissect_rrlp_ProtocolError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6795 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6796 ett_rrlp_ProtocolError, ProtocolError_sequence); 6797 6798 return offset; 6799 } 6800 6801 6802 static int * const GANSSPositioningMethodTypes_bits[] = { 6803 &hf_rrlp_GANSSPositioningMethodTypes_msAssisted, 6804 &hf_rrlp_GANSSPositioningMethodTypes_msBased, 6805 &hf_rrlp_GANSSPositioningMethodTypes_standalone, 6806 NULL 6807 }; 6808 6809 static int 6810 dissect_rrlp_GANSSPositioningMethodTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6811 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 6812 1, 8, FALSE, GANSSPositioningMethodTypes_bits, 3, NULL, NULL); 6813 6814 return offset; 6815 } 6816 6817 6818 static int * const SBASID_bits[] = { 6819 &hf_rrlp_SBASID_waas, 6820 &hf_rrlp_SBASID_egnos, 6821 &hf_rrlp_SBASID_masas, 6822 &hf_rrlp_SBASID_gagan, 6823 NULL 6824 }; 6825 6826 static int 6827 dissect_rrlp_SBASID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6828 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 6829 1, 8, FALSE, SBASID_bits, 4, NULL, NULL); 6830 6831 return offset; 6832 } 6833 6834 6835 static const per_sequence_t GANSSPositionMethod_sequence[] = { 6836 { &hf_rrlp_ganssID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_7 }, 6837 { &hf_rrlp_gANSSPositioningMethodTypes, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSPositioningMethodTypes }, 6838 { &hf_rrlp_gANSSSignals , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignals }, 6839 { &hf_rrlp_sbasID_01 , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_SBASID }, 6840 { NULL, 0, 0, NULL } 6841 }; 6842 6843 static int 6844 dissect_rrlp_GANSSPositionMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6845 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6846 ett_rrlp_GANSSPositionMethod, GANSSPositionMethod_sequence); 6847 6848 return offset; 6849 } 6850 6851 6852 static const per_sequence_t GANSSPositionMethods_sequence_of[1] = { 6853 { &hf_rrlp_GANSSPositionMethods_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSPositionMethod }, 6854 }; 6855 6856 static int 6857 dissect_rrlp_GANSSPositionMethods(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6858 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 6859 ett_rrlp_GANSSPositionMethods, GANSSPositionMethods_sequence_of, 6860 1, 16, FALSE); 6861 6862 return offset; 6863 } 6864 6865 6866 static const per_sequence_t PosCapability_Req_sequence[] = { 6867 { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_Extended_reference }, 6868 { &hf_rrlp_gANSSPositionMethods, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSPositionMethods }, 6869 { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ExtensionContainer }, 6870 { NULL, 0, 0, NULL } 6871 }; 6872 6873 static int 6874 dissect_rrlp_PosCapability_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6875 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6876 ett_rrlp_PosCapability_Req, PosCapability_Req_sequence); 6877 6878 return offset; 6879 } 6880 6881 6882 static int * const NonGANSSPositionMethods_bits[] = { 6883 &hf_rrlp_NonGANSSPositionMethods_msAssistedEOTD, 6884 &hf_rrlp_NonGANSSPositionMethods_msBasedEOTD, 6885 &hf_rrlp_NonGANSSPositionMethods_msAssistedGPS, 6886 &hf_rrlp_NonGANSSPositionMethods_msBasedGPS, 6887 &hf_rrlp_NonGANSSPositionMethods_standaloneGPS, 6888 NULL 6889 }; 6890 6891 static int 6892 dissect_rrlp_NonGANSSPositionMethods(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6893 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 6894 1, 16, FALSE, NonGANSSPositionMethods_bits, 5, NULL, NULL); 6895 6896 return offset; 6897 } 6898 6899 6900 static int * const MultipleMeasurementSets_bits[] = { 6901 &hf_rrlp_MultipleMeasurementSets_eotd, 6902 &hf_rrlp_MultipleMeasurementSets_gps, 6903 &hf_rrlp_MultipleMeasurementSets_ganss, 6904 NULL 6905 }; 6906 6907 static int 6908 dissect_rrlp_MultipleMeasurementSets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6909 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 6910 1, 8, FALSE, MultipleMeasurementSets_bits, 3, NULL, NULL); 6911 6912 return offset; 6913 } 6914 6915 6916 static const per_sequence_t PosCapabilities_sequence[] = { 6917 { &hf_rrlp_nonGANSSpositionMethods, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_NonGANSSPositionMethods }, 6918 { &hf_rrlp_gANSSPositionMethods, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSPositionMethods }, 6919 { &hf_rrlp_multipleMeasurementSets, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_MultipleMeasurementSets }, 6920 { NULL, 0, 0, NULL } 6921 }; 6922 6923 static int 6924 dissect_rrlp_PosCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6925 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 6926 ett_rrlp_PosCapabilities, PosCapabilities_sequence); 6927 6928 return offset; 6929 } 6930 6931 6932 static int * const GPSAssistance_bits[] = { 6933 &hf_rrlp_GPSAssistance_almanac, 6934 &hf_rrlp_GPSAssistance_uTCmodel, 6935 &hf_rrlp_GPSAssistance_ionosphericModel, 6936 &hf_rrlp_GPSAssistance_navigationmodel, 6937 &hf_rrlp_GPSAssistance_dGPScorrections, 6938 &hf_rrlp_GPSAssistance_referenceLocation, 6939 &hf_rrlp_GPSAssistance_referenceTime, 6940 &hf_rrlp_GPSAssistance_acquisitionAssistance, 6941 &hf_rrlp_GPSAssistance_realTimeIntegrity, 6942 &hf_rrlp_GPSAssistance_ephemerisExtension, 6943 &hf_rrlp_GPSAssistance_ephemerisExtensionCheck, 6944 NULL 6945 }; 6946 6947 static int 6948 dissect_rrlp_GPSAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6949 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 6950 1, 16, FALSE, GPSAssistance_bits, 11, NULL, NULL); 6951 6952 return offset; 6953 } 6954 6955 6956 static int * const CommonGANSSAssistance_bits[] = { 6957 &hf_rrlp_CommonGANSSAssistance_referenceTime, 6958 &hf_rrlp_CommonGANSSAssistance_referenceLocation, 6959 &hf_rrlp_CommonGANSSAssistance_spare_bit2, 6960 &hf_rrlp_CommonGANSSAssistance_ionosphericModel, 6961 &hf_rrlp_CommonGANSSAssistance_addIonosphericModel, 6962 &hf_rrlp_CommonGANSSAssistance_earthOrientationParam, 6963 NULL 6964 }; 6965 6966 static int 6967 dissect_rrlp_CommonGANSSAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6968 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 6969 1, 8, FALSE, CommonGANSSAssistance_bits, 6, NULL, NULL); 6970 6971 return offset; 6972 } 6973 6974 6975 static int * const GANSSAssistance_bits[] = { 6976 &hf_rrlp_GANSSAssistance_realTimeIntegrity, 6977 &hf_rrlp_GANSSAssistance_differentialCorrections, 6978 &hf_rrlp_GANSSAssistance_almanac, 6979 &hf_rrlp_GANSSAssistance_referenceMeasurementInformation, 6980 &hf_rrlp_GANSSAssistance_navigationModel, 6981 &hf_rrlp_GANSSAssistance_timeModelGNSS_UTC, 6982 &hf_rrlp_GANSSAssistance_timeModelGNSS_GNSS, 6983 &hf_rrlp_GANSSAssistance_databitassistance, 6984 &hf_rrlp_GANSSAssistance_ephemerisExtension, 6985 &hf_rrlp_GANSSAssistance_ephemerisExtensionCheck, 6986 &hf_rrlp_GANSSAssistance_addUTCmodel, 6987 &hf_rrlp_GANSSAssistance_auxiliaryInformation, 6988 NULL 6989 }; 6990 6991 static int 6992 dissect_rrlp_GANSSAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 6993 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 6994 1, 16, FALSE, GANSSAssistance_bits, 12, NULL, NULL); 6995 6996 return offset; 6997 } 6998 6999 7000 static const per_sequence_t GANSSAssistanceForOneGANSS_sequence[] = { 7001 { &hf_rrlp_ganssID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_7 }, 7002 { &hf_rrlp_gANSSAssistance, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSAssistance }, 7003 { NULL, 0, 0, NULL } 7004 }; 7005 7006 static int 7007 dissect_rrlp_GANSSAssistanceForOneGANSS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7008 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 7009 ett_rrlp_GANSSAssistanceForOneGANSS, GANSSAssistanceForOneGANSS_sequence); 7010 7011 return offset; 7012 } 7013 7014 7015 static const per_sequence_t SpecificGANSSAssistance_sequence_of[1] = { 7016 { &hf_rrlp_SpecificGANSSAssistance_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSAssistanceForOneGANSS }, 7017 }; 7018 7019 static int 7020 dissect_rrlp_SpecificGANSSAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7021 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 7022 ett_rrlp_SpecificGANSSAssistance, SpecificGANSSAssistance_sequence_of, 7023 1, 16, FALSE); 7024 7025 return offset; 7026 } 7027 7028 7029 static const per_sequence_t GANSSAssistanceSet_sequence[] = { 7030 { &hf_rrlp_commonGANSSAssistance, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_CommonGANSSAssistance }, 7031 { &hf_rrlp_specificGANSSAssistance, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_SpecificGANSSAssistance }, 7032 { NULL, 0, 0, NULL } 7033 }; 7034 7035 static int 7036 dissect_rrlp_GANSSAssistanceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7037 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 7038 ett_rrlp_GANSSAssistanceSet, GANSSAssistanceSet_sequence); 7039 7040 return offset; 7041 } 7042 7043 7044 static int * const GANSSModelID_bits[] = { 7045 &hf_rrlp_GANSSModelID_model1, 7046 &hf_rrlp_GANSSModelID_model2, 7047 &hf_rrlp_GANSSModelID_model3, 7048 &hf_rrlp_GANSSModelID_model4, 7049 &hf_rrlp_GANSSModelID_model5, 7050 &hf_rrlp_GANSSModelID_model6, 7051 &hf_rrlp_GANSSModelID_model7, 7052 &hf_rrlp_GANSSModelID_model8, 7053 NULL 7054 }; 7055 7056 static int 7057 dissect_rrlp_GANSSModelID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7058 offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 7059 1, 8, FALSE, GANSSModelID_bits, 8, NULL, NULL); 7060 7061 return offset; 7062 } 7063 7064 7065 static const per_sequence_t GANSSAdditionalAssistanceChoicesForOneGANSS_sequence[] = { 7066 { &hf_rrlp_ganssID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_INTEGER_0_7 }, 7067 { &hf_rrlp_ganssClockModelChoice, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSModelID }, 7068 { &hf_rrlp_gannsOrbitModelChoice, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSModelID }, 7069 { &hf_rrlp_ganssAlmanacModelChoice, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSModelID }, 7070 { &hf_rrlp_ganssAdditionalUTCModelChoice, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSModelID }, 7071 { NULL, 0, 0, NULL } 7072 }; 7073 7074 static int 7075 dissect_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7076 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 7077 ett_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS, GANSSAdditionalAssistanceChoicesForOneGANSS_sequence); 7078 7079 return offset; 7080 } 7081 7082 7083 static const per_sequence_t GANSSAdditionalAssistanceChoices_sequence_of[1] = { 7084 { &hf_rrlp_GANSSAdditionalAssistanceChoices_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS }, 7085 }; 7086 7087 static int 7088 dissect_rrlp_GANSSAdditionalAssistanceChoices(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7089 offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, 7090 ett_rrlp_GANSSAdditionalAssistanceChoices, GANSSAdditionalAssistanceChoices_sequence_of, 7091 1, 16, FALSE); 7092 7093 return offset; 7094 } 7095 7096 7097 static const per_sequence_t AssistanceSupported_sequence[] = { 7098 { &hf_rrlp_gpsAssistance , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSAssistance }, 7099 { &hf_rrlp_gANSSAssistanceSet, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSAssistanceSet }, 7100 { &hf_rrlp_gANSSAdditionalAssistanceChoices, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rrlp_GANSSAdditionalAssistanceChoices }, 7101 { NULL, 0, 0, NULL } 7102 }; 7103 7104 static int 7105 dissect_rrlp_AssistanceSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7106 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 7107 ett_rrlp_AssistanceSupported, AssistanceSupported_sequence); 7108 7109 return offset; 7110 } 7111 7112 7113 static const per_sequence_t AssistanceNeeded_sequence[] = { 7114 { &hf_rrlp_gpsAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GPSAssistanceData }, 7115 { &hf_rrlp_ganssAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_GANSSAssistanceData }, 7116 { NULL, 0, 0, NULL } 7117 }; 7118 7119 static int 7120 dissect_rrlp_AssistanceNeeded(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7121 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 7122 ett_rrlp_AssistanceNeeded, AssistanceNeeded_sequence); 7123 7124 return offset; 7125 } 7126 7127 7128 static const per_sequence_t PosCapability_Rsp_sequence[] = { 7129 { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_Extended_reference }, 7130 { &hf_rrlp_posCapabilities, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_rrlp_PosCapabilities }, 7131 { &hf_rrlp_assistanceSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_AssistanceSupported }, 7132 { &hf_rrlp_assistanceNeeded, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_AssistanceNeeded }, 7133 { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rrlp_ExtensionContainer }, 7134 { NULL, 0, 0, NULL } 7135 }; 7136 7137 static int 7138 dissect_rrlp_PosCapability_Rsp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7139 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 7140 ett_rrlp_PosCapability_Rsp, PosCapability_Rsp_sequence); 7141 7142 return offset; 7143 } 7144 7145 7146 static const value_string rrlp_RRLP_Component_vals[] = { 7147 { 0, "msrPositionReq" }, 7148 { 1, "msrPositionRsp" }, 7149 { 2, "assistanceData" }, 7150 { 3, "assistanceDataAck" }, 7151 { 4, "protocolError" }, 7152 { 5, "posCapabilityReq" }, 7153 { 6, "posCapabilityRsp" }, 7154 { 0, NULL } 7155 }; 7156 7157 static const per_choice_t RRLP_Component_choice[] = { 7158 { 0, &hf_rrlp_msrPositionReq , ASN1_EXTENSION_ROOT , dissect_rrlp_MsrPosition_Req }, 7159 { 1, &hf_rrlp_msrPositionRsp , ASN1_EXTENSION_ROOT , dissect_rrlp_MsrPosition_Rsp }, 7160 { 2, &hf_rrlp_assistanceData , ASN1_EXTENSION_ROOT , dissect_rrlp_AssistanceData }, 7161 { 3, &hf_rrlp_assistanceDataAck, ASN1_EXTENSION_ROOT , dissect_rrlp_NULL }, 7162 { 4, &hf_rrlp_protocolError , ASN1_EXTENSION_ROOT , dissect_rrlp_ProtocolError }, 7163 { 5, &hf_rrlp_posCapabilityReq, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_PosCapability_Req }, 7164 { 6, &hf_rrlp_posCapabilityRsp, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_PosCapability_Rsp }, 7165 { 0, NULL, 0, NULL } 7166 }; 7167 7168 static int 7169 dissect_rrlp_RRLP_Component(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7170 offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, 7171 ett_rrlp_RRLP_Component, RRLP_Component_choice, 7172 NULL); 7173 7174 return offset; 7175 } 7176 7177 7178 static const per_sequence_t PDU_sequence[] = { 7179 { &hf_rrlp_referenceNumber, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 }, 7180 { &hf_rrlp_component , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_rrlp_RRLP_Component }, 7181 { NULL, 0, 0, NULL } 7182 }; 7183 7184 static int 7185 dissect_rrlp_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { 7186 #line 25 "./asn1/rrlp/rrlp.cnf" 7187 7188 proto_tree_add_item(tree, proto_rrlp, tvb, 0, -1, ENC_NA); 7189 7190 col_append_sep_str(actx->pinfo->cinfo, COL_PROTOCOL, "/", "RRLP"); 7191 7192 offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, 7193 ett_rrlp_PDU, PDU_sequence); 7194 7195 return offset; 7196 } 7197 7198 /*--- PDUs ---*/ 7199 7200 static int dissect_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { 7201 int offset = 0; 7202 asn1_ctx_t asn1_ctx; 7203 asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); 7204 offset = dissect_rrlp_PDU(tvb, offset, &asn1_ctx, tree, hf_rrlp_PDU_PDU); 7205 offset += 7; offset >>= 3; 7206 return offset; 7207 } 7208 7209 7210 /*--- End of included file: packet-rrlp-fn.c ---*/ 7211 #line 53 "./asn1/rrlp/packet-rrlp-template.c" 7212 7213 7214 /*--- proto_register_rrlp -------------------------------------------*/ 7215 void proto_register_rrlp(void) { 7216 7217 /* List of fields */ 7218 static hf_register_info hf[] = { 7219 7220 7221 /*--- Included file: packet-rrlp-hfarr.c ---*/ 7222 #line 1 "./asn1/rrlp/packet-rrlp-hfarr.c" 7223 { &hf_rrlp_PDU_PDU, 7224 { "PDU", "rrlp.PDU_element", 7225 FT_NONE, BASE_NONE, NULL, 0, 7226 NULL, HFILL }}, 7227 { &hf_rrlp_privateExtensionList, 7228 { "privateExtensionList", "rrlp.privateExtensionList", 7229 FT_UINT32, BASE_DEC, NULL, 0, 7230 NULL, HFILL }}, 7231 { &hf_rrlp_pcs_Extensions, 7232 { "pcs-Extensions", "rrlp.pcs_Extensions_element", 7233 FT_NONE, BASE_NONE, NULL, 0, 7234 NULL, HFILL }}, 7235 { &hf_rrlp_PrivateExtensionList_item, 7236 { "PrivateExtension", "rrlp.PrivateExtension_element", 7237 FT_NONE, BASE_NONE, NULL, 0, 7238 NULL, HFILL }}, 7239 { &hf_rrlp_extId, 7240 { "extId", "rrlp.extId", 7241 FT_OID, BASE_NONE, NULL, 0, 7242 "OBJECT_IDENTIFIER", HFILL }}, 7243 { &hf_rrlp_extType, 7244 { "extType", "rrlp.extType_element", 7245 FT_NONE, BASE_NONE, NULL, 0, 7246 NULL, HFILL }}, 7247 { &hf_rrlp_referenceNumber, 7248 { "referenceNumber", "rrlp.referenceNumber", 7249 FT_UINT32, BASE_DEC, NULL, 0, 7250 "INTEGER_0_7", HFILL }}, 7251 { &hf_rrlp_component, 7252 { "component", "rrlp.component", 7253 FT_UINT32, BASE_DEC, VALS(rrlp_RRLP_Component_vals), 0, 7254 "RRLP_Component", HFILL }}, 7255 { &hf_rrlp_msrPositionReq, 7256 { "msrPositionReq", "rrlp.msrPositionReq_element", 7257 FT_NONE, BASE_NONE, NULL, 0, 7258 "MsrPosition_Req", HFILL }}, 7259 { &hf_rrlp_msrPositionRsp, 7260 { "msrPositionRsp", "rrlp.msrPositionRsp_element", 7261 FT_NONE, BASE_NONE, NULL, 0, 7262 "MsrPosition_Rsp", HFILL }}, 7263 { &hf_rrlp_assistanceData, 7264 { "assistanceData", "rrlp.assistanceData_element", 7265 FT_NONE, BASE_NONE, NULL, 0, 7266 NULL, HFILL }}, 7267 { &hf_rrlp_assistanceDataAck, 7268 { "assistanceDataAck", "rrlp.assistanceDataAck_element", 7269 FT_NONE, BASE_NONE, NULL, 0, 7270 NULL, HFILL }}, 7271 { &hf_rrlp_protocolError, 7272 { "protocolError", "rrlp.protocolError_element", 7273 FT_NONE, BASE_NONE, NULL, 0, 7274 NULL, HFILL }}, 7275 { &hf_rrlp_posCapabilityReq, 7276 { "posCapabilityReq", "rrlp.posCapabilityReq_element", 7277 FT_NONE, BASE_NONE, NULL, 0, 7278 "PosCapability_Req", HFILL }}, 7279 { &hf_rrlp_posCapabilityRsp, 7280 { "posCapabilityRsp", "rrlp.posCapabilityRsp_element", 7281 FT_NONE, BASE_NONE, NULL, 0, 7282 "PosCapability_Rsp", HFILL }}, 7283 { &hf_rrlp_positionInstruct, 7284 { "positionInstruct", "rrlp.positionInstruct_element", 7285 FT_NONE, BASE_NONE, NULL, 0, 7286 NULL, HFILL }}, 7287 { &hf_rrlp_referenceAssistData, 7288 { "referenceAssistData", "rrlp.referenceAssistData_element", 7289 FT_NONE, BASE_NONE, NULL, 0, 7290 NULL, HFILL }}, 7291 { &hf_rrlp_msrAssistData, 7292 { "msrAssistData", "rrlp.msrAssistData_element", 7293 FT_NONE, BASE_NONE, NULL, 0, 7294 NULL, HFILL }}, 7295 { &hf_rrlp_systemInfoAssistData, 7296 { "systemInfoAssistData", "rrlp.systemInfoAssistData_element", 7297 FT_NONE, BASE_NONE, NULL, 0, 7298 NULL, HFILL }}, 7299 { &hf_rrlp_gps_AssistData, 7300 { "gps-AssistData", "rrlp.gps_AssistData_element", 7301 FT_NONE, BASE_NONE, NULL, 0, 7302 NULL, HFILL }}, 7303 { &hf_rrlp_extensionContainer, 7304 { "extensionContainer", "rrlp.extensionContainer_element", 7305 FT_NONE, BASE_NONE, NULL, 0, 7306 NULL, HFILL }}, 7307 { &hf_rrlp_rel98_MsrPosition_Req_extension, 7308 { "rel98-MsrPosition-Req-extension", "rrlp.rel98_MsrPosition_Req_extension_element", 7309 FT_NONE, BASE_NONE, NULL, 0, 7310 NULL, HFILL }}, 7311 { &hf_rrlp_rel5_MsrPosition_Req_extension, 7312 { "rel5-MsrPosition-Req-extension", "rrlp.rel5_MsrPosition_Req_extension_element", 7313 FT_NONE, BASE_NONE, NULL, 0, 7314 NULL, HFILL }}, 7315 { &hf_rrlp_rel7_MsrPosition_Req_extension, 7316 { "rel7-MsrPosition-Req-extension", "rrlp.rel7_MsrPosition_Req_extension_element", 7317 FT_NONE, BASE_NONE, NULL, 0, 7318 NULL, HFILL }}, 7319 { &hf_rrlp_multipleSets, 7320 { "multipleSets", "rrlp.multipleSets_element", 7321 FT_NONE, BASE_NONE, NULL, 0, 7322 NULL, HFILL }}, 7323 { &hf_rrlp_referenceIdentity, 7324 { "referenceIdentity", "rrlp.referenceIdentity_element", 7325 FT_NONE, BASE_NONE, NULL, 0, 7326 NULL, HFILL }}, 7327 { &hf_rrlp_otd_MeasureInfo, 7328 { "otd-MeasureInfo", "rrlp.otd_MeasureInfo_element", 7329 FT_NONE, BASE_NONE, NULL, 0, 7330 NULL, HFILL }}, 7331 { &hf_rrlp_locationInfo, 7332 { "locationInfo", "rrlp.locationInfo_element", 7333 FT_NONE, BASE_NONE, NULL, 0, 7334 NULL, HFILL }}, 7335 { &hf_rrlp_gps_MeasureInfo, 7336 { "gps-MeasureInfo", "rrlp.gps_MeasureInfo_element", 7337 FT_NONE, BASE_NONE, NULL, 0, 7338 NULL, HFILL }}, 7339 { &hf_rrlp_locationError, 7340 { "locationError", "rrlp.locationError_element", 7341 FT_NONE, BASE_NONE, NULL, 0, 7342 NULL, HFILL }}, 7343 { &hf_rrlp_rel_98_MsrPosition_Rsp_Extension, 7344 { "rel-98-MsrPosition-Rsp-Extension", "rrlp.rel_98_MsrPosition_Rsp_Extension_element", 7345 FT_NONE, BASE_NONE, NULL, 0, 7346 NULL, HFILL }}, 7347 { &hf_rrlp_rel_5_MsrPosition_Rsp_Extension, 7348 { "rel-5-MsrPosition-Rsp-Extension", "rrlp.rel_5_MsrPosition_Rsp_Extension_element", 7349 FT_NONE, BASE_NONE, NULL, 0, 7350 NULL, HFILL }}, 7351 { &hf_rrlp_rel_7_MsrPosition_Rsp_Extension, 7352 { "rel-7-MsrPosition-Rsp-Extension", "rrlp.rel_7_MsrPosition_Rsp_Extension_element", 7353 FT_NONE, BASE_NONE, NULL, 0, 7354 NULL, HFILL }}, 7355 { &hf_rrlp_moreAssDataToBeSent, 7356 { "moreAssDataToBeSent", "rrlp.moreAssDataToBeSent", 7357 FT_UINT32, BASE_DEC, VALS(rrlp_MoreAssDataToBeSent_vals), 0, 7358 NULL, HFILL }}, 7359 { &hf_rrlp_rel98_AssistanceData_Extension, 7360 { "rel98-AssistanceData-Extension", "rrlp.rel98_AssistanceData_Extension_element", 7361 FT_NONE, BASE_NONE, NULL, 0, 7362 NULL, HFILL }}, 7363 { &hf_rrlp_rel5_AssistanceData_Extension, 7364 { "rel5-AssistanceData-Extension", "rrlp.rel5_AssistanceData_Extension_element", 7365 FT_NONE, BASE_NONE, NULL, 0, 7366 NULL, HFILL }}, 7367 { &hf_rrlp_rel7_AssistanceData_Extension, 7368 { "rel7-AssistanceData-Extension", "rrlp.rel7_AssistanceData_Extension_element", 7369 FT_NONE, BASE_NONE, NULL, 0, 7370 NULL, HFILL }}, 7371 { &hf_rrlp_errorCause, 7372 { "errorCause", "rrlp.errorCause", 7373 FT_UINT32, BASE_DEC, VALS(rrlp_ErrorCodes_vals), 0, 7374 "ErrorCodes", HFILL }}, 7375 { &hf_rrlp_rel_5_ProtocolError_Extension, 7376 { "rel-5-ProtocolError-Extension", "rrlp.rel_5_ProtocolError_Extension_element", 7377 FT_NONE, BASE_NONE, NULL, 0, 7378 NULL, HFILL }}, 7379 { &hf_rrlp_extended_reference, 7380 { "extended-reference", "rrlp.extended_reference_element", 7381 FT_NONE, BASE_NONE, NULL, 0, 7382 NULL, HFILL }}, 7383 { &hf_rrlp_gANSSPositionMethods, 7384 { "gANSSPositionMethods", "rrlp.gANSSPositionMethods", 7385 FT_UINT32, BASE_DEC, NULL, 0, 7386 NULL, HFILL }}, 7387 { &hf_rrlp_posCapabilities, 7388 { "posCapabilities", "rrlp.posCapabilities_element", 7389 FT_NONE, BASE_NONE, NULL, 0, 7390 NULL, HFILL }}, 7391 { &hf_rrlp_assistanceSupported, 7392 { "assistanceSupported", "rrlp.assistanceSupported_element", 7393 FT_NONE, BASE_NONE, NULL, 0, 7394 NULL, HFILL }}, 7395 { &hf_rrlp_assistanceNeeded, 7396 { "assistanceNeeded", "rrlp.assistanceNeeded_element", 7397 FT_NONE, BASE_NONE, NULL, 0, 7398 NULL, HFILL }}, 7399 { &hf_rrlp_methodType, 7400 { "methodType", "rrlp.methodType", 7401 FT_UINT32, BASE_DEC, VALS(rrlp_MethodType_vals), 0, 7402 NULL, HFILL }}, 7403 { &hf_rrlp_positionMethod, 7404 { "positionMethod", "rrlp.positionMethod", 7405 FT_UINT32, BASE_DEC, VALS(rrlp_PositionMethod_vals), 0, 7406 NULL, HFILL }}, 7407 { &hf_rrlp_measureResponseTime, 7408 { "measureResponseTime", "rrlp.measureResponseTime", 7409 FT_UINT32, BASE_DEC, NULL, 0, 7410 NULL, HFILL }}, 7411 { &hf_rrlp_useMultipleSets, 7412 { "useMultipleSets", "rrlp.useMultipleSets", 7413 FT_UINT32, BASE_DEC, VALS(rrlp_UseMultipleSets_vals), 0, 7414 NULL, HFILL }}, 7415 { &hf_rrlp_environmentCharacter, 7416 { "environmentCharacter", "rrlp.environmentCharacter", 7417 FT_UINT32, BASE_DEC, VALS(rrlp_EnvironmentCharacter_vals), 0, 7418 NULL, HFILL }}, 7419 { &hf_rrlp_msAssisted, 7420 { "msAssisted", "rrlp.msAssisted_element", 7421 FT_NONE, BASE_NONE, NULL, 0, 7422 "AccuracyOpt", HFILL }}, 7423 { &hf_rrlp_msBased, 7424 { "msBased", "rrlp.msBased", 7425 FT_UINT32, BASE_DEC, NULL, 0, 7426 "Accuracy", HFILL }}, 7427 { &hf_rrlp_msBasedPref, 7428 { "msBasedPref", "rrlp.msBasedPref", 7429 FT_UINT32, BASE_DEC, NULL, 0, 7430 "Accuracy", HFILL }}, 7431 { &hf_rrlp_msAssistedPref, 7432 { "msAssistedPref", "rrlp.msAssistedPref", 7433 FT_UINT32, BASE_DEC, NULL, 0, 7434 "Accuracy", HFILL }}, 7435 { &hf_rrlp_accuracy, 7436 { "accuracy", "rrlp.accuracy", 7437 FT_UINT32, BASE_DEC, NULL, 0, 7438 NULL, HFILL }}, 7439 { &hf_rrlp_bcchCarrier, 7440 { "bcchCarrier", "rrlp.bcchCarrier", 7441 FT_UINT32, BASE_DEC, NULL, 0, 7442 NULL, HFILL }}, 7443 { &hf_rrlp_bsic, 7444 { "bsic", "rrlp.bsic", 7445 FT_UINT32, BASE_DEC, NULL, 0, 7446 NULL, HFILL }}, 7447 { &hf_rrlp_timeSlotScheme, 7448 { "timeSlotScheme", "rrlp.timeSlotScheme", 7449 FT_UINT32, BASE_DEC, VALS(rrlp_TimeSlotScheme_vals), 0, 7450 NULL, HFILL }}, 7451 { &hf_rrlp_btsPosition, 7452 { "btsPosition", "rrlp.btsPosition", 7453 FT_BYTES, BASE_NONE, NULL, 0, 7454 NULL, HFILL }}, 7455 { &hf_rrlp_msrAssistList, 7456 { "msrAssistList", "rrlp.msrAssistList", 7457 FT_UINT32, BASE_DEC, NULL, 0, 7458 "SeqOfMsrAssistBTS", HFILL }}, 7459 { &hf_rrlp_SeqOfMsrAssistBTS_item, 7460 { "MsrAssistBTS", "rrlp.MsrAssistBTS_element", 7461 FT_NONE, BASE_NONE, NULL, 0, 7462 NULL, HFILL }}, 7463 { &hf_rrlp_multiFrameOffset, 7464 { "multiFrameOffset", "rrlp.multiFrameOffset", 7465 FT_UINT32, BASE_DEC, NULL, 0, 7466 NULL, HFILL }}, 7467 { &hf_rrlp_roughRTD, 7468 { "roughRTD", "rrlp.roughRTD", 7469 FT_UINT32, BASE_DEC, NULL, 0, 7470 NULL, HFILL }}, 7471 { &hf_rrlp_calcAssistanceBTS, 7472 { "calcAssistanceBTS", "rrlp.calcAssistanceBTS_element", 7473 FT_NONE, BASE_NONE, NULL, 0, 7474 NULL, HFILL }}, 7475 { &hf_rrlp_systemInfoAssistList, 7476 { "systemInfoAssistList", "rrlp.systemInfoAssistList", 7477 FT_UINT32, BASE_DEC, NULL, 0, 7478 "SeqOfSystemInfoAssistBTS", HFILL }}, 7479 { &hf_rrlp_SeqOfSystemInfoAssistBTS_item, 7480 { "SystemInfoAssistBTS", "rrlp.SystemInfoAssistBTS", 7481 FT_UINT32, BASE_DEC, VALS(rrlp_SystemInfoAssistBTS_vals), 0, 7482 NULL, HFILL }}, 7483 { &hf_rrlp_notPresent, 7484 { "notPresent", "rrlp.notPresent_element", 7485 FT_NONE, BASE_NONE, NULL, 0, 7486 NULL, HFILL }}, 7487 { &hf_rrlp_present, 7488 { "present", "rrlp.present_element", 7489 FT_NONE, BASE_NONE, NULL, 0, 7490 "AssistBTSData", HFILL }}, 7491 { &hf_rrlp_fineRTD, 7492 { "fineRTD", "rrlp.fineRTD", 7493 FT_UINT32, BASE_DEC, NULL, 0, 7494 NULL, HFILL }}, 7495 { &hf_rrlp_referenceWGS84, 7496 { "referenceWGS84", "rrlp.referenceWGS84_element", 7497 FT_NONE, BASE_NONE, NULL, 0, 7498 NULL, HFILL }}, 7499 { &hf_rrlp_relativeNorth, 7500 { "relativeNorth", "rrlp.relativeNorth", 7501 FT_INT32, BASE_DEC, NULL, 0, 7502 "RelDistance", HFILL }}, 7503 { &hf_rrlp_relativeEast, 7504 { "relativeEast", "rrlp.relativeEast", 7505 FT_INT32, BASE_DEC, NULL, 0, 7506 "RelDistance", HFILL }}, 7507 { &hf_rrlp_relativeAlt, 7508 { "relativeAlt", "rrlp.relativeAlt", 7509 FT_INT32, BASE_DEC, NULL, 0, 7510 NULL, HFILL }}, 7511 { &hf_rrlp_nbrOfSets, 7512 { "nbrOfSets", "rrlp.nbrOfSets", 7513 FT_UINT32, BASE_DEC, NULL, 0, 7514 "INTEGER_2_3", HFILL }}, 7515 { &hf_rrlp_nbrOfReferenceBTSs, 7516 { "nbrOfReferenceBTSs", "rrlp.nbrOfReferenceBTSs", 7517 FT_UINT32, BASE_DEC, NULL, 0, 7518 "INTEGER_1_3", HFILL }}, 7519 { &hf_rrlp_referenceRelation, 7520 { "referenceRelation", "rrlp.referenceRelation", 7521 FT_UINT32, BASE_DEC, VALS(rrlp_ReferenceRelation_vals), 0, 7522 NULL, HFILL }}, 7523 { &hf_rrlp_refBTSList, 7524 { "refBTSList", "rrlp.refBTSList", 7525 FT_UINT32, BASE_DEC, NULL, 0, 7526 "SeqOfReferenceIdentityType", HFILL }}, 7527 { &hf_rrlp_SeqOfReferenceIdentityType_item, 7528 { "ReferenceIdentityType", "rrlp.ReferenceIdentityType", 7529 FT_UINT32, BASE_DEC, VALS(rrlp_ReferenceIdentityType_vals), 0, 7530 NULL, HFILL }}, 7531 { &hf_rrlp_bsicAndCarrier, 7532 { "bsicAndCarrier", "rrlp.bsicAndCarrier_element", 7533 FT_NONE, BASE_NONE, NULL, 0, 7534 NULL, HFILL }}, 7535 { &hf_rrlp_ci, 7536 { "ci", "rrlp.ci", 7537 FT_UINT32, BASE_DEC, NULL, 0, 7538 "CellID", HFILL }}, 7539 { &hf_rrlp_requestIndex, 7540 { "requestIndex", "rrlp.requestIndex", 7541 FT_UINT32, BASE_DEC, NULL, 0, 7542 NULL, HFILL }}, 7543 { &hf_rrlp_systemInfoIndex, 7544 { "systemInfoIndex", "rrlp.systemInfoIndex", 7545 FT_UINT32, BASE_DEC, NULL, 0, 7546 NULL, HFILL }}, 7547 { &hf_rrlp_ciAndLAC, 7548 { "ciAndLAC", "rrlp.ciAndLAC_element", 7549 FT_NONE, BASE_NONE, NULL, 0, 7550 "CellIDAndLAC", HFILL }}, 7551 { &hf_rrlp_carrier, 7552 { "carrier", "rrlp.carrier", 7553 FT_UINT32, BASE_DEC, NULL, 0, 7554 "BCCHCarrier", HFILL }}, 7555 { &hf_rrlp_referenceLAC, 7556 { "referenceLAC", "rrlp.referenceLAC", 7557 FT_UINT32, BASE_DEC, NULL, 0, 7558 "LAC", HFILL }}, 7559 { &hf_rrlp_referenceCI, 7560 { "referenceCI", "rrlp.referenceCI", 7561 FT_UINT32, BASE_DEC, NULL, 0, 7562 "CellID", HFILL }}, 7563 { &hf_rrlp_otdMsrFirstSets, 7564 { "otdMsrFirstSets", "rrlp.otdMsrFirstSets_element", 7565 FT_NONE, BASE_NONE, NULL, 0, 7566 "OTD_MsrElementFirst", HFILL }}, 7567 { &hf_rrlp_otdMsrRestSets, 7568 { "otdMsrRestSets", "rrlp.otdMsrRestSets", 7569 FT_UINT32, BASE_DEC, NULL, 0, 7570 "SeqOfOTD_MsrElementRest", HFILL }}, 7571 { &hf_rrlp_SeqOfOTD_MsrElementRest_item, 7572 { "OTD-MsrElementRest", "rrlp.OTD_MsrElementRest_element", 7573 FT_NONE, BASE_NONE, NULL, 0, 7574 NULL, HFILL }}, 7575 { &hf_rrlp_refFrameNumber, 7576 { "refFrameNumber", "rrlp.refFrameNumber", 7577 FT_UINT32, BASE_DEC, NULL, 0, 7578 "INTEGER_0_42431", HFILL }}, 7579 { &hf_rrlp_referenceTimeSlot, 7580 { "referenceTimeSlot", "rrlp.referenceTimeSlot", 7581 FT_UINT32, BASE_DEC, NULL, 0, 7582 "ModuloTimeSlot", HFILL }}, 7583 { &hf_rrlp_toaMeasurementsOfRef, 7584 { "toaMeasurementsOfRef", "rrlp.toaMeasurementsOfRef_element", 7585 FT_NONE, BASE_NONE, NULL, 0, 7586 "TOA_MeasurementsOfRef", HFILL }}, 7587 { &hf_rrlp_stdResolution, 7588 { "stdResolution", "rrlp.stdResolution", 7589 FT_UINT32, BASE_DEC, NULL, 0, 7590 NULL, HFILL }}, 7591 { &hf_rrlp_taCorrection, 7592 { "taCorrection", "rrlp.taCorrection", 7593 FT_UINT32, BASE_DEC, NULL, 0, 7594 "INTEGER_0_960", HFILL }}, 7595 { &hf_rrlp_otd_FirstSetMsrs, 7596 { "otd-FirstSetMsrs", "rrlp.otd_FirstSetMsrs", 7597 FT_UINT32, BASE_DEC, NULL, 0, 7598 "SeqOfOTD_FirstSetMsrs", HFILL }}, 7599 { &hf_rrlp_SeqOfOTD_FirstSetMsrs_item, 7600 { "OTD-FirstSetMsrs", "rrlp.OTD_FirstSetMsrs_element", 7601 FT_NONE, BASE_NONE, NULL, 0, 7602 NULL, HFILL }}, 7603 { &hf_rrlp_otd_MsrsOfOtherSets, 7604 { "otd-MsrsOfOtherSets", "rrlp.otd_MsrsOfOtherSets", 7605 FT_UINT32, BASE_DEC, NULL, 0, 7606 "SeqOfOTD_MsrsOfOtherSets", HFILL }}, 7607 { &hf_rrlp_SeqOfOTD_MsrsOfOtherSets_item, 7608 { "OTD-MsrsOfOtherSets", "rrlp.OTD_MsrsOfOtherSets", 7609 FT_UINT32, BASE_DEC, VALS(rrlp_OTD_MsrsOfOtherSets_vals), 0, 7610 NULL, HFILL }}, 7611 { &hf_rrlp_refQuality, 7612 { "refQuality", "rrlp.refQuality", 7613 FT_UINT32, BASE_DEC, NULL, 0, 7614 NULL, HFILL }}, 7615 { &hf_rrlp_numOfMeasurements, 7616 { "numOfMeasurements", "rrlp.numOfMeasurements", 7617 FT_UINT32, BASE_DEC, NULL, 0, 7618 NULL, HFILL }}, 7619 { &hf_rrlp_identityNotPresent, 7620 { "identityNotPresent", "rrlp.identityNotPresent_element", 7621 FT_NONE, BASE_NONE, NULL, 0, 7622 "OTD_Measurement", HFILL }}, 7623 { &hf_rrlp_identityPresent, 7624 { "identityPresent", "rrlp.identityPresent_element", 7625 FT_NONE, BASE_NONE, NULL, 0, 7626 "OTD_MeasurementWithID", HFILL }}, 7627 { &hf_rrlp_nborTimeSlot, 7628 { "nborTimeSlot", "rrlp.nborTimeSlot", 7629 FT_UINT32, BASE_DEC, NULL, 0, 7630 "ModuloTimeSlot", HFILL }}, 7631 { &hf_rrlp_eotdQuality, 7632 { "eotdQuality", "rrlp.eotdQuality_element", 7633 FT_NONE, BASE_NONE, NULL, 0, 7634 NULL, HFILL }}, 7635 { &hf_rrlp_otdValue, 7636 { "otdValue", "rrlp.otdValue", 7637 FT_UINT32, BASE_DEC, NULL, 0, 7638 NULL, HFILL }}, 7639 { &hf_rrlp_neighborIdentity, 7640 { "neighborIdentity", "rrlp.neighborIdentity", 7641 FT_UINT32, BASE_DEC, VALS(rrlp_NeighborIdentity_vals), 0, 7642 NULL, HFILL }}, 7643 { &hf_rrlp_nbrOfMeasurements, 7644 { "nbrOfMeasurements", "rrlp.nbrOfMeasurements", 7645 FT_UINT32, BASE_DEC, NULL, 0, 7646 "INTEGER_0_7", HFILL }}, 7647 { &hf_rrlp_stdOfEOTD, 7648 { "stdOfEOTD", "rrlp.stdOfEOTD", 7649 FT_UINT32, BASE_DEC, NULL, 0, 7650 "INTEGER_0_31", HFILL }}, 7651 { &hf_rrlp_multiFrameCarrier, 7652 { "multiFrameCarrier", "rrlp.multiFrameCarrier_element", 7653 FT_NONE, BASE_NONE, NULL, 0, 7654 NULL, HFILL }}, 7655 { &hf_rrlp_refFrame, 7656 { "refFrame", "rrlp.refFrame", 7657 FT_UINT32, BASE_DEC, NULL, 0, 7658 "INTEGER_0_65535", HFILL }}, 7659 { &hf_rrlp_gpsTOW, 7660 { "gpsTOW", "rrlp.gpsTOW", 7661 FT_UINT32, BASE_DEC, NULL, 0, 7662 "INTEGER_0_14399999", HFILL }}, 7663 { &hf_rrlp_fixType, 7664 { "fixType", "rrlp.fixType", 7665 FT_UINT32, BASE_DEC, VALS(rrlp_FixType_vals), 0, 7666 NULL, HFILL }}, 7667 { &hf_rrlp_posEstimate, 7668 { "posEstimate", "rrlp.posEstimate", 7669 FT_BYTES, BASE_NONE, NULL, 0, 7670 "Ext_GeographicalInformation", HFILL }}, 7671 { &hf_rrlp_gpsMsrSetList, 7672 { "gpsMsrSetList", "rrlp.gpsMsrSetList", 7673 FT_UINT32, BASE_DEC, NULL, 0, 7674 "SeqOfGPS_MsrSetElement", HFILL }}, 7675 { &hf_rrlp_SeqOfGPS_MsrSetElement_item, 7676 { "GPS-MsrSetElement", "rrlp.GPS_MsrSetElement_element", 7677 FT_NONE, BASE_NONE, NULL, 0, 7678 NULL, HFILL }}, 7679 { &hf_rrlp_gpsTOW_01, 7680 { "gpsTOW", "rrlp.gpsTOW", 7681 FT_UINT32, BASE_DEC, NULL, 0, 7682 "GPSTOW24b", HFILL }}, 7683 { &hf_rrlp_gps_msrList, 7684 { "gps-msrList", "rrlp.gps_msrList", 7685 FT_UINT32, BASE_DEC, NULL, 0, 7686 "SeqOfGPS_MsrElement", HFILL }}, 7687 { &hf_rrlp_SeqOfGPS_MsrElement_item, 7688 { "GPS-MsrElement", "rrlp.GPS_MsrElement_element", 7689 FT_NONE, BASE_NONE, NULL, 0, 7690 NULL, HFILL }}, 7691 { &hf_rrlp_satelliteID, 7692 { "satelliteID", "rrlp.satelliteID", 7693 FT_UINT32, BASE_DEC, NULL, 0, 7694 NULL, HFILL }}, 7695 { &hf_rrlp_cNo, 7696 { "cNo", "rrlp.cNo", 7697 FT_UINT32, BASE_DEC, NULL, 0, 7698 "INTEGER_0_63", HFILL }}, 7699 { &hf_rrlp_doppler, 7700 { "doppler", "rrlp.doppler", 7701 FT_INT32, BASE_DEC, NULL, 0, 7702 "INTEGER_M32768_32767", HFILL }}, 7703 { &hf_rrlp_wholeChips, 7704 { "wholeChips", "rrlp.wholeChips", 7705 FT_UINT32, BASE_DEC, NULL, 0, 7706 "INTEGER_0_1022", HFILL }}, 7707 { &hf_rrlp_fracChips, 7708 { "fracChips", "rrlp.fracChips", 7709 FT_UINT32, BASE_DEC, NULL, 0, 7710 "INTEGER_0_1024", HFILL }}, 7711 { &hf_rrlp_mpathIndic, 7712 { "mpathIndic", "rrlp.mpathIndic", 7713 FT_UINT32, BASE_DEC, VALS(rrlp_MpathIndic_vals), 0, 7714 NULL, HFILL }}, 7715 { &hf_rrlp_pseuRangeRMSErr, 7716 { "pseuRangeRMSErr", "rrlp.pseuRangeRMSErr", 7717 FT_UINT32, BASE_DEC, NULL, 0, 7718 "INTEGER_0_63", HFILL }}, 7719 { &hf_rrlp_locErrorReason, 7720 { "locErrorReason", "rrlp.locErrorReason", 7721 FT_UINT32, BASE_DEC, VALS(rrlp_LocErrorReason_vals), 0, 7722 NULL, HFILL }}, 7723 { &hf_rrlp_additionalAssistanceData, 7724 { "additionalAssistanceData", "rrlp.additionalAssistanceData_element", 7725 FT_NONE, BASE_NONE, NULL, 0, 7726 NULL, HFILL }}, 7727 { &hf_rrlp_gpsAssistanceData, 7728 { "gpsAssistanceData", "rrlp.gpsAssistanceData", 7729 FT_BYTES, BASE_NONE, NULL, 0, 7730 NULL, HFILL }}, 7731 { &hf_rrlp_ganssAssistanceData, 7732 { "ganssAssistanceData", "rrlp.ganssAssistanceData", 7733 FT_BYTES, BASE_NONE, NULL, 0, 7734 NULL, HFILL }}, 7735 { &hf_rrlp_controlHeader, 7736 { "controlHeader", "rrlp.controlHeader_element", 7737 FT_NONE, BASE_NONE, NULL, 0, 7738 NULL, HFILL }}, 7739 { &hf_rrlp_referenceTime, 7740 { "referenceTime", "rrlp.referenceTime_element", 7741 FT_NONE, BASE_NONE, NULL, 0, 7742 NULL, HFILL }}, 7743 { &hf_rrlp_refLocation, 7744 { "refLocation", "rrlp.refLocation_element", 7745 FT_NONE, BASE_NONE, NULL, 0, 7746 NULL, HFILL }}, 7747 { &hf_rrlp_dgpsCorrections, 7748 { "dgpsCorrections", "rrlp.dgpsCorrections_element", 7749 FT_NONE, BASE_NONE, NULL, 0, 7750 NULL, HFILL }}, 7751 { &hf_rrlp_navigationModel, 7752 { "navigationModel", "rrlp.navigationModel_element", 7753 FT_NONE, BASE_NONE, NULL, 0, 7754 NULL, HFILL }}, 7755 { &hf_rrlp_ionosphericModel, 7756 { "ionosphericModel", "rrlp.ionosphericModel_element", 7757 FT_NONE, BASE_NONE, NULL, 0, 7758 NULL, HFILL }}, 7759 { &hf_rrlp_utcModel, 7760 { "utcModel", "rrlp.utcModel_element", 7761 FT_NONE, BASE_NONE, NULL, 0, 7762 NULL, HFILL }}, 7763 { &hf_rrlp_almanac, 7764 { "almanac", "rrlp.almanac_element", 7765 FT_NONE, BASE_NONE, NULL, 0, 7766 NULL, HFILL }}, 7767 { &hf_rrlp_acquisAssist, 7768 { "acquisAssist", "rrlp.acquisAssist_element", 7769 FT_NONE, BASE_NONE, NULL, 0, 7770 NULL, HFILL }}, 7771 { &hf_rrlp_realTimeIntegrity, 7772 { "realTimeIntegrity", "rrlp.realTimeIntegrity", 7773 FT_UINT32, BASE_DEC, NULL, 0, 7774 "SeqOf_BadSatelliteSet", HFILL }}, 7775 { &hf_rrlp_gpsTime, 7776 { "gpsTime", "rrlp.gpsTime_element", 7777 FT_NONE, BASE_NONE, NULL, 0, 7778 NULL, HFILL }}, 7779 { &hf_rrlp_gsmTime, 7780 { "gsmTime", "rrlp.gsmTime_element", 7781 FT_NONE, BASE_NONE, NULL, 0, 7782 NULL, HFILL }}, 7783 { &hf_rrlp_gpsTowAssist, 7784 { "gpsTowAssist", "rrlp.gpsTowAssist", 7785 FT_UINT32, BASE_DEC, NULL, 0, 7786 NULL, HFILL }}, 7787 { &hf_rrlp_gpsTOW23b, 7788 { "gpsTOW23b", "rrlp.gpsTOW23b", 7789 FT_UINT32, BASE_DEC, NULL, 0, 7790 NULL, HFILL }}, 7791 { &hf_rrlp_gpsWeek, 7792 { "gpsWeek", "rrlp.gpsWeek", 7793 FT_UINT32, BASE_DEC, NULL, 0, 7794 NULL, HFILL }}, 7795 { &hf_rrlp_GPSTOWAssist_item, 7796 { "GPSTOWAssistElement", "rrlp.GPSTOWAssistElement_element", 7797 FT_NONE, BASE_NONE, NULL, 0, 7798 NULL, HFILL }}, 7799 { &hf_rrlp_tlmWord, 7800 { "tlmWord", "rrlp.tlmWord", 7801 FT_UINT32, BASE_DEC, NULL, 0, 7802 NULL, HFILL }}, 7803 { &hf_rrlp_antiSpoof, 7804 { "antiSpoof", "rrlp.antiSpoof", 7805 FT_UINT32, BASE_DEC, NULL, 0, 7806 "AntiSpoofFlag", HFILL }}, 7807 { &hf_rrlp_alert, 7808 { "alert", "rrlp.alert", 7809 FT_UINT32, BASE_DEC, NULL, 0, 7810 "AlertFlag", HFILL }}, 7811 { &hf_rrlp_tlmRsvdBits, 7812 { "tlmRsvdBits", "rrlp.tlmRsvdBits", 7813 FT_UINT32, BASE_DEC, NULL, 0, 7814 "TLMReservedBits", HFILL }}, 7815 { &hf_rrlp_frameNumber, 7816 { "frameNumber", "rrlp.frameNumber", 7817 FT_UINT32, BASE_DEC, NULL, 0, 7818 NULL, HFILL }}, 7819 { &hf_rrlp_timeSlot, 7820 { "timeSlot", "rrlp.timeSlot", 7821 FT_UINT32, BASE_DEC, NULL, 0, 7822 NULL, HFILL }}, 7823 { &hf_rrlp_bitNumber, 7824 { "bitNumber", "rrlp.bitNumber", 7825 FT_UINT32, BASE_DEC, NULL, 0, 7826 NULL, HFILL }}, 7827 { &hf_rrlp_threeDLocation, 7828 { "threeDLocation", "rrlp.threeDLocation", 7829 FT_BYTES, BASE_NONE, NULL, 0, 7830 "Ext_GeographicalInformation", HFILL }}, 7831 { &hf_rrlp_gpsTOW_02, 7832 { "gpsTOW", "rrlp.gpsTOW", 7833 FT_UINT32, BASE_DEC, NULL, 0, 7834 "INTEGER_0_604799", HFILL }}, 7835 { &hf_rrlp_status, 7836 { "status", "rrlp.status", 7837 FT_UINT32, BASE_DEC, NULL, 0, 7838 "INTEGER_0_7", HFILL }}, 7839 { &hf_rrlp_satList, 7840 { "satList", "rrlp.satList", 7841 FT_UINT32, BASE_DEC, NULL, 0, 7842 "SeqOfSatElement", HFILL }}, 7843 { &hf_rrlp_SeqOfSatElement_item, 7844 { "SatElement", "rrlp.SatElement_element", 7845 FT_NONE, BASE_NONE, NULL, 0, 7846 NULL, HFILL }}, 7847 { &hf_rrlp_iode, 7848 { "iode", "rrlp.iode", 7849 FT_UINT32, BASE_DEC, NULL, 0, 7850 "INTEGER_0_239", HFILL }}, 7851 { &hf_rrlp_udre, 7852 { "udre", "rrlp.udre", 7853 FT_UINT32, BASE_DEC, NULL, 0, 7854 "INTEGER_0_3", HFILL }}, 7855 { &hf_rrlp_pseudoRangeCor, 7856 { "pseudoRangeCor", "rrlp.pseudoRangeCor", 7857 FT_INT32, BASE_DEC, NULL, 0, 7858 "INTEGER_M2047_2047", HFILL }}, 7859 { &hf_rrlp_rangeRateCor, 7860 { "rangeRateCor", "rrlp.rangeRateCor", 7861 FT_INT32, BASE_DEC, NULL, 0, 7862 "INTEGER_M127_127", HFILL }}, 7863 { &hf_rrlp_deltaPseudoRangeCor2, 7864 { "deltaPseudoRangeCor2", "rrlp.deltaPseudoRangeCor2", 7865 FT_INT32, BASE_DEC, NULL, 0, 7866 "INTEGER_M127_127", HFILL }}, 7867 { &hf_rrlp_deltaRangeRateCor2, 7868 { "deltaRangeRateCor2", "rrlp.deltaRangeRateCor2", 7869 FT_INT32, BASE_DEC, NULL, 0, 7870 "INTEGER_M7_7", HFILL }}, 7871 { &hf_rrlp_deltaPseudoRangeCor3, 7872 { "deltaPseudoRangeCor3", "rrlp.deltaPseudoRangeCor3", 7873 FT_INT32, BASE_DEC, NULL, 0, 7874 "INTEGER_M127_127", HFILL }}, 7875 { &hf_rrlp_deltaRangeRateCor3, 7876 { "deltaRangeRateCor3", "rrlp.deltaRangeRateCor3", 7877 FT_INT32, BASE_DEC, NULL, 0, 7878 "INTEGER_M7_7", HFILL }}, 7879 { &hf_rrlp_navModelList, 7880 { "navModelList", "rrlp.navModelList", 7881 FT_UINT32, BASE_DEC, NULL, 0, 7882 "SeqOfNavModelElement", HFILL }}, 7883 { &hf_rrlp_SeqOfNavModelElement_item, 7884 { "NavModelElement", "rrlp.NavModelElement_element", 7885 FT_NONE, BASE_NONE, NULL, 0, 7886 NULL, HFILL }}, 7887 { &hf_rrlp_satStatus, 7888 { "satStatus", "rrlp.satStatus", 7889 FT_UINT32, BASE_DEC, VALS(rrlp_SatStatus_vals), 0, 7890 NULL, HFILL }}, 7891 { &hf_rrlp_newSatelliteAndModelUC, 7892 { "newSatelliteAndModelUC", "rrlp.newSatelliteAndModelUC_element", 7893 FT_NONE, BASE_NONE, NULL, 0, 7894 "UncompressedEphemeris", HFILL }}, 7895 { &hf_rrlp_oldSatelliteAndModel, 7896 { "oldSatelliteAndModel", "rrlp.oldSatelliteAndModel_element", 7897 FT_NONE, BASE_NONE, NULL, 0, 7898 NULL, HFILL }}, 7899 { &hf_rrlp_newNaviModelUC, 7900 { "newNaviModelUC", "rrlp.newNaviModelUC_element", 7901 FT_NONE, BASE_NONE, NULL, 0, 7902 "UncompressedEphemeris", HFILL }}, 7903 { &hf_rrlp_ephemCodeOnL2, 7904 { "ephemCodeOnL2", "rrlp.ephemCodeOnL2", 7905 FT_UINT32, BASE_DEC, NULL, 0, 7906 "INTEGER_0_3", HFILL }}, 7907 { &hf_rrlp_ephemURA, 7908 { "ephemURA", "rrlp.ephemURA", 7909 FT_UINT32, BASE_DEC, NULL, 0, 7910 "INTEGER_0_15", HFILL }}, 7911 { &hf_rrlp_ephemSVhealth, 7912 { "ephemSVhealth", "rrlp.ephemSVhealth", 7913 FT_UINT32, BASE_DEC, NULL, 0, 7914 "INTEGER_0_63", HFILL }}, 7915 { &hf_rrlp_ephemIODC, 7916 { "ephemIODC", "rrlp.ephemIODC", 7917 FT_UINT32, BASE_DEC, NULL, 0, 7918 "INTEGER_0_1023", HFILL }}, 7919 { &hf_rrlp_ephemL2Pflag, 7920 { "ephemL2Pflag", "rrlp.ephemL2Pflag", 7921 FT_UINT32, BASE_DEC, NULL, 0, 7922 "INTEGER_0_1", HFILL }}, 7923 { &hf_rrlp_ephemSF1Rsvd, 7924 { "ephemSF1Rsvd", "rrlp.ephemSF1Rsvd_element", 7925 FT_NONE, BASE_NONE, NULL, 0, 7926 "EphemerisSubframe1Reserved", HFILL }}, 7927 { &hf_rrlp_ephemTgd, 7928 { "ephemTgd", "rrlp.ephemTgd", 7929 FT_INT32, BASE_DEC, NULL, 0, 7930 "INTEGER_M128_127", HFILL }}, 7931 { &hf_rrlp_ephemToc, 7932 { "ephemToc", "rrlp.ephemToc", 7933 FT_UINT32, BASE_DEC, NULL, 0, 7934 "INTEGER_0_37799", HFILL }}, 7935 { &hf_rrlp_ephemAF2, 7936 { "ephemAF2", "rrlp.ephemAF2", 7937 FT_INT32, BASE_DEC, NULL, 0, 7938 "INTEGER_M128_127", HFILL }}, 7939 { &hf_rrlp_ephemAF1, 7940 { "ephemAF1", "rrlp.ephemAF1", 7941 FT_INT32, BASE_DEC, NULL, 0, 7942 "INTEGER_M32768_32767", HFILL }}, 7943 { &hf_rrlp_ephemAF0, 7944 { "ephemAF0", "rrlp.ephemAF0", 7945 FT_INT32, BASE_DEC, NULL, 0, 7946 "INTEGER_M2097152_2097151", HFILL }}, 7947 { &hf_rrlp_ephemCrs, 7948 { "ephemCrs", "rrlp.ephemCrs", 7949 FT_INT32, BASE_DEC, NULL, 0, 7950 "INTEGER_M32768_32767", HFILL }}, 7951 { &hf_rrlp_ephemDeltaN, 7952 { "ephemDeltaN", "rrlp.ephemDeltaN", 7953 FT_INT32, BASE_DEC, NULL, 0, 7954 "INTEGER_M32768_32767", HFILL }}, 7955 { &hf_rrlp_ephemM0, 7956 { "ephemM0", "rrlp.ephemM0", 7957 FT_INT32, BASE_DEC, NULL, 0, 7958 "INTEGER_M2147483648_2147483647", HFILL }}, 7959 { &hf_rrlp_ephemCuc, 7960 { "ephemCuc", "rrlp.ephemCuc", 7961 FT_INT32, BASE_DEC, NULL, 0, 7962 "INTEGER_M32768_32767", HFILL }}, 7963 { &hf_rrlp_ephemE, 7964 { "ephemE", "rrlp.ephemE", 7965 FT_UINT32, BASE_DEC, NULL, 0, 7966 "INTEGER_0_4294967295", HFILL }}, 7967 { &hf_rrlp_ephemCus, 7968 { "ephemCus", "rrlp.ephemCus", 7969 FT_INT32, BASE_DEC, NULL, 0, 7970 "INTEGER_M32768_32767", HFILL }}, 7971 { &hf_rrlp_ephemAPowerHalf, 7972 { "ephemAPowerHalf", "rrlp.ephemAPowerHalf", 7973 FT_UINT32, BASE_DEC, NULL, 0, 7974 "INTEGER_0_4294967295", HFILL }}, 7975 { &hf_rrlp_ephemToe, 7976 { "ephemToe", "rrlp.ephemToe", 7977 FT_UINT32, BASE_DEC, NULL, 0, 7978 "INTEGER_0_37799", HFILL }}, 7979 { &hf_rrlp_ephemFitFlag, 7980 { "ephemFitFlag", "rrlp.ephemFitFlag", 7981 FT_UINT32, BASE_DEC, NULL, 0, 7982 "INTEGER_0_1", HFILL }}, 7983 { &hf_rrlp_ephemAODA, 7984 { "ephemAODA", "rrlp.ephemAODA", 7985 FT_UINT32, BASE_DEC, NULL, 0, 7986 "INTEGER_0_31", HFILL }}, 7987 { &hf_rrlp_ephemCic, 7988 { "ephemCic", "rrlp.ephemCic", 7989 FT_INT32, BASE_DEC, NULL, 0, 7990 "INTEGER_M32768_32767", HFILL }}, 7991 { &hf_rrlp_ephemOmegaA0, 7992 { "ephemOmegaA0", "rrlp.ephemOmegaA0", 7993 FT_INT32, BASE_DEC, NULL, 0, 7994 "INTEGER_M2147483648_2147483647", HFILL }}, 7995 { &hf_rrlp_ephemCis, 7996 { "ephemCis", "rrlp.ephemCis", 7997 FT_INT32, BASE_DEC, NULL, 0, 7998 "INTEGER_M32768_32767", HFILL }}, 7999 { &hf_rrlp_ephemI0, 8000 { "ephemI0", "rrlp.ephemI0", 8001 FT_INT32, BASE_DEC, NULL, 0, 8002 "INTEGER_M2147483648_2147483647", HFILL }}, 8003 { &hf_rrlp_ephemCrc, 8004 { "ephemCrc", "rrlp.ephemCrc", 8005 FT_INT32, BASE_DEC, NULL, 0, 8006 "INTEGER_M32768_32767", HFILL }}, 8007 { &hf_rrlp_ephemW, 8008 { "ephemW", "rrlp.ephemW", 8009 FT_INT32, BASE_DEC, NULL, 0, 8010 "INTEGER_M2147483648_2147483647", HFILL }}, 8011 { &hf_rrlp_ephemOmegaADot, 8012 { "ephemOmegaADot", "rrlp.ephemOmegaADot", 8013 FT_INT32, BASE_DEC, NULL, 0, 8014 "INTEGER_M8388608_8388607", HFILL }}, 8015 { &hf_rrlp_ephemIDot, 8016 { "ephemIDot", "rrlp.ephemIDot", 8017 FT_INT32, BASE_DEC, NULL, 0, 8018 "INTEGER_M8192_8191", HFILL }}, 8019 { &hf_rrlp_reserved1, 8020 { "reserved1", "rrlp.reserved1", 8021 FT_UINT32, BASE_DEC, NULL, 0, 8022 "INTEGER_0_8388607", HFILL }}, 8023 { &hf_rrlp_reserved2, 8024 { "reserved2", "rrlp.reserved2", 8025 FT_UINT32, BASE_DEC, NULL, 0, 8026 "INTEGER_0_16777215", HFILL }}, 8027 { &hf_rrlp_reserved3, 8028 { "reserved3", "rrlp.reserved3", 8029 FT_UINT32, BASE_DEC, NULL, 0, 8030 "INTEGER_0_16777215", HFILL }}, 8031 { &hf_rrlp_reserved4, 8032 { "reserved4", "rrlp.reserved4", 8033 FT_UINT32, BASE_DEC, NULL, 0, 8034 "INTEGER_0_65535", HFILL }}, 8035 { &hf_rrlp_alfa0, 8036 { "alfa0", "rrlp.alfa0", 8037 FT_INT32, BASE_DEC, NULL, 0, 8038 "INTEGER_M128_127", HFILL }}, 8039 { &hf_rrlp_alfa1, 8040 { "alfa1", "rrlp.alfa1", 8041 FT_INT32, BASE_DEC, NULL, 0, 8042 "INTEGER_M128_127", HFILL }}, 8043 { &hf_rrlp_alfa2, 8044 { "alfa2", "rrlp.alfa2", 8045 FT_INT32, BASE_DEC, NULL, 0, 8046 "INTEGER_M128_127", HFILL }}, 8047 { &hf_rrlp_alfa3, 8048 { "alfa3", "rrlp.alfa3", 8049 FT_INT32, BASE_DEC, NULL, 0, 8050 "INTEGER_M128_127", HFILL }}, 8051 { &hf_rrlp_beta0, 8052 { "beta0", "rrlp.beta0", 8053 FT_INT32, BASE_DEC, NULL, 0, 8054 "INTEGER_M128_127", HFILL }}, 8055 { &hf_rrlp_beta1, 8056 { "beta1", "rrlp.beta1", 8057 FT_INT32, BASE_DEC, NULL, 0, 8058 "INTEGER_M128_127", HFILL }}, 8059 { &hf_rrlp_beta2, 8060 { "beta2", "rrlp.beta2", 8061 FT_INT32, BASE_DEC, NULL, 0, 8062 "INTEGER_M128_127", HFILL }}, 8063 { &hf_rrlp_beta3, 8064 { "beta3", "rrlp.beta3", 8065 FT_INT32, BASE_DEC, NULL, 0, 8066 "INTEGER_M128_127", HFILL }}, 8067 { &hf_rrlp_utcA1, 8068 { "utcA1", "rrlp.utcA1", 8069 FT_INT32, BASE_DEC, NULL, 0, 8070 "INTEGER_M8388608_8388607", HFILL }}, 8071 { &hf_rrlp_utcA0, 8072 { "utcA0", "rrlp.utcA0", 8073 FT_INT32, BASE_DEC, NULL, 0, 8074 "INTEGER_M2147483648_2147483647", HFILL }}, 8075 { &hf_rrlp_utcTot, 8076 { "utcTot", "rrlp.utcTot", 8077 FT_UINT32, BASE_DEC, NULL, 0, 8078 "INTEGER_0_255", HFILL }}, 8079 { &hf_rrlp_utcWNt, 8080 { "utcWNt", "rrlp.utcWNt", 8081 FT_UINT32, BASE_DEC, NULL, 0, 8082 "INTEGER_0_255", HFILL }}, 8083 { &hf_rrlp_utcDeltaTls, 8084 { "utcDeltaTls", "rrlp.utcDeltaTls", 8085 FT_INT32, BASE_DEC, NULL, 0, 8086 "INTEGER_M128_127", HFILL }}, 8087 { &hf_rrlp_utcWNlsf, 8088 { "utcWNlsf", "rrlp.utcWNlsf", 8089 FT_UINT32, BASE_DEC, NULL, 0, 8090 "INTEGER_0_255", HFILL }}, 8091 { &hf_rrlp_utcDN, 8092 { "utcDN", "rrlp.utcDN", 8093 FT_INT32, BASE_DEC, NULL, 0, 8094 "INTEGER_M128_127", HFILL }}, 8095 { &hf_rrlp_utcDeltaTlsf, 8096 { "utcDeltaTlsf", "rrlp.utcDeltaTlsf", 8097 FT_INT32, BASE_DEC, NULL, 0, 8098 "INTEGER_M128_127", HFILL }}, 8099 { &hf_rrlp_alamanacWNa, 8100 { "alamanacWNa", "rrlp.alamanacWNa", 8101 FT_UINT32, BASE_DEC, NULL, 0, 8102 "INTEGER_0_255", HFILL }}, 8103 { &hf_rrlp_almanacList, 8104 { "almanacList", "rrlp.almanacList", 8105 FT_UINT32, BASE_DEC, NULL, 0, 8106 "SeqOfAlmanacElement", HFILL }}, 8107 { &hf_rrlp_SeqOfAlmanacElement_item, 8108 { "AlmanacElement", "rrlp.AlmanacElement_element", 8109 FT_NONE, BASE_NONE, NULL, 0, 8110 NULL, HFILL }}, 8111 { &hf_rrlp_almanacE, 8112 { "almanacE", "rrlp.almanacE", 8113 FT_UINT32, BASE_DEC, NULL, 0, 8114 "INTEGER_0_65535", HFILL }}, 8115 { &hf_rrlp_alamanacToa, 8116 { "alamanacToa", "rrlp.alamanacToa", 8117 FT_UINT32, BASE_DEC, NULL, 0, 8118 "INTEGER_0_255", HFILL }}, 8119 { &hf_rrlp_almanacKsii, 8120 { "almanacKsii", "rrlp.almanacKsii", 8121 FT_INT32, BASE_DEC, NULL, 0, 8122 "INTEGER_M32768_32767", HFILL }}, 8123 { &hf_rrlp_almanacOmegaDot, 8124 { "almanacOmegaDot", "rrlp.almanacOmegaDot", 8125 FT_INT32, BASE_DEC, NULL, 0, 8126 "INTEGER_M32768_32767", HFILL }}, 8127 { &hf_rrlp_almanacSVhealth, 8128 { "almanacSVhealth", "rrlp.almanacSVhealth", 8129 FT_UINT32, BASE_DEC, NULL, 0, 8130 "INTEGER_0_255", HFILL }}, 8131 { &hf_rrlp_almanacAPowerHalf, 8132 { "almanacAPowerHalf", "rrlp.almanacAPowerHalf", 8133 FT_UINT32, BASE_DEC, NULL, 0, 8134 "INTEGER_0_16777215", HFILL }}, 8135 { &hf_rrlp_almanacOmega0, 8136 { "almanacOmega0", "rrlp.almanacOmega0", 8137 FT_INT32, BASE_DEC, NULL, 0, 8138 "INTEGER_M8388608_8388607", HFILL }}, 8139 { &hf_rrlp_almanacW, 8140 { "almanacW", "rrlp.almanacW", 8141 FT_INT32, BASE_DEC, NULL, 0, 8142 "INTEGER_M8388608_8388607", HFILL }}, 8143 { &hf_rrlp_almanacM0, 8144 { "almanacM0", "rrlp.almanacM0", 8145 FT_INT32, BASE_DEC, NULL, 0, 8146 "INTEGER_M8388608_8388607", HFILL }}, 8147 { &hf_rrlp_almanacAF0, 8148 { "almanacAF0", "rrlp.almanacAF0", 8149 FT_INT32, BASE_DEC, NULL, 0, 8150 "INTEGER_M1024_1023", HFILL }}, 8151 { &hf_rrlp_almanacAF1, 8152 { "almanacAF1", "rrlp.almanacAF1", 8153 FT_INT32, BASE_DEC, NULL, 0, 8154 "INTEGER_M1024_1023", HFILL }}, 8155 { &hf_rrlp_timeRelation, 8156 { "timeRelation", "rrlp.timeRelation_element", 8157 FT_NONE, BASE_NONE, NULL, 0, 8158 NULL, HFILL }}, 8159 { &hf_rrlp_acquisList, 8160 { "acquisList", "rrlp.acquisList", 8161 FT_UINT32, BASE_DEC, NULL, 0, 8162 "SeqOfAcquisElement", HFILL }}, 8163 { &hf_rrlp_SeqOfAcquisElement_item, 8164 { "AcquisElement", "rrlp.AcquisElement_element", 8165 FT_NONE, BASE_NONE, NULL, 0, 8166 NULL, HFILL }}, 8167 { &hf_rrlp_gpsTOW_03, 8168 { "gpsTOW", "rrlp.gpsTOW", 8169 FT_UINT32, BASE_DEC, NULL, 0, 8170 "GPSTOW23b", HFILL }}, 8171 { &hf_rrlp_svid, 8172 { "svid", "rrlp.svid", 8173 FT_UINT32, BASE_DEC, NULL, 0, 8174 "SatelliteID", HFILL }}, 8175 { &hf_rrlp_doppler0, 8176 { "doppler0", "rrlp.doppler0", 8177 FT_INT32, BASE_DEC, NULL, 0, 8178 "INTEGER_M2048_2047", HFILL }}, 8179 { &hf_rrlp_addionalDoppler, 8180 { "addionalDoppler", "rrlp.addionalDoppler_element", 8181 FT_NONE, BASE_NONE, NULL, 0, 8182 "AddionalDopplerFields", HFILL }}, 8183 { &hf_rrlp_codePhase, 8184 { "codePhase", "rrlp.codePhase", 8185 FT_UINT32, BASE_DEC, NULL, 0, 8186 "INTEGER_0_1022", HFILL }}, 8187 { &hf_rrlp_intCodePhase, 8188 { "intCodePhase", "rrlp.intCodePhase", 8189 FT_UINT32, BASE_DEC, NULL, 0, 8190 "INTEGER_0_19", HFILL }}, 8191 { &hf_rrlp_gpsBitNumber, 8192 { "gpsBitNumber", "rrlp.gpsBitNumber", 8193 FT_UINT32, BASE_DEC, NULL, 0, 8194 "INTEGER_0_3", HFILL }}, 8195 { &hf_rrlp_codePhaseSearchWindow, 8196 { "codePhaseSearchWindow", "rrlp.codePhaseSearchWindow", 8197 FT_UINT32, BASE_DEC, NULL, 0, 8198 "INTEGER_0_15", HFILL }}, 8199 { &hf_rrlp_addionalAngle, 8200 { "addionalAngle", "rrlp.addionalAngle_element", 8201 FT_NONE, BASE_NONE, NULL, 0, 8202 "AddionalAngleFields", HFILL }}, 8203 { &hf_rrlp_doppler1, 8204 { "doppler1", "rrlp.doppler1", 8205 FT_UINT32, BASE_DEC, NULL, 0, 8206 "INTEGER_0_63", HFILL }}, 8207 { &hf_rrlp_dopplerUncertainty, 8208 { "dopplerUncertainty", "rrlp.dopplerUncertainty", 8209 FT_UINT32, BASE_DEC, NULL, 0, 8210 "INTEGER_0_7", HFILL }}, 8211 { &hf_rrlp_azimuth, 8212 { "azimuth", "rrlp.azimuth", 8213 FT_UINT32, BASE_DEC, NULL, 0, 8214 "INTEGER_0_31", HFILL }}, 8215 { &hf_rrlp_elevation, 8216 { "elevation", "rrlp.elevation", 8217 FT_UINT32, BASE_DEC, NULL, 0, 8218 "INTEGER_0_7", HFILL }}, 8219 { &hf_rrlp_SeqOf_BadSatelliteSet_item, 8220 { "SatelliteID", "rrlp.SatelliteID", 8221 FT_UINT32, BASE_DEC, NULL, 0, 8222 NULL, HFILL }}, 8223 { &hf_rrlp_rel98_Ext_ExpOTD, 8224 { "rel98-Ext-ExpOTD", "rrlp.rel98_Ext_ExpOTD_element", 8225 FT_NONE, BASE_NONE, NULL, 0, 8226 NULL, HFILL }}, 8227 { &hf_rrlp_gpsTimeAssistanceMeasurementRequest, 8228 { "gpsTimeAssistanceMeasurementRequest", "rrlp.gpsTimeAssistanceMeasurementRequest_element", 8229 FT_NONE, BASE_NONE, NULL, 0, 8230 NULL, HFILL }}, 8231 { &hf_rrlp_gpsReferenceTimeUncertainty, 8232 { "gpsReferenceTimeUncertainty", "rrlp.gpsReferenceTimeUncertainty", 8233 FT_UINT32, BASE_DEC, NULL, 0, 8234 NULL, HFILL }}, 8235 { &hf_rrlp_msrAssistData_R98_ExpOTD, 8236 { "msrAssistData-R98-ExpOTD", "rrlp.msrAssistData_R98_ExpOTD_element", 8237 FT_NONE, BASE_NONE, NULL, 0, 8238 NULL, HFILL }}, 8239 { &hf_rrlp_systemInfoAssistData_R98_ExpOTD, 8240 { "systemInfoAssistData-R98-ExpOTD", "rrlp.systemInfoAssistData_R98_ExpOTD_element", 8241 FT_NONE, BASE_NONE, NULL, 0, 8242 NULL, HFILL }}, 8243 { &hf_rrlp_msrAssistList_R98_ExpOTD, 8244 { "msrAssistList-R98-ExpOTD", "rrlp.msrAssistList_R98_ExpOTD", 8245 FT_UINT32, BASE_DEC, NULL, 0, 8246 "SeqOfMsrAssistBTS_R98_ExpOTD", HFILL }}, 8247 { &hf_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD_item, 8248 { "MsrAssistBTS-R98-ExpOTD", "rrlp.MsrAssistBTS_R98_ExpOTD_element", 8249 FT_NONE, BASE_NONE, NULL, 0, 8250 NULL, HFILL }}, 8251 { &hf_rrlp_expectedOTD, 8252 { "expectedOTD", "rrlp.expectedOTD", 8253 FT_UINT32, BASE_DEC, NULL, 0, 8254 NULL, HFILL }}, 8255 { &hf_rrlp_expOTDUncertainty, 8256 { "expOTDUncertainty", "rrlp.expOTDUncertainty", 8257 FT_UINT32, BASE_DEC, NULL, 0, 8258 NULL, HFILL }}, 8259 { &hf_rrlp_systemInfoAssistListR98_ExpOTD, 8260 { "systemInfoAssistListR98-ExpOTD", "rrlp.systemInfoAssistListR98_ExpOTD", 8261 FT_UINT32, BASE_DEC, NULL, 0, 8262 "SeqOfSystemInfoAssistBTS_R98_ExpOTD", HFILL }}, 8263 { &hf_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD_item, 8264 { "SystemInfoAssistBTS-R98-ExpOTD", "rrlp.SystemInfoAssistBTS_R98_ExpOTD", 8265 FT_UINT32, BASE_DEC, VALS(rrlp_SystemInfoAssistBTS_R98_ExpOTD_vals), 0, 8266 NULL, HFILL }}, 8267 { &hf_rrlp_present_01, 8268 { "present", "rrlp.present_element", 8269 FT_NONE, BASE_NONE, NULL, 0, 8270 "AssistBTSData_R98_ExpOTD", HFILL }}, 8271 { &hf_rrlp_expOTDuncertainty, 8272 { "expOTDuncertainty", "rrlp.expOTDuncertainty", 8273 FT_UINT32, BASE_DEC, NULL, 0, 8274 NULL, HFILL }}, 8275 { &hf_rrlp_referenceFrameMSB, 8276 { "referenceFrameMSB", "rrlp.referenceFrameMSB", 8277 FT_UINT32, BASE_DEC, NULL, 0, 8278 "INTEGER_0_63", HFILL }}, 8279 { &hf_rrlp_gpsTowSubms, 8280 { "gpsTowSubms", "rrlp.gpsTowSubms", 8281 FT_UINT32, BASE_DEC, NULL, 0, 8282 "INTEGER_0_9999", HFILL }}, 8283 { &hf_rrlp_deltaTow, 8284 { "deltaTow", "rrlp.deltaTow", 8285 FT_UINT32, BASE_DEC, NULL, 0, 8286 "INTEGER_0_127", HFILL }}, 8287 { &hf_rrlp_rel_98_Ext_MeasureInfo, 8288 { "rel-98-Ext-MeasureInfo", "rrlp.rel_98_Ext_MeasureInfo_element", 8289 FT_NONE, BASE_NONE, NULL, 0, 8290 "T_rel_98_Ext_MeasureInfo", HFILL }}, 8291 { &hf_rrlp_otd_MeasureInfo_R98_Ext, 8292 { "otd-MeasureInfo-R98-Ext", "rrlp.otd_MeasureInfo_R98_Ext_element", 8293 FT_NONE, BASE_NONE, NULL, 0, 8294 NULL, HFILL }}, 8295 { &hf_rrlp_timeAssistanceMeasurements, 8296 { "timeAssistanceMeasurements", "rrlp.timeAssistanceMeasurements_element", 8297 FT_NONE, BASE_NONE, NULL, 0, 8298 "GPSTimeAssistanceMeasurements", HFILL }}, 8299 { &hf_rrlp_otdMsrFirstSets_R98_Ext, 8300 { "otdMsrFirstSets-R98-Ext", "rrlp.otdMsrFirstSets_R98_Ext_element", 8301 FT_NONE, BASE_NONE, NULL, 0, 8302 "OTD_MsrElementFirst_R98_Ext", HFILL }}, 8303 { &hf_rrlp_otd_FirstSetMsrs_R98_Ext, 8304 { "otd-FirstSetMsrs-R98-Ext", "rrlp.otd_FirstSetMsrs_R98_Ext", 8305 FT_UINT32, BASE_DEC, NULL, 0, 8306 "SeqOfOTD_FirstSetMsrs_R98_Ext", HFILL }}, 8307 { &hf_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext_item, 8308 { "OTD-FirstSetMsrs", "rrlp.OTD_FirstSetMsrs_element", 8309 FT_NONE, BASE_NONE, NULL, 0, 8310 NULL, HFILL }}, 8311 { &hf_rrlp_otd_MeasureInfo_5_Ext, 8312 { "otd-MeasureInfo-5-Ext", "rrlp.otd_MeasureInfo_5_Ext", 8313 FT_UINT32, BASE_DEC, NULL, 0, 8314 NULL, HFILL }}, 8315 { &hf_rrlp_ulPseudoSegInd, 8316 { "ulPseudoSegInd", "rrlp.ulPseudoSegInd", 8317 FT_UINT32, BASE_DEC, VALS(rrlp_UlPseudoSegInd_vals), 0, 8318 NULL, HFILL }}, 8319 { &hf_rrlp_smlc_code, 8320 { "smlc-code", "rrlp.smlc_code", 8321 FT_UINT32, BASE_DEC, NULL, 0, 8322 "INTEGER_0_63", HFILL }}, 8323 { &hf_rrlp_transaction_ID, 8324 { "transaction-ID", "rrlp.transaction_ID", 8325 FT_UINT32, BASE_DEC, NULL, 0, 8326 "INTEGER_0_262143", HFILL }}, 8327 { &hf_rrlp_velocityRequested, 8328 { "velocityRequested", "rrlp.velocityRequested_element", 8329 FT_NONE, BASE_NONE, NULL, 0, 8330 NULL, HFILL }}, 8331 { &hf_rrlp_ganssPositionMethod, 8332 { "ganssPositionMethod", "rrlp.ganssPositionMethod", 8333 FT_BYTES, BASE_NONE, NULL, 0, 8334 "GANSSPositioningMethod", HFILL }}, 8335 { &hf_rrlp_ganss_AssistData, 8336 { "ganss-AssistData", "rrlp.ganss_AssistData_element", 8337 FT_NONE, BASE_NONE, NULL, 0, 8338 NULL, HFILL }}, 8339 { &hf_rrlp_ganssCarrierPhaseMeasurementRequest, 8340 { "ganssCarrierPhaseMeasurementRequest", "rrlp.ganssCarrierPhaseMeasurementRequest_element", 8341 FT_NONE, BASE_NONE, NULL, 0, 8342 NULL, HFILL }}, 8343 { &hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest, 8344 { "ganssTODGSMTimeAssociationMeasurementRequest", "rrlp.ganssTODGSMTimeAssociationMeasurementRequest_element", 8345 FT_NONE, BASE_NONE, NULL, 0, 8346 NULL, HFILL }}, 8347 { &hf_rrlp_requiredResponseTime, 8348 { "requiredResponseTime", "rrlp.requiredResponseTime", 8349 FT_UINT32, BASE_DEC, NULL, 0, 8350 NULL, HFILL }}, 8351 { &hf_rrlp_add_GPS_AssistData, 8352 { "add-GPS-AssistData", "rrlp.add_GPS_AssistData_element", 8353 FT_NONE, BASE_NONE, NULL, 0, 8354 NULL, HFILL }}, 8355 { &hf_rrlp_ganssMultiFreqMeasurementRequest, 8356 { "ganssMultiFreqMeasurementRequest", "rrlp.ganssMultiFreqMeasurementRequest_element", 8357 FT_NONE, BASE_NONE, NULL, 0, 8358 NULL, HFILL }}, 8359 { &hf_rrlp_ganss_controlHeader, 8360 { "ganss-controlHeader", "rrlp.ganss_controlHeader_element", 8361 FT_NONE, BASE_NONE, NULL, 0, 8362 NULL, HFILL }}, 8363 { &hf_rrlp_ganssCommonAssistData, 8364 { "ganssCommonAssistData", "rrlp.ganssCommonAssistData_element", 8365 FT_NONE, BASE_NONE, NULL, 0, 8366 NULL, HFILL }}, 8367 { &hf_rrlp_ganssGenericAssistDataList, 8368 { "ganssGenericAssistDataList", "rrlp.ganssGenericAssistDataList", 8369 FT_UINT32, BASE_DEC, NULL, 0, 8370 "SeqOfGANSSGenericAssistDataElement", HFILL }}, 8371 { &hf_rrlp_ganssReferenceTime, 8372 { "ganssReferenceTime", "rrlp.ganssReferenceTime_element", 8373 FT_NONE, BASE_NONE, NULL, 0, 8374 NULL, HFILL }}, 8375 { &hf_rrlp_ganssRefLocation, 8376 { "ganssRefLocation", "rrlp.ganssRefLocation_element", 8377 FT_NONE, BASE_NONE, NULL, 0, 8378 NULL, HFILL }}, 8379 { &hf_rrlp_ganssIonosphericModel, 8380 { "ganssIonosphericModel", "rrlp.ganssIonosphericModel_element", 8381 FT_NONE, BASE_NONE, NULL, 0, 8382 NULL, HFILL }}, 8383 { &hf_rrlp_ganssAddIonosphericModel, 8384 { "ganssAddIonosphericModel", "rrlp.ganssAddIonosphericModel_element", 8385 FT_NONE, BASE_NONE, NULL, 0, 8386 NULL, HFILL }}, 8387 { &hf_rrlp_ganssEarthOrientParam, 8388 { "ganssEarthOrientParam", "rrlp.ganssEarthOrientParam_element", 8389 FT_NONE, BASE_NONE, NULL, 0, 8390 NULL, HFILL }}, 8391 { &hf_rrlp_ganssReferenceTime_R10_Ext, 8392 { "ganssReferenceTime-R10-Ext", "rrlp.ganssReferenceTime_R10_Ext_element", 8393 FT_NONE, BASE_NONE, NULL, 0, 8394 NULL, HFILL }}, 8395 { &hf_rrlp_SeqOfGANSSGenericAssistDataElement_item, 8396 { "GANSSGenericAssistDataElement", "rrlp.GANSSGenericAssistDataElement_element", 8397 FT_NONE, BASE_NONE, NULL, 0, 8398 NULL, HFILL }}, 8399 { &hf_rrlp_ganssID, 8400 { "ganssID", "rrlp.ganssID", 8401 FT_UINT32, BASE_DEC, NULL, 0, 8402 "INTEGER_0_7", HFILL }}, 8403 { &hf_rrlp_ganssTimeModel, 8404 { "ganssTimeModel", "rrlp.ganssTimeModel", 8405 FT_UINT32, BASE_DEC, NULL, 0, 8406 "SeqOfGANSSTimeModel", HFILL }}, 8407 { &hf_rrlp_ganssDiffCorrections, 8408 { "ganssDiffCorrections", "rrlp.ganssDiffCorrections_element", 8409 FT_NONE, BASE_NONE, NULL, 0, 8410 NULL, HFILL }}, 8411 { &hf_rrlp_ganssNavigationModel, 8412 { "ganssNavigationModel", "rrlp.ganssNavigationModel_element", 8413 FT_NONE, BASE_NONE, NULL, 0, 8414 "GANSSNavModel", HFILL }}, 8415 { &hf_rrlp_ganssRealTimeIntegrity, 8416 { "ganssRealTimeIntegrity", "rrlp.ganssRealTimeIntegrity_element", 8417 FT_NONE, BASE_NONE, NULL, 0, 8418 NULL, HFILL }}, 8419 { &hf_rrlp_ganssDataBitAssist, 8420 { "ganssDataBitAssist", "rrlp.ganssDataBitAssist_element", 8421 FT_NONE, BASE_NONE, NULL, 0, 8422 NULL, HFILL }}, 8423 { &hf_rrlp_ganssRefMeasurementAssist, 8424 { "ganssRefMeasurementAssist", "rrlp.ganssRefMeasurementAssist_element", 8425 FT_NONE, BASE_NONE, NULL, 0, 8426 NULL, HFILL }}, 8427 { &hf_rrlp_ganssAlmanacModel, 8428 { "ganssAlmanacModel", "rrlp.ganssAlmanacModel_element", 8429 FT_NONE, BASE_NONE, NULL, 0, 8430 NULL, HFILL }}, 8431 { &hf_rrlp_ganssUTCModel, 8432 { "ganssUTCModel", "rrlp.ganssUTCModel_element", 8433 FT_NONE, BASE_NONE, NULL, 0, 8434 NULL, HFILL }}, 8435 { &hf_rrlp_ganssEphemerisExtension, 8436 { "ganssEphemerisExtension", "rrlp.ganssEphemerisExtension_element", 8437 FT_NONE, BASE_NONE, NULL, 0, 8438 NULL, HFILL }}, 8439 { &hf_rrlp_ganssEphemerisExtCheck, 8440 { "ganssEphemerisExtCheck", "rrlp.ganssEphemerisExtCheck_element", 8441 FT_NONE, BASE_NONE, NULL, 0, 8442 "GANSSEphemerisExtensionCheck", HFILL }}, 8443 { &hf_rrlp_sbasID, 8444 { "sbasID", "rrlp.sbasID", 8445 FT_UINT32, BASE_DEC, NULL, 0, 8446 "INTEGER_0_7", HFILL }}, 8447 { &hf_rrlp_ganssAddUTCModel, 8448 { "ganssAddUTCModel", "rrlp.ganssAddUTCModel", 8449 FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAddUTCModel_vals), 0, 8450 NULL, HFILL }}, 8451 { &hf_rrlp_ganssAuxiliaryInfo, 8452 { "ganssAuxiliaryInfo", "rrlp.ganssAuxiliaryInfo", 8453 FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAuxiliaryInformation_vals), 0, 8454 "GANSSAuxiliaryInformation", HFILL }}, 8455 { &hf_rrlp_ganssDiffCorrectionsValidityPeriod, 8456 { "ganssDiffCorrectionsValidityPeriod", "rrlp.ganssDiffCorrectionsValidityPeriod", 8457 FT_UINT32, BASE_DEC, NULL, 0, 8458 NULL, HFILL }}, 8459 { &hf_rrlp_ganssTimeModel_R10_Ext, 8460 { "ganssTimeModel-R10-Ext", "rrlp.ganssTimeModel_R10_Ext", 8461 FT_UINT32, BASE_DEC, NULL, 0, 8462 "SeqOfGANSSTimeModel_R10_Ext", HFILL }}, 8463 { &hf_rrlp_ganssRefMeasurementAssist_R10_Ext, 8464 { "ganssRefMeasurementAssist-R10-Ext", "rrlp.ganssRefMeasurementAssist_R10_Ext", 8465 FT_UINT32, BASE_DEC, NULL, 0, 8466 NULL, HFILL }}, 8467 { &hf_rrlp_ganssAlmanacModel_R10_Ext, 8468 { "ganssAlmanacModel-R10-Ext", "rrlp.ganssAlmanacModel_R10_Ext_element", 8469 FT_NONE, BASE_NONE, NULL, 0, 8470 NULL, HFILL }}, 8471 { &hf_rrlp_ganssRefTimeInfo, 8472 { "ganssRefTimeInfo", "rrlp.ganssRefTimeInfo_element", 8473 FT_NONE, BASE_NONE, NULL, 0, 8474 NULL, HFILL }}, 8475 { &hf_rrlp_ganssTOD_GSMTimeAssociation, 8476 { "ganssTOD-GSMTimeAssociation", "rrlp.ganssTOD_GSMTimeAssociation_element", 8477 FT_NONE, BASE_NONE, NULL, 0, 8478 NULL, HFILL }}, 8479 { &hf_rrlp_ganssDay, 8480 { "ganssDay", "rrlp.ganssDay", 8481 FT_UINT32, BASE_DEC, NULL, 0, 8482 "INTEGER_0_8191", HFILL }}, 8483 { &hf_rrlp_ganssTOD, 8484 { "ganssTOD", "rrlp.ganssTOD", 8485 FT_UINT32, BASE_DEC, NULL, 0, 8486 NULL, HFILL }}, 8487 { &hf_rrlp_ganssTODUncertainty, 8488 { "ganssTODUncertainty", "rrlp.ganssTODUncertainty", 8489 FT_UINT32, BASE_DEC, NULL, 0, 8490 NULL, HFILL }}, 8491 { &hf_rrlp_ganssTimeID, 8492 { "ganssTimeID", "rrlp.ganssTimeID", 8493 FT_UINT32, BASE_DEC, NULL, 0, 8494 "INTEGER_0_7", HFILL }}, 8495 { &hf_rrlp_ganssDayCycleNumber, 8496 { "ganssDayCycleNumber", "rrlp.ganssDayCycleNumber", 8497 FT_UINT32, BASE_DEC, NULL, 0, 8498 "INTEGER_0_7", HFILL }}, 8499 { &hf_rrlp_frameDrift, 8500 { "frameDrift", "rrlp.frameDrift", 8501 FT_INT32, BASE_DEC, NULL, 0, 8502 NULL, HFILL }}, 8503 { &hf_rrlp_ganssIonoModel, 8504 { "ganssIonoModel", "rrlp.ganssIonoModel_element", 8505 FT_NONE, BASE_NONE, NULL, 0, 8506 "GANSSIonosphereModel", HFILL }}, 8507 { &hf_rrlp_ganssIonoStormFlags, 8508 { "ganssIonoStormFlags", "rrlp.ganssIonoStormFlags_element", 8509 FT_NONE, BASE_NONE, NULL, 0, 8510 NULL, HFILL }}, 8511 { &hf_rrlp_ai0, 8512 { "ai0", "rrlp.ai0", 8513 FT_UINT32, BASE_DEC, NULL, 0, 8514 "INTEGER_0_4095", HFILL }}, 8515 { &hf_rrlp_ai1, 8516 { "ai1", "rrlp.ai1", 8517 FT_UINT32, BASE_DEC, NULL, 0, 8518 "INTEGER_0_4095", HFILL }}, 8519 { &hf_rrlp_ai2, 8520 { "ai2", "rrlp.ai2", 8521 FT_UINT32, BASE_DEC, NULL, 0, 8522 "INTEGER_0_4095", HFILL }}, 8523 { &hf_rrlp_ionoStormFlag1, 8524 { "ionoStormFlag1", "rrlp.ionoStormFlag1", 8525 FT_UINT32, BASE_DEC, NULL, 0, 8526 "INTEGER_0_1", HFILL }}, 8527 { &hf_rrlp_ionoStormFlag2, 8528 { "ionoStormFlag2", "rrlp.ionoStormFlag2", 8529 FT_UINT32, BASE_DEC, NULL, 0, 8530 "INTEGER_0_1", HFILL }}, 8531 { &hf_rrlp_ionoStormFlag3, 8532 { "ionoStormFlag3", "rrlp.ionoStormFlag3", 8533 FT_UINT32, BASE_DEC, NULL, 0, 8534 "INTEGER_0_1", HFILL }}, 8535 { &hf_rrlp_ionoStormFlag4, 8536 { "ionoStormFlag4", "rrlp.ionoStormFlag4", 8537 FT_UINT32, BASE_DEC, NULL, 0, 8538 "INTEGER_0_1", HFILL }}, 8539 { &hf_rrlp_ionoStormFlag5, 8540 { "ionoStormFlag5", "rrlp.ionoStormFlag5", 8541 FT_UINT32, BASE_DEC, NULL, 0, 8542 "INTEGER_0_1", HFILL }}, 8543 { &hf_rrlp_dataID, 8544 { "dataID", "rrlp.dataID", 8545 FT_BYTES, BASE_NONE, NULL, 0, 8546 "BIT_STRING_SIZE_2", HFILL }}, 8547 { &hf_rrlp_ionoModel, 8548 { "ionoModel", "rrlp.ionoModel_element", 8549 FT_NONE, BASE_NONE, NULL, 0, 8550 "IonosphericModel", HFILL }}, 8551 { &hf_rrlp_teop, 8552 { "teop", "rrlp.teop", 8553 FT_UINT32, BASE_DEC, NULL, 0, 8554 "INTEGER_0_65535", HFILL }}, 8555 { &hf_rrlp_pmX, 8556 { "pmX", "rrlp.pmX", 8557 FT_INT32, BASE_DEC, NULL, 0, 8558 "INTEGER_M1048576_1048575", HFILL }}, 8559 { &hf_rrlp_pmXdot, 8560 { "pmXdot", "rrlp.pmXdot", 8561 FT_INT32, BASE_DEC, NULL, 0, 8562 "INTEGER_M16384_16383", HFILL }}, 8563 { &hf_rrlp_pmY, 8564 { "pmY", "rrlp.pmY", 8565 FT_INT32, BASE_DEC, NULL, 0, 8566 "INTEGER_M1048576_1048575", HFILL }}, 8567 { &hf_rrlp_pmYdot, 8568 { "pmYdot", "rrlp.pmYdot", 8569 FT_INT32, BASE_DEC, NULL, 0, 8570 "INTEGER_M16384_16383", HFILL }}, 8571 { &hf_rrlp_deltaUT1, 8572 { "deltaUT1", "rrlp.deltaUT1", 8573 FT_INT32, BASE_DEC, NULL, 0, 8574 "INTEGER_M1073741824_1073741823", HFILL }}, 8575 { &hf_rrlp_deltaUT1dot, 8576 { "deltaUT1dot", "rrlp.deltaUT1dot", 8577 FT_INT32, BASE_DEC, NULL, 0, 8578 "INTEGER_M262144_262143", HFILL }}, 8579 { &hf_rrlp_SeqOfGANSSTimeModel_item, 8580 { "GANSSTimeModelElement", "rrlp.GANSSTimeModelElement_element", 8581 FT_NONE, BASE_NONE, NULL, 0, 8582 NULL, HFILL }}, 8583 { &hf_rrlp_ganssTimeModelRefTime, 8584 { "ganssTimeModelRefTime", "rrlp.ganssTimeModelRefTime", 8585 FT_UINT32, BASE_DEC, NULL, 0, 8586 "INTEGER_0_65535", HFILL }}, 8587 { &hf_rrlp_tA0, 8588 { "tA0", "rrlp.tA0", 8589 FT_INT32, BASE_DEC, NULL, 0, 8590 NULL, HFILL }}, 8591 { &hf_rrlp_tA1, 8592 { "tA1", "rrlp.tA1", 8593 FT_INT32, BASE_DEC, NULL, 0, 8594 NULL, HFILL }}, 8595 { &hf_rrlp_tA2, 8596 { "tA2", "rrlp.tA2", 8597 FT_INT32, BASE_DEC, NULL, 0, 8598 NULL, HFILL }}, 8599 { &hf_rrlp_gnssTOID, 8600 { "gnssTOID", "rrlp.gnssTOID", 8601 FT_UINT32, BASE_DEC, NULL, 0, 8602 "INTEGER_0_7", HFILL }}, 8603 { &hf_rrlp_weekNumber, 8604 { "weekNumber", "rrlp.weekNumber", 8605 FT_UINT32, BASE_DEC, NULL, 0, 8606 "INTEGER_0_8191", HFILL }}, 8607 { &hf_rrlp_SeqOfGANSSTimeModel_R10_Ext_item, 8608 { "GANSSTimeModelElement-R10-Ext", "rrlp.GANSSTimeModelElement_R10_Ext_element", 8609 FT_NONE, BASE_NONE, NULL, 0, 8610 NULL, HFILL }}, 8611 { &hf_rrlp_deltaT, 8612 { "deltaT", "rrlp.deltaT", 8613 FT_INT32, BASE_DEC, NULL, 0, 8614 "INTEGER_M128_127", HFILL }}, 8615 { &hf_rrlp_dganssRefTime, 8616 { "dganssRefTime", "rrlp.dganssRefTime", 8617 FT_UINT32, BASE_DEC, NULL, 0, 8618 "INTEGER_0_119", HFILL }}, 8619 { &hf_rrlp_sgnTypeList, 8620 { "sgnTypeList", "rrlp.sgnTypeList", 8621 FT_UINT32, BASE_DEC, NULL, 0, 8622 "SeqOfSgnTypeElement", HFILL }}, 8623 { &hf_rrlp_SeqOfSgnTypeElement_item, 8624 { "SgnTypeElement", "rrlp.SgnTypeElement_element", 8625 FT_NONE, BASE_NONE, NULL, 0, 8626 NULL, HFILL }}, 8627 { &hf_rrlp_ganssSignalID, 8628 { "ganssSignalID", "rrlp.ganssSignalID", 8629 FT_UINT32, BASE_DEC, NULL, 0, 8630 NULL, HFILL }}, 8631 { &hf_rrlp_ganssStatusHealth, 8632 { "ganssStatusHealth", "rrlp.ganssStatusHealth", 8633 FT_UINT32, BASE_DEC, NULL, 0, 8634 "INTEGER_0_7", HFILL }}, 8635 { &hf_rrlp_dganssSgnList, 8636 { "dganssSgnList", "rrlp.dganssSgnList", 8637 FT_UINT32, BASE_DEC, NULL, 0, 8638 "SeqOfDGANSSSgnElement", HFILL }}, 8639 { &hf_rrlp_SeqOfDGANSSSgnElement_item, 8640 { "DGANSSSgnElement", "rrlp.DGANSSSgnElement_element", 8641 FT_NONE, BASE_NONE, NULL, 0, 8642 NULL, HFILL }}, 8643 { &hf_rrlp_svID, 8644 { "svID", "rrlp.svID", 8645 FT_UINT32, BASE_DEC, NULL, 0, 8646 NULL, HFILL }}, 8647 { &hf_rrlp_iod, 8648 { "iod", "rrlp.iod", 8649 FT_UINT32, BASE_DEC, NULL, 0, 8650 "INTEGER_0_1023", HFILL }}, 8651 { &hf_rrlp_nonBroadcastIndFlag, 8652 { "nonBroadcastIndFlag", "rrlp.nonBroadcastIndFlag", 8653 FT_UINT32, BASE_DEC, NULL, 0, 8654 "INTEGER_0_1", HFILL }}, 8655 { &hf_rrlp_ganssSatelliteList, 8656 { "ganssSatelliteList", "rrlp.ganssSatelliteList", 8657 FT_UINT32, BASE_DEC, NULL, 0, 8658 "SeqOfGANSSSatelliteElement", HFILL }}, 8659 { &hf_rrlp_SeqOfGANSSSatelliteElement_item, 8660 { "GANSSSatelliteElement", "rrlp.GANSSSatelliteElement_element", 8661 FT_NONE, BASE_NONE, NULL, 0, 8662 NULL, HFILL }}, 8663 { &hf_rrlp_svHealth, 8664 { "svHealth", "rrlp.svHealth", 8665 FT_BYTES, BASE_NONE, NULL, 0, 8666 "BIT_STRING_SIZE_5", HFILL }}, 8667 { &hf_rrlp_ganssClockModel, 8668 { "ganssClockModel", "rrlp.ganssClockModel", 8669 FT_UINT32, BASE_DEC, VALS(rrlp_GANSSClockModel_vals), 0, 8670 NULL, HFILL }}, 8671 { &hf_rrlp_ganssOrbitModel, 8672 { "ganssOrbitModel", "rrlp.ganssOrbitModel", 8673 FT_UINT32, BASE_DEC, VALS(rrlp_GANSSOrbitModel_vals), 0, 8674 NULL, HFILL }}, 8675 { &hf_rrlp_svHealthMSB, 8676 { "svHealthMSB", "rrlp.svHealthMSB", 8677 FT_BYTES, BASE_NONE, NULL, 0, 8678 "BIT_STRING_SIZE_1", HFILL }}, 8679 { &hf_rrlp_iodMSB, 8680 { "iodMSB", "rrlp.iodMSB", 8681 FT_UINT32, BASE_DEC, NULL, 0, 8682 "INTEGER_0_1", HFILL }}, 8683 { &hf_rrlp_keplerianSet, 8684 { "keplerianSet", "rrlp.keplerianSet_element", 8685 FT_NONE, BASE_NONE, NULL, 0, 8686 "NavModel_KeplerianSet", HFILL }}, 8687 { &hf_rrlp_navKeplerianSet, 8688 { "navKeplerianSet", "rrlp.navKeplerianSet_element", 8689 FT_NONE, BASE_NONE, NULL, 0, 8690 "NavModel_NAVKeplerianSet", HFILL }}, 8691 { &hf_rrlp_cnavKeplerianSet, 8692 { "cnavKeplerianSet", "rrlp.cnavKeplerianSet_element", 8693 FT_NONE, BASE_NONE, NULL, 0, 8694 "NavModel_CNAVKeplerianSet", HFILL }}, 8695 { &hf_rrlp_glonassECEF, 8696 { "glonassECEF", "rrlp.glonassECEF_element", 8697 FT_NONE, BASE_NONE, NULL, 0, 8698 "NavModel_GLONASSecef", HFILL }}, 8699 { &hf_rrlp_sbasECEF, 8700 { "sbasECEF", "rrlp.sbasECEF_element", 8701 FT_NONE, BASE_NONE, NULL, 0, 8702 "NavModel_SBASecef", HFILL }}, 8703 { &hf_rrlp_keplerToe, 8704 { "keplerToe", "rrlp.keplerToe", 8705 FT_UINT32, BASE_DEC, NULL, 0, 8706 "INTEGER_0_16383", HFILL }}, 8707 { &hf_rrlp_keplerW, 8708 { "keplerW", "rrlp.keplerW", 8709 FT_INT32, BASE_DEC, NULL, 0, 8710 "INTEGER_M2147483648_2147483647", HFILL }}, 8711 { &hf_rrlp_keplerDeltaN, 8712 { "keplerDeltaN", "rrlp.keplerDeltaN", 8713 FT_INT32, BASE_DEC, NULL, 0, 8714 "INTEGER_M32768_32767", HFILL }}, 8715 { &hf_rrlp_keplerM0, 8716 { "keplerM0", "rrlp.keplerM0", 8717 FT_INT32, BASE_DEC, NULL, 0, 8718 "INTEGER_M2147483648_2147483647", HFILL }}, 8719 { &hf_rrlp_keplerOmegaDot, 8720 { "keplerOmegaDot", "rrlp.keplerOmegaDot", 8721 FT_INT32, BASE_DEC, NULL, 0, 8722 "INTEGER_M8388608_8388607", HFILL }}, 8723 { &hf_rrlp_keplerE, 8724 { "keplerE", "rrlp.keplerE", 8725 FT_UINT32, BASE_DEC, NULL, 0, 8726 "INTEGER_0_4294967295", HFILL }}, 8727 { &hf_rrlp_keplerIDot, 8728 { "keplerIDot", "rrlp.keplerIDot", 8729 FT_INT32, BASE_DEC, NULL, 0, 8730 "INTEGER_M8192_8191", HFILL }}, 8731 { &hf_rrlp_keplerAPowerHalf, 8732 { "keplerAPowerHalf", "rrlp.keplerAPowerHalf", 8733 FT_UINT32, BASE_DEC, NULL, 0, 8734 "INTEGER_0_4294967295", HFILL }}, 8735 { &hf_rrlp_keplerI0, 8736 { "keplerI0", "rrlp.keplerI0", 8737 FT_INT32, BASE_DEC, NULL, 0, 8738 "INTEGER_M2147483648_2147483647", HFILL }}, 8739 { &hf_rrlp_keplerOmega0, 8740 { "keplerOmega0", "rrlp.keplerOmega0", 8741 FT_INT32, BASE_DEC, NULL, 0, 8742 "INTEGER_M2147483648_2147483647", HFILL }}, 8743 { &hf_rrlp_keplerCrs, 8744 { "keplerCrs", "rrlp.keplerCrs", 8745 FT_INT32, BASE_DEC, NULL, 0, 8746 "INTEGER_M32768_32767", HFILL }}, 8747 { &hf_rrlp_keplerCis, 8748 { "keplerCis", "rrlp.keplerCis", 8749 FT_INT32, BASE_DEC, NULL, 0, 8750 "INTEGER_M32768_32767", HFILL }}, 8751 { &hf_rrlp_keplerCus, 8752 { "keplerCus", "rrlp.keplerCus", 8753 FT_INT32, BASE_DEC, NULL, 0, 8754 "INTEGER_M32768_32767", HFILL }}, 8755 { &hf_rrlp_keplerCrc, 8756 { "keplerCrc", "rrlp.keplerCrc", 8757 FT_INT32, BASE_DEC, NULL, 0, 8758 "INTEGER_M32768_32767", HFILL }}, 8759 { &hf_rrlp_keplerCic, 8760 { "keplerCic", "rrlp.keplerCic", 8761 FT_INT32, BASE_DEC, NULL, 0, 8762 "INTEGER_M32768_32767", HFILL }}, 8763 { &hf_rrlp_keplerCuc, 8764 { "keplerCuc", "rrlp.keplerCuc", 8765 FT_INT32, BASE_DEC, NULL, 0, 8766 "INTEGER_M32768_32767", HFILL }}, 8767 { &hf_rrlp_navURA, 8768 { "navURA", "rrlp.navURA", 8769 FT_UINT32, BASE_DEC, NULL, 0, 8770 "INTEGER_0_15", HFILL }}, 8771 { &hf_rrlp_navFitFlag, 8772 { "navFitFlag", "rrlp.navFitFlag", 8773 FT_UINT32, BASE_DEC, NULL, 0, 8774 "INTEGER_0_1", HFILL }}, 8775 { &hf_rrlp_navToe, 8776 { "navToe", "rrlp.navToe", 8777 FT_UINT32, BASE_DEC, NULL, 0, 8778 "INTEGER_0_37799", HFILL }}, 8779 { &hf_rrlp_navOmega, 8780 { "navOmega", "rrlp.navOmega", 8781 FT_INT32, BASE_DEC, NULL, 0, 8782 "INTEGER_M2147483648_2147483647", HFILL }}, 8783 { &hf_rrlp_navDeltaN, 8784 { "navDeltaN", "rrlp.navDeltaN", 8785 FT_INT32, BASE_DEC, NULL, 0, 8786 "INTEGER_M32768_32767", HFILL }}, 8787 { &hf_rrlp_navM0, 8788 { "navM0", "rrlp.navM0", 8789 FT_INT32, BASE_DEC, NULL, 0, 8790 "INTEGER_M2147483648_2147483647", HFILL }}, 8791 { &hf_rrlp_navOmegaADot, 8792 { "navOmegaADot", "rrlp.navOmegaADot", 8793 FT_INT32, BASE_DEC, NULL, 0, 8794 "INTEGER_M8388608_8388607", HFILL }}, 8795 { &hf_rrlp_navE, 8796 { "navE", "rrlp.navE", 8797 FT_UINT32, BASE_DEC, NULL, 0, 8798 "INTEGER_0_4294967295", HFILL }}, 8799 { &hf_rrlp_navIDot, 8800 { "navIDot", "rrlp.navIDot", 8801 FT_INT32, BASE_DEC, NULL, 0, 8802 "INTEGER_M8192_8191", HFILL }}, 8803 { &hf_rrlp_navAPowerHalf, 8804 { "navAPowerHalf", "rrlp.navAPowerHalf", 8805 FT_UINT32, BASE_DEC, NULL, 0, 8806 "INTEGER_0_4294967295", HFILL }}, 8807 { &hf_rrlp_navI0, 8808 { "navI0", "rrlp.navI0", 8809 FT_INT32, BASE_DEC, NULL, 0, 8810 "INTEGER_M2147483648_2147483647", HFILL }}, 8811 { &hf_rrlp_navOmegaA0, 8812 { "navOmegaA0", "rrlp.navOmegaA0", 8813 FT_INT32, BASE_DEC, NULL, 0, 8814 "INTEGER_M2147483648_2147483647", HFILL }}, 8815 { &hf_rrlp_navCrs, 8816 { "navCrs", "rrlp.navCrs", 8817 FT_INT32, BASE_DEC, NULL, 0, 8818 "INTEGER_M32768_32767", HFILL }}, 8819 { &hf_rrlp_navCis, 8820 { "navCis", "rrlp.navCis", 8821 FT_INT32, BASE_DEC, NULL, 0, 8822 "INTEGER_M32768_32767", HFILL }}, 8823 { &hf_rrlp_navCus, 8824 { "navCus", "rrlp.navCus", 8825 FT_INT32, BASE_DEC, NULL, 0, 8826 "INTEGER_M32768_32767", HFILL }}, 8827 { &hf_rrlp_navCrc, 8828 { "navCrc", "rrlp.navCrc", 8829 FT_INT32, BASE_DEC, NULL, 0, 8830 "INTEGER_M32768_32767", HFILL }}, 8831 { &hf_rrlp_navCic, 8832 { "navCic", "rrlp.navCic", 8833 FT_INT32, BASE_DEC, NULL, 0, 8834 "INTEGER_M32768_32767", HFILL }}, 8835 { &hf_rrlp_navCuc, 8836 { "navCuc", "rrlp.navCuc", 8837 FT_INT32, BASE_DEC, NULL, 0, 8838 "INTEGER_M32768_32767", HFILL }}, 8839 { &hf_rrlp_cnavTop, 8840 { "cnavTop", "rrlp.cnavTop", 8841 FT_UINT32, BASE_DEC, NULL, 0, 8842 "INTEGER_0_2015", HFILL }}, 8843 { &hf_rrlp_cnavURAindex, 8844 { "cnavURAindex", "rrlp.cnavURAindex", 8845 FT_INT32, BASE_DEC, NULL, 0, 8846 "INTEGER_M16_15", HFILL }}, 8847 { &hf_rrlp_cnavDeltaA, 8848 { "cnavDeltaA", "rrlp.cnavDeltaA", 8849 FT_INT32, BASE_DEC, NULL, 0, 8850 "INTEGER_M33554432_33554431", HFILL }}, 8851 { &hf_rrlp_cnavAdot, 8852 { "cnavAdot", "rrlp.cnavAdot", 8853 FT_INT32, BASE_DEC, NULL, 0, 8854 "INTEGER_M16777216_16777215", HFILL }}, 8855 { &hf_rrlp_cnavDeltaNo, 8856 { "cnavDeltaNo", "rrlp.cnavDeltaNo", 8857 FT_INT32, BASE_DEC, NULL, 0, 8858 "INTEGER_M65536_65535", HFILL }}, 8859 { &hf_rrlp_cnavDeltaNoDot, 8860 { "cnavDeltaNoDot", "rrlp.cnavDeltaNoDot", 8861 FT_INT32, BASE_DEC, NULL, 0, 8862 "INTEGER_M4194304_4194303", HFILL }}, 8863 { &hf_rrlp_cnavMo, 8864 { "cnavMo", "rrlp.cnavMo", 8865 FT_INT64, BASE_DEC, NULL, 0, 8866 "INTEGER_M4294967296_4294967295", HFILL }}, 8867 { &hf_rrlp_cnavE, 8868 { "cnavE", "rrlp.cnavE", 8869 FT_UINT64, BASE_DEC, NULL, 0, 8870 "INTEGER_0_8589934591", HFILL }}, 8871 { &hf_rrlp_cnavOmega, 8872 { "cnavOmega", "rrlp.cnavOmega", 8873 FT_INT64, BASE_DEC, NULL, 0, 8874 "INTEGER_M4294967296_4294967295", HFILL }}, 8875 { &hf_rrlp_cnavOMEGA0, 8876 { "cnavOMEGA0", "rrlp.cnavOMEGA0", 8877 FT_INT64, BASE_DEC, NULL, 0, 8878 "INTEGER_M4294967296_4294967295", HFILL }}, 8879 { &hf_rrlp_cnavDeltaOmegaDot, 8880 { "cnavDeltaOmegaDot", "rrlp.cnavDeltaOmegaDot", 8881 FT_INT32, BASE_DEC, NULL, 0, 8882 "INTEGER_M65536_65535", HFILL }}, 8883 { &hf_rrlp_cnavIo, 8884 { "cnavIo", "rrlp.cnavIo", 8885 FT_INT64, BASE_DEC, NULL, 0, 8886 "INTEGER_M4294967296_4294967295", HFILL }}, 8887 { &hf_rrlp_cnavIoDot, 8888 { "cnavIoDot", "rrlp.cnavIoDot", 8889 FT_INT32, BASE_DEC, NULL, 0, 8890 "INTEGER_M16384_16383", HFILL }}, 8891 { &hf_rrlp_cnavCis, 8892 { "cnavCis", "rrlp.cnavCis", 8893 FT_INT32, BASE_DEC, NULL, 0, 8894 "INTEGER_M32768_32767", HFILL }}, 8895 { &hf_rrlp_cnavCic, 8896 { "cnavCic", "rrlp.cnavCic", 8897 FT_INT32, BASE_DEC, NULL, 0, 8898 "INTEGER_M32768_32767", HFILL }}, 8899 { &hf_rrlp_cnavCrs, 8900 { "cnavCrs", "rrlp.cnavCrs", 8901 FT_INT32, BASE_DEC, NULL, 0, 8902 "INTEGER_M8388608_8388607", HFILL }}, 8903 { &hf_rrlp_cnavCrc, 8904 { "cnavCrc", "rrlp.cnavCrc", 8905 FT_INT32, BASE_DEC, NULL, 0, 8906 "INTEGER_M8388608_8388607", HFILL }}, 8907 { &hf_rrlp_cnavCus, 8908 { "cnavCus", "rrlp.cnavCus", 8909 FT_INT32, BASE_DEC, NULL, 0, 8910 "INTEGER_M1048576_1048575", HFILL }}, 8911 { &hf_rrlp_cnavCuc, 8912 { "cnavCuc", "rrlp.cnavCuc", 8913 FT_INT32, BASE_DEC, NULL, 0, 8914 "INTEGER_M1048576_1048575", HFILL }}, 8915 { &hf_rrlp_gloEn, 8916 { "gloEn", "rrlp.gloEn", 8917 FT_UINT32, BASE_DEC, NULL, 0, 8918 "INTEGER_0_31", HFILL }}, 8919 { &hf_rrlp_gloP1, 8920 { "gloP1", "rrlp.gloP1", 8921 FT_BYTES, BASE_NONE, NULL, 0, 8922 "BIT_STRING_SIZE_2", HFILL }}, 8923 { &hf_rrlp_gloP2, 8924 { "gloP2", "rrlp.gloP2", 8925 FT_BOOLEAN, BASE_NONE, NULL, 0, 8926 "BOOLEAN", HFILL }}, 8927 { &hf_rrlp_gloM, 8928 { "gloM", "rrlp.gloM", 8929 FT_UINT32, BASE_DEC, NULL, 0, 8930 "INTEGER_0_3", HFILL }}, 8931 { &hf_rrlp_gloX, 8932 { "gloX", "rrlp.gloX", 8933 FT_INT32, BASE_DEC, NULL, 0, 8934 "INTEGER_M67108864_67108863", HFILL }}, 8935 { &hf_rrlp_gloXdot, 8936 { "gloXdot", "rrlp.gloXdot", 8937 FT_INT32, BASE_DEC, NULL, 0, 8938 "INTEGER_M8388608_8388607", HFILL }}, 8939 { &hf_rrlp_gloXdotdot, 8940 { "gloXdotdot", "rrlp.gloXdotdot", 8941 FT_INT32, BASE_DEC, NULL, 0, 8942 "INTEGER_M16_15", HFILL }}, 8943 { &hf_rrlp_gloY, 8944 { "gloY", "rrlp.gloY", 8945 FT_INT32, BASE_DEC, NULL, 0, 8946 "INTEGER_M67108864_67108863", HFILL }}, 8947 { &hf_rrlp_gloYdot, 8948 { "gloYdot", "rrlp.gloYdot", 8949 FT_INT32, BASE_DEC, NULL, 0, 8950 "INTEGER_M8388608_8388607", HFILL }}, 8951 { &hf_rrlp_gloYdotdot, 8952 { "gloYdotdot", "rrlp.gloYdotdot", 8953 FT_INT32, BASE_DEC, NULL, 0, 8954 "INTEGER_M16_15", HFILL }}, 8955 { &hf_rrlp_gloZ, 8956 { "gloZ", "rrlp.gloZ", 8957 FT_INT32, BASE_DEC, NULL, 0, 8958 "INTEGER_M67108864_67108863", HFILL }}, 8959 { &hf_rrlp_gloZdot, 8960 { "gloZdot", "rrlp.gloZdot", 8961 FT_INT32, BASE_DEC, NULL, 0, 8962 "INTEGER_M8388608_8388607", HFILL }}, 8963 { &hf_rrlp_gloZdotdot, 8964 { "gloZdotdot", "rrlp.gloZdotdot", 8965 FT_INT32, BASE_DEC, NULL, 0, 8966 "INTEGER_M16_15", HFILL }}, 8967 { &hf_rrlp_sbasTo, 8968 { "sbasTo", "rrlp.sbasTo", 8969 FT_UINT32, BASE_DEC, NULL, 0, 8970 "INTEGER_0_5399", HFILL }}, 8971 { &hf_rrlp_sbasAccuracy, 8972 { "sbasAccuracy", "rrlp.sbasAccuracy", 8973 FT_BYTES, BASE_NONE, NULL, 0, 8974 "BIT_STRING_SIZE_4", HFILL }}, 8975 { &hf_rrlp_sbasXg, 8976 { "sbasXg", "rrlp.sbasXg", 8977 FT_INT32, BASE_DEC, NULL, 0, 8978 "INTEGER_M536870912_536870911", HFILL }}, 8979 { &hf_rrlp_sbasYg, 8980 { "sbasYg", "rrlp.sbasYg", 8981 FT_INT32, BASE_DEC, NULL, 0, 8982 "INTEGER_M536870912_536870911", HFILL }}, 8983 { &hf_rrlp_sbasZg, 8984 { "sbasZg", "rrlp.sbasZg", 8985 FT_INT32, BASE_DEC, NULL, 0, 8986 "INTEGER_M16777216_16777215", HFILL }}, 8987 { &hf_rrlp_sbasXgDot, 8988 { "sbasXgDot", "rrlp.sbasXgDot", 8989 FT_INT32, BASE_DEC, NULL, 0, 8990 "INTEGER_M65536_65535", HFILL }}, 8991 { &hf_rrlp_sbasYgDot, 8992 { "sbasYgDot", "rrlp.sbasYgDot", 8993 FT_INT32, BASE_DEC, NULL, 0, 8994 "INTEGER_M65536_65535", HFILL }}, 8995 { &hf_rrlp_sbasZgDot, 8996 { "sbasZgDot", "rrlp.sbasZgDot", 8997 FT_INT32, BASE_DEC, NULL, 0, 8998 "INTEGER_M131072_131071", HFILL }}, 8999 { &hf_rrlp_sbasXgDotDot, 9000 { "sbasXgDotDot", "rrlp.sbasXgDotDot", 9001 FT_INT32, BASE_DEC, NULL, 0, 9002 "INTEGER_M512_511", HFILL }}, 9003 { &hf_rrlp_sbagYgDotDot, 9004 { "sbagYgDotDot", "rrlp.sbagYgDotDot", 9005 FT_INT32, BASE_DEC, NULL, 0, 9006 "INTEGER_M512_511", HFILL }}, 9007 { &hf_rrlp_sbasZgDotDot, 9008 { "sbasZgDotDot", "rrlp.sbasZgDotDot", 9009 FT_INT32, BASE_DEC, NULL, 0, 9010 "INTEGER_M512_511", HFILL }}, 9011 { &hf_rrlp_standardClockModelList, 9012 { "standardClockModelList", "rrlp.standardClockModelList", 9013 FT_UINT32, BASE_DEC, NULL, 0, 9014 "SeqOfStandardClockModelElement", HFILL }}, 9015 { &hf_rrlp_navClockModel, 9016 { "navClockModel", "rrlp.navClockModel_element", 9017 FT_NONE, BASE_NONE, NULL, 0, 9018 NULL, HFILL }}, 9019 { &hf_rrlp_cnavClockModel, 9020 { "cnavClockModel", "rrlp.cnavClockModel_element", 9021 FT_NONE, BASE_NONE, NULL, 0, 9022 NULL, HFILL }}, 9023 { &hf_rrlp_glonassClockModel, 9024 { "glonassClockModel", "rrlp.glonassClockModel_element", 9025 FT_NONE, BASE_NONE, NULL, 0, 9026 NULL, HFILL }}, 9027 { &hf_rrlp_sbasClockModel, 9028 { "sbasClockModel", "rrlp.sbasClockModel_element", 9029 FT_NONE, BASE_NONE, NULL, 0, 9030 NULL, HFILL }}, 9031 { &hf_rrlp_SeqOfStandardClockModelElement_item, 9032 { "StandardClockModelElement", "rrlp.StandardClockModelElement_element", 9033 FT_NONE, BASE_NONE, NULL, 0, 9034 NULL, HFILL }}, 9035 { &hf_rrlp_stanClockToc, 9036 { "stanClockToc", "rrlp.stanClockToc", 9037 FT_UINT32, BASE_DEC, NULL, 0, 9038 "INTEGER_0_16383", HFILL }}, 9039 { &hf_rrlp_stanClockAF2, 9040 { "stanClockAF2", "rrlp.stanClockAF2", 9041 FT_INT32, BASE_DEC, NULL, 0, 9042 "INTEGER_M2048_2047", HFILL }}, 9043 { &hf_rrlp_stanClockAF1, 9044 { "stanClockAF1", "rrlp.stanClockAF1", 9045 FT_INT32, BASE_DEC, NULL, 0, 9046 "INTEGER_M131072_131071", HFILL }}, 9047 { &hf_rrlp_stanClockAF0, 9048 { "stanClockAF0", "rrlp.stanClockAF0", 9049 FT_INT32, BASE_DEC, NULL, 0, 9050 "INTEGER_M134217728_134217727", HFILL }}, 9051 { &hf_rrlp_stanClockTgd, 9052 { "stanClockTgd", "rrlp.stanClockTgd", 9053 FT_INT32, BASE_DEC, NULL, 0, 9054 "INTEGER_M512_511", HFILL }}, 9055 { &hf_rrlp_stanModelID, 9056 { "stanModelID", "rrlp.stanModelID", 9057 FT_UINT32, BASE_DEC, NULL, 0, 9058 "INTEGER_0_1", HFILL }}, 9059 { &hf_rrlp_navToc, 9060 { "navToc", "rrlp.navToc", 9061 FT_UINT32, BASE_DEC, NULL, 0, 9062 "INTEGER_0_37799", HFILL }}, 9063 { &hf_rrlp_navaf2, 9064 { "navaf2", "rrlp.navaf2", 9065 FT_INT32, BASE_DEC, NULL, 0, 9066 "INTEGER_M128_127", HFILL }}, 9067 { &hf_rrlp_navaf1, 9068 { "navaf1", "rrlp.navaf1", 9069 FT_INT32, BASE_DEC, NULL, 0, 9070 "INTEGER_M32768_32767", HFILL }}, 9071 { &hf_rrlp_navaf0, 9072 { "navaf0", "rrlp.navaf0", 9073 FT_INT32, BASE_DEC, NULL, 0, 9074 "INTEGER_M2097152_2097151", HFILL }}, 9075 { &hf_rrlp_navTgd, 9076 { "navTgd", "rrlp.navTgd", 9077 FT_INT32, BASE_DEC, NULL, 0, 9078 "INTEGER_M128_127", HFILL }}, 9079 { &hf_rrlp_cnavToc, 9080 { "cnavToc", "rrlp.cnavToc", 9081 FT_UINT32, BASE_DEC, NULL, 0, 9082 "INTEGER_0_2015", HFILL }}, 9083 { &hf_rrlp_cnavURA0, 9084 { "cnavURA0", "rrlp.cnavURA0", 9085 FT_INT32, BASE_DEC, NULL, 0, 9086 "INTEGER_M16_15", HFILL }}, 9087 { &hf_rrlp_cnavURA1, 9088 { "cnavURA1", "rrlp.cnavURA1", 9089 FT_UINT32, BASE_DEC, NULL, 0, 9090 "INTEGER_0_7", HFILL }}, 9091 { &hf_rrlp_cnavURA2, 9092 { "cnavURA2", "rrlp.cnavURA2", 9093 FT_UINT32, BASE_DEC, NULL, 0, 9094 "INTEGER_0_7", HFILL }}, 9095 { &hf_rrlp_cnavAf2, 9096 { "cnavAf2", "rrlp.cnavAf2", 9097 FT_INT32, BASE_DEC, NULL, 0, 9098 "INTEGER_M512_511", HFILL }}, 9099 { &hf_rrlp_cnavAf1, 9100 { "cnavAf1", "rrlp.cnavAf1", 9101 FT_INT32, BASE_DEC, NULL, 0, 9102 "INTEGER_M524288_524287", HFILL }}, 9103 { &hf_rrlp_cnavAf0, 9104 { "cnavAf0", "rrlp.cnavAf0", 9105 FT_INT32, BASE_DEC, NULL, 0, 9106 "INTEGER_M33554432_33554431", HFILL }}, 9107 { &hf_rrlp_cnavTgd, 9108 { "cnavTgd", "rrlp.cnavTgd", 9109 FT_INT32, BASE_DEC, NULL, 0, 9110 "INTEGER_M4096_4095", HFILL }}, 9111 { &hf_rrlp_cnavISCl1cp, 9112 { "cnavISCl1cp", "rrlp.cnavISCl1cp", 9113 FT_INT32, BASE_DEC, NULL, 0, 9114 "INTEGER_M4096_4095", HFILL }}, 9115 { &hf_rrlp_cnavISCl1cd, 9116 { "cnavISCl1cd", "rrlp.cnavISCl1cd", 9117 FT_INT32, BASE_DEC, NULL, 0, 9118 "INTEGER_M4096_4095", HFILL }}, 9119 { &hf_rrlp_cnavISCl1ca, 9120 { "cnavISCl1ca", "rrlp.cnavISCl1ca", 9121 FT_INT32, BASE_DEC, NULL, 0, 9122 "INTEGER_M4096_4095", HFILL }}, 9123 { &hf_rrlp_cnavISCl2c, 9124 { "cnavISCl2c", "rrlp.cnavISCl2c", 9125 FT_INT32, BASE_DEC, NULL, 0, 9126 "INTEGER_M4096_4095", HFILL }}, 9127 { &hf_rrlp_cnavISCl5i5, 9128 { "cnavISCl5i5", "rrlp.cnavISCl5i5", 9129 FT_INT32, BASE_DEC, NULL, 0, 9130 "INTEGER_M4096_4095", HFILL }}, 9131 { &hf_rrlp_cnavISCl5q5, 9132 { "cnavISCl5q5", "rrlp.cnavISCl5q5", 9133 FT_INT32, BASE_DEC, NULL, 0, 9134 "INTEGER_M4096_4095", HFILL }}, 9135 { &hf_rrlp_gloTau, 9136 { "gloTau", "rrlp.gloTau", 9137 FT_INT32, BASE_DEC, NULL, 0, 9138 "INTEGER_M2097152_2097151", HFILL }}, 9139 { &hf_rrlp_gloGamma, 9140 { "gloGamma", "rrlp.gloGamma", 9141 FT_INT32, BASE_DEC, NULL, 0, 9142 "INTEGER_M1024_1023", HFILL }}, 9143 { &hf_rrlp_gloDeltaTau, 9144 { "gloDeltaTau", "rrlp.gloDeltaTau", 9145 FT_INT32, BASE_DEC, NULL, 0, 9146 "INTEGER_M16_15", HFILL }}, 9147 { &hf_rrlp_sbasAgfo, 9148 { "sbasAgfo", "rrlp.sbasAgfo", 9149 FT_INT32, BASE_DEC, NULL, 0, 9150 "INTEGER_M2048_2047", HFILL }}, 9151 { &hf_rrlp_sbasAgf1, 9152 { "sbasAgf1", "rrlp.sbasAgf1", 9153 FT_INT32, BASE_DEC, NULL, 0, 9154 "INTEGER_M128_127", HFILL }}, 9155 { &hf_rrlp_ganssBadSignalList, 9156 { "ganssBadSignalList", "rrlp.ganssBadSignalList", 9157 FT_UINT32, BASE_DEC, NULL, 0, 9158 "SeqOfBadSignalElement", HFILL }}, 9159 { &hf_rrlp_SeqOfBadSignalElement_item, 9160 { "BadSignalElement", "rrlp.BadSignalElement_element", 9161 FT_NONE, BASE_NONE, NULL, 0, 9162 NULL, HFILL }}, 9163 { &hf_rrlp_badSVID, 9164 { "badSVID", "rrlp.badSVID", 9165 FT_UINT32, BASE_DEC, NULL, 0, 9166 "SVID", HFILL }}, 9167 { &hf_rrlp_badSignalID, 9168 { "badSignalID", "rrlp.badSignalID", 9169 FT_BYTES, BASE_NONE, NULL, 0, 9170 "GANSSSignals", HFILL }}, 9171 { &hf_rrlp_ganssTOD_01, 9172 { "ganssTOD", "rrlp.ganssTOD", 9173 FT_UINT32, BASE_DEC, NULL, 0, 9174 "INTEGER_0_59", HFILL }}, 9175 { &hf_rrlp_ganssDataBitsSatList, 9176 { "ganssDataBitsSatList", "rrlp.ganssDataBitsSatList", 9177 FT_UINT32, BASE_DEC, NULL, 0, 9178 "SeqOfGanssDataBitsElement", HFILL }}, 9179 { &hf_rrlp_SeqOfGanssDataBitsElement_item, 9180 { "GanssDataBitsElement", "rrlp.GanssDataBitsElement_element", 9181 FT_NONE, BASE_NONE, NULL, 0, 9182 NULL, HFILL }}, 9183 { &hf_rrlp_ganssDataBitsSgnList, 9184 { "ganssDataBitsSgnList", "rrlp.ganssDataBitsSgnList", 9185 FT_UINT32, BASE_DEC, NULL, 0, 9186 "Seq_OfGANSSDataBitsSgn", HFILL }}, 9187 { &hf_rrlp_Seq_OfGANSSDataBitsSgn_item, 9188 { "GANSSDataBitsSgnElement", "rrlp.GANSSDataBitsSgnElement_element", 9189 FT_NONE, BASE_NONE, NULL, 0, 9190 NULL, HFILL }}, 9191 { &hf_rrlp_ganssSignalType, 9192 { "ganssSignalType", "rrlp.ganssSignalType", 9193 FT_UINT32, BASE_DEC, NULL, 0, 9194 "GANSSSignalID", HFILL }}, 9195 { &hf_rrlp_ganssDataBits, 9196 { "ganssDataBits", "rrlp.ganssDataBits", 9197 FT_UINT32, BASE_DEC, NULL, 0, 9198 "SeqOf_GANSSDataBits", HFILL }}, 9199 { &hf_rrlp_SeqOf_GANSSDataBits_item, 9200 { "GANSSDataBit", "rrlp.GANSSDataBit", 9201 FT_UINT32, BASE_DEC, NULL, 0, 9202 NULL, HFILL }}, 9203 { &hf_rrlp_ganssRefMeasAssistList, 9204 { "ganssRefMeasAssistList", "rrlp.ganssRefMeasAssistList", 9205 FT_UINT32, BASE_DEC, NULL, 0, 9206 "SeqOfGANSSRefMeasurementElement", HFILL }}, 9207 { &hf_rrlp_SeqOfGANSSRefMeasurementElement_item, 9208 { "GANSSRefMeasurementElement", "rrlp.GANSSRefMeasurementElement_element", 9209 FT_NONE, BASE_NONE, NULL, 0, 9210 NULL, HFILL }}, 9211 { &hf_rrlp_additionalDoppler, 9212 { "additionalDoppler", "rrlp.additionalDoppler_element", 9213 FT_NONE, BASE_NONE, NULL, 0, 9214 "AdditionalDopplerFields", HFILL }}, 9215 { &hf_rrlp_intCodePhase_01, 9216 { "intCodePhase", "rrlp.intCodePhase", 9217 FT_UINT32, BASE_DEC, NULL, 0, 9218 "INTEGER_0_127", HFILL }}, 9219 { &hf_rrlp_codePhaseSearchWindow_01, 9220 { "codePhaseSearchWindow", "rrlp.codePhaseSearchWindow", 9221 FT_UINT32, BASE_DEC, NULL, 0, 9222 "INTEGER_0_31", HFILL }}, 9223 { &hf_rrlp_additionalAngle, 9224 { "additionalAngle", "rrlp.additionalAngle_element", 9225 FT_NONE, BASE_NONE, NULL, 0, 9226 "AddionalAngleFields", HFILL }}, 9227 { &hf_rrlp_dopplerUncertainty_01, 9228 { "dopplerUncertainty", "rrlp.dopplerUncertainty", 9229 FT_UINT32, BASE_DEC, NULL, 0, 9230 "INTEGER_0_4", HFILL }}, 9231 { &hf_rrlp_GANSSRefMeasurementAssist_R10_Ext_item, 9232 { "GANSSRefMeasurement-R10-Ext-Element", "rrlp.GANSSRefMeasurement_R10_Ext_Element_element", 9233 FT_NONE, BASE_NONE, NULL, 0, 9234 NULL, HFILL }}, 9235 { &hf_rrlp_azimuthLSB, 9236 { "azimuthLSB", "rrlp.azimuthLSB", 9237 FT_UINT32, BASE_DEC, NULL, 0, 9238 "INTEGER_0_15", HFILL }}, 9239 { &hf_rrlp_elevationLSB, 9240 { "elevationLSB", "rrlp.elevationLSB", 9241 FT_UINT32, BASE_DEC, NULL, 0, 9242 "INTEGER_0_15", HFILL }}, 9243 { &hf_rrlp_weekNumber_01, 9244 { "weekNumber", "rrlp.weekNumber", 9245 FT_UINT32, BASE_DEC, NULL, 0, 9246 "INTEGER_0_255", HFILL }}, 9247 { &hf_rrlp_toa, 9248 { "toa", "rrlp.toa", 9249 FT_UINT32, BASE_DEC, NULL, 0, 9250 "INTEGER_0_255", HFILL }}, 9251 { &hf_rrlp_ioda, 9252 { "ioda", "rrlp.ioda", 9253 FT_UINT32, BASE_DEC, NULL, 0, 9254 "INTEGER_0_3", HFILL }}, 9255 { &hf_rrlp_ganssAlmanacList, 9256 { "ganssAlmanacList", "rrlp.ganssAlmanacList", 9257 FT_UINT32, BASE_DEC, NULL, 0, 9258 "SeqOfGANSSAlmanacElement", HFILL }}, 9259 { &hf_rrlp_SeqOfGANSSAlmanacElement_item, 9260 { "GANSSAlmanacElement", "rrlp.GANSSAlmanacElement", 9261 FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAlmanacElement_vals), 0, 9262 NULL, HFILL }}, 9263 { &hf_rrlp_keplerianAlmanacSet, 9264 { "keplerianAlmanacSet", "rrlp.keplerianAlmanacSet_element", 9265 FT_NONE, BASE_NONE, NULL, 0, 9266 "Almanac_KeplerianSet", HFILL }}, 9267 { &hf_rrlp_keplerianNAVAlmanac, 9268 { "keplerianNAVAlmanac", "rrlp.keplerianNAVAlmanac_element", 9269 FT_NONE, BASE_NONE, NULL, 0, 9270 "Almanac_NAVKeplerianSet", HFILL }}, 9271 { &hf_rrlp_keplerianReducedAlmanac, 9272 { "keplerianReducedAlmanac", "rrlp.keplerianReducedAlmanac_element", 9273 FT_NONE, BASE_NONE, NULL, 0, 9274 "Almanac_ReducedKeplerianSet", HFILL }}, 9275 { &hf_rrlp_keplerianMidiAlmanac, 9276 { "keplerianMidiAlmanac", "rrlp.keplerianMidiAlmanac_element", 9277 FT_NONE, BASE_NONE, NULL, 0, 9278 "Almanac_MidiAlmanacSet", HFILL }}, 9279 { &hf_rrlp_keplerianGLONASS, 9280 { "keplerianGLONASS", "rrlp.keplerianGLONASS_element", 9281 FT_NONE, BASE_NONE, NULL, 0, 9282 "Almanac_GlonassAlmanacSet", HFILL }}, 9283 { &hf_rrlp_ecefSBASAlmanac, 9284 { "ecefSBASAlmanac", "rrlp.ecefSBASAlmanac_element", 9285 FT_NONE, BASE_NONE, NULL, 0, 9286 "Almanac_ECEFsbasAlmanacSet", HFILL }}, 9287 { &hf_rrlp_kepAlmanacE, 9288 { "kepAlmanacE", "rrlp.kepAlmanacE", 9289 FT_UINT32, BASE_DEC, NULL, 0, 9290 "INTEGER_0_2047", HFILL }}, 9291 { &hf_rrlp_kepAlmanacDeltaI, 9292 { "kepAlmanacDeltaI", "rrlp.kepAlmanacDeltaI", 9293 FT_INT32, BASE_DEC, NULL, 0, 9294 "INTEGER_M1024_1023", HFILL }}, 9295 { &hf_rrlp_kepAlmanacOmegaDot, 9296 { "kepAlmanacOmegaDot", "rrlp.kepAlmanacOmegaDot", 9297 FT_INT32, BASE_DEC, NULL, 0, 9298 "INTEGER_M1024_1023", HFILL }}, 9299 { &hf_rrlp_kepSVHealth, 9300 { "kepSVHealth", "rrlp.kepSVHealth", 9301 FT_UINT32, BASE_DEC, NULL, 0, 9302 "INTEGER_0_15", HFILL }}, 9303 { &hf_rrlp_kepAlmanacAPowerHalf, 9304 { "kepAlmanacAPowerHalf", "rrlp.kepAlmanacAPowerHalf", 9305 FT_INT32, BASE_DEC, NULL, 0, 9306 "INTEGER_M65536_65535", HFILL }}, 9307 { &hf_rrlp_kepAlmanacOmega0, 9308 { "kepAlmanacOmega0", "rrlp.kepAlmanacOmega0", 9309 FT_INT32, BASE_DEC, NULL, 0, 9310 "INTEGER_M32768_32767", HFILL }}, 9311 { &hf_rrlp_kepAlmanacW, 9312 { "kepAlmanacW", "rrlp.kepAlmanacW", 9313 FT_INT32, BASE_DEC, NULL, 0, 9314 "INTEGER_M32768_32767", HFILL }}, 9315 { &hf_rrlp_kepAlmanacM0, 9316 { "kepAlmanacM0", "rrlp.kepAlmanacM0", 9317 FT_INT32, BASE_DEC, NULL, 0, 9318 "INTEGER_M32768_32767", HFILL }}, 9319 { &hf_rrlp_kepAlmanacAF0, 9320 { "kepAlmanacAF0", "rrlp.kepAlmanacAF0", 9321 FT_INT32, BASE_DEC, NULL, 0, 9322 "INTEGER_M8192_8191", HFILL }}, 9323 { &hf_rrlp_kepAlmanacAF1, 9324 { "kepAlmanacAF1", "rrlp.kepAlmanacAF1", 9325 FT_INT32, BASE_DEC, NULL, 0, 9326 "INTEGER_M1024_1023", HFILL }}, 9327 { &hf_rrlp_navAlmE, 9328 { "navAlmE", "rrlp.navAlmE", 9329 FT_UINT32, BASE_DEC, NULL, 0, 9330 "INTEGER_0_65535", HFILL }}, 9331 { &hf_rrlp_navAlmDeltaI, 9332 { "navAlmDeltaI", "rrlp.navAlmDeltaI", 9333 FT_INT32, BASE_DEC, NULL, 0, 9334 "INTEGER_M32768_32767", HFILL }}, 9335 { &hf_rrlp_navAlmOMEGADOT, 9336 { "navAlmOMEGADOT", "rrlp.navAlmOMEGADOT", 9337 FT_INT32, BASE_DEC, NULL, 0, 9338 "INTEGER_M32768_32767", HFILL }}, 9339 { &hf_rrlp_navAlmSVHealth, 9340 { "navAlmSVHealth", "rrlp.navAlmSVHealth", 9341 FT_UINT32, BASE_DEC, NULL, 0, 9342 "INTEGER_0_255", HFILL }}, 9343 { &hf_rrlp_navAlmSqrtA, 9344 { "navAlmSqrtA", "rrlp.navAlmSqrtA", 9345 FT_UINT32, BASE_DEC, NULL, 0, 9346 "INTEGER_0_16777215", HFILL }}, 9347 { &hf_rrlp_navAlmOMEGAo, 9348 { "navAlmOMEGAo", "rrlp.navAlmOMEGAo", 9349 FT_INT32, BASE_DEC, NULL, 0, 9350 "INTEGER_M8388608_8388607", HFILL }}, 9351 { &hf_rrlp_navAlmOmega, 9352 { "navAlmOmega", "rrlp.navAlmOmega", 9353 FT_INT32, BASE_DEC, NULL, 0, 9354 "INTEGER_M8388608_8388607", HFILL }}, 9355 { &hf_rrlp_navAlmMo, 9356 { "navAlmMo", "rrlp.navAlmMo", 9357 FT_INT32, BASE_DEC, NULL, 0, 9358 "INTEGER_M8388608_8388607", HFILL }}, 9359 { &hf_rrlp_navAlmaf0, 9360 { "navAlmaf0", "rrlp.navAlmaf0", 9361 FT_INT32, BASE_DEC, NULL, 0, 9362 "INTEGER_M1024_1023", HFILL }}, 9363 { &hf_rrlp_navAlmaf1, 9364 { "navAlmaf1", "rrlp.navAlmaf1", 9365 FT_INT32, BASE_DEC, NULL, 0, 9366 "INTEGER_M1024_1023", HFILL }}, 9367 { &hf_rrlp_redAlmDeltaA, 9368 { "redAlmDeltaA", "rrlp.redAlmDeltaA", 9369 FT_INT32, BASE_DEC, NULL, 0, 9370 "INTEGER_M128_127", HFILL }}, 9371 { &hf_rrlp_redAlmOmega0, 9372 { "redAlmOmega0", "rrlp.redAlmOmega0", 9373 FT_INT32, BASE_DEC, NULL, 0, 9374 "INTEGER_M64_63", HFILL }}, 9375 { &hf_rrlp_redAlmPhi0, 9376 { "redAlmPhi0", "rrlp.redAlmPhi0", 9377 FT_INT32, BASE_DEC, NULL, 0, 9378 "INTEGER_M64_63", HFILL }}, 9379 { &hf_rrlp_redAlmL1Health, 9380 { "redAlmL1Health", "rrlp.redAlmL1Health", 9381 FT_BOOLEAN, BASE_NONE, NULL, 0, 9382 "BOOLEAN", HFILL }}, 9383 { &hf_rrlp_redAlmL2Health, 9384 { "redAlmL2Health", "rrlp.redAlmL2Health", 9385 FT_BOOLEAN, BASE_NONE, NULL, 0, 9386 "BOOLEAN", HFILL }}, 9387 { &hf_rrlp_redAlmL5Health, 9388 { "redAlmL5Health", "rrlp.redAlmL5Health", 9389 FT_BOOLEAN, BASE_NONE, NULL, 0, 9390 "BOOLEAN", HFILL }}, 9391 { &hf_rrlp_midiAlmE, 9392 { "midiAlmE", "rrlp.midiAlmE", 9393 FT_UINT32, BASE_DEC, NULL, 0, 9394 "INTEGER_0_2047", HFILL }}, 9395 { &hf_rrlp_midiAlmDeltaI, 9396 { "midiAlmDeltaI", "rrlp.midiAlmDeltaI", 9397 FT_INT32, BASE_DEC, NULL, 0, 9398 "INTEGER_M1024_1023", HFILL }}, 9399 { &hf_rrlp_midiAlmOmegaDot, 9400 { "midiAlmOmegaDot", "rrlp.midiAlmOmegaDot", 9401 FT_INT32, BASE_DEC, NULL, 0, 9402 "INTEGER_M1024_1023", HFILL }}, 9403 { &hf_rrlp_midiAlmSqrtA, 9404 { "midiAlmSqrtA", "rrlp.midiAlmSqrtA", 9405 FT_UINT32, BASE_DEC, NULL, 0, 9406 "INTEGER_0_131071", HFILL }}, 9407 { &hf_rrlp_midiAlmOmega0, 9408 { "midiAlmOmega0", "rrlp.midiAlmOmega0", 9409 FT_INT32, BASE_DEC, NULL, 0, 9410 "INTEGER_M32768_32767", HFILL }}, 9411 { &hf_rrlp_midiAlmOmega, 9412 { "midiAlmOmega", "rrlp.midiAlmOmega", 9413 FT_INT32, BASE_DEC, NULL, 0, 9414 "INTEGER_M32768_32767", HFILL }}, 9415 { &hf_rrlp_midiAlmMo, 9416 { "midiAlmMo", "rrlp.midiAlmMo", 9417 FT_INT32, BASE_DEC, NULL, 0, 9418 "INTEGER_M32768_32767", HFILL }}, 9419 { &hf_rrlp_midiAlmaf0, 9420 { "midiAlmaf0", "rrlp.midiAlmaf0", 9421 FT_INT32, BASE_DEC, NULL, 0, 9422 "INTEGER_M1024_1023", HFILL }}, 9423 { &hf_rrlp_midiAlmaf1, 9424 { "midiAlmaf1", "rrlp.midiAlmaf1", 9425 FT_INT32, BASE_DEC, NULL, 0, 9426 "INTEGER_M512_511", HFILL }}, 9427 { &hf_rrlp_midiAlmL1Health, 9428 { "midiAlmL1Health", "rrlp.midiAlmL1Health", 9429 FT_BOOLEAN, BASE_NONE, NULL, 0, 9430 "BOOLEAN", HFILL }}, 9431 { &hf_rrlp_midiAlmL2Health, 9432 { "midiAlmL2Health", "rrlp.midiAlmL2Health", 9433 FT_BOOLEAN, BASE_NONE, NULL, 0, 9434 "BOOLEAN", HFILL }}, 9435 { &hf_rrlp_midiAlmL5Health, 9436 { "midiAlmL5Health", "rrlp.midiAlmL5Health", 9437 FT_BOOLEAN, BASE_NONE, NULL, 0, 9438 "BOOLEAN", HFILL }}, 9439 { &hf_rrlp_gloAlmNA, 9440 { "gloAlmNA", "rrlp.gloAlmNA", 9441 FT_UINT32, BASE_DEC, NULL, 0, 9442 "INTEGER_1_1461", HFILL }}, 9443 { &hf_rrlp_gloAlmnA, 9444 { "gloAlmnA", "rrlp.gloAlmnA", 9445 FT_UINT32, BASE_DEC, NULL, 0, 9446 "INTEGER_1_24", HFILL }}, 9447 { &hf_rrlp_gloAlmHA, 9448 { "gloAlmHA", "rrlp.gloAlmHA", 9449 FT_UINT32, BASE_DEC, NULL, 0, 9450 "INTEGER_0_31", HFILL }}, 9451 { &hf_rrlp_gloAlmLambdaA, 9452 { "gloAlmLambdaA", "rrlp.gloAlmLambdaA", 9453 FT_INT32, BASE_DEC, NULL, 0, 9454 "INTEGER_M1048576_1048575", HFILL }}, 9455 { &hf_rrlp_gloAlmtlambdaA, 9456 { "gloAlmtlambdaA", "rrlp.gloAlmtlambdaA", 9457 FT_UINT32, BASE_DEC, NULL, 0, 9458 "INTEGER_0_2097151", HFILL }}, 9459 { &hf_rrlp_gloAlmDeltaIa, 9460 { "gloAlmDeltaIa", "rrlp.gloAlmDeltaIa", 9461 FT_INT32, BASE_DEC, NULL, 0, 9462 "INTEGER_M131072_131071", HFILL }}, 9463 { &hf_rrlp_gloAlmDeltaTA, 9464 { "gloAlmDeltaTA", "rrlp.gloAlmDeltaTA", 9465 FT_INT32, BASE_DEC, NULL, 0, 9466 "INTEGER_M2097152_2097151", HFILL }}, 9467 { &hf_rrlp_gloAlmDeltaTdotA, 9468 { "gloAlmDeltaTdotA", "rrlp.gloAlmDeltaTdotA", 9469 FT_INT32, BASE_DEC, NULL, 0, 9470 "INTEGER_M64_63", HFILL }}, 9471 { &hf_rrlp_gloAlmEpsilonA, 9472 { "gloAlmEpsilonA", "rrlp.gloAlmEpsilonA", 9473 FT_UINT32, BASE_DEC, NULL, 0, 9474 "INTEGER_0_32767", HFILL }}, 9475 { &hf_rrlp_gloAlmOmegaA, 9476 { "gloAlmOmegaA", "rrlp.gloAlmOmegaA", 9477 FT_INT32, BASE_DEC, NULL, 0, 9478 "INTEGER_M32768_32767", HFILL }}, 9479 { &hf_rrlp_gloAlmTauA, 9480 { "gloAlmTauA", "rrlp.gloAlmTauA", 9481 FT_INT32, BASE_DEC, NULL, 0, 9482 "INTEGER_M512_511", HFILL }}, 9483 { &hf_rrlp_gloAlmCA, 9484 { "gloAlmCA", "rrlp.gloAlmCA", 9485 FT_UINT32, BASE_DEC, NULL, 0, 9486 "INTEGER_0_1", HFILL }}, 9487 { &hf_rrlp_gloAlmMA, 9488 { "gloAlmMA", "rrlp.gloAlmMA", 9489 FT_BYTES, BASE_NONE, NULL, 0, 9490 "BIT_STRING_SIZE_2", HFILL }}, 9491 { &hf_rrlp_sbasAlmDataID, 9492 { "sbasAlmDataID", "rrlp.sbasAlmDataID", 9493 FT_UINT32, BASE_DEC, NULL, 0, 9494 "INTEGER_0_3", HFILL }}, 9495 { &hf_rrlp_sbasAlmHealth, 9496 { "sbasAlmHealth", "rrlp.sbasAlmHealth", 9497 FT_BYTES, BASE_NONE, NULL, 0, 9498 "BIT_STRING_SIZE_8", HFILL }}, 9499 { &hf_rrlp_sbasAlmXg, 9500 { "sbasAlmXg", "rrlp.sbasAlmXg", 9501 FT_INT32, BASE_DEC, NULL, 0, 9502 "INTEGER_M16384_16383", HFILL }}, 9503 { &hf_rrlp_sbasAlmYg, 9504 { "sbasAlmYg", "rrlp.sbasAlmYg", 9505 FT_INT32, BASE_DEC, NULL, 0, 9506 "INTEGER_M16384_16383", HFILL }}, 9507 { &hf_rrlp_sbasAlmZg, 9508 { "sbasAlmZg", "rrlp.sbasAlmZg", 9509 FT_INT32, BASE_DEC, NULL, 0, 9510 "INTEGER_M256_255", HFILL }}, 9511 { &hf_rrlp_sbasAlmXgdot, 9512 { "sbasAlmXgdot", "rrlp.sbasAlmXgdot", 9513 FT_INT32, BASE_DEC, NULL, 0, 9514 "INTEGER_M4_3", HFILL }}, 9515 { &hf_rrlp_sbasAlmYgDot, 9516 { "sbasAlmYgDot", "rrlp.sbasAlmYgDot", 9517 FT_INT32, BASE_DEC, NULL, 0, 9518 "INTEGER_M4_3", HFILL }}, 9519 { &hf_rrlp_sbasAlmZgDot, 9520 { "sbasAlmZgDot", "rrlp.sbasAlmZgDot", 9521 FT_INT32, BASE_DEC, NULL, 0, 9522 "INTEGER_M8_7", HFILL }}, 9523 { &hf_rrlp_sbasAlmTo, 9524 { "sbasAlmTo", "rrlp.sbasAlmTo", 9525 FT_UINT32, BASE_DEC, NULL, 0, 9526 "INTEGER_0_2047", HFILL }}, 9527 { &hf_rrlp_completeAlmanacProvided, 9528 { "completeAlmanacProvided", "rrlp.completeAlmanacProvided", 9529 FT_BOOLEAN, BASE_NONE, NULL, 0, 9530 "BOOLEAN", HFILL }}, 9531 { &hf_rrlp_ganssUtcA1, 9532 { "ganssUtcA1", "rrlp.ganssUtcA1", 9533 FT_INT32, BASE_DEC, NULL, 0, 9534 "INTEGER_M8388608_8388607", HFILL }}, 9535 { &hf_rrlp_ganssUtcA0, 9536 { "ganssUtcA0", "rrlp.ganssUtcA0", 9537 FT_INT32, BASE_DEC, NULL, 0, 9538 "INTEGER_M2147483648_2147483647", HFILL }}, 9539 { &hf_rrlp_ganssUtcTot, 9540 { "ganssUtcTot", "rrlp.ganssUtcTot", 9541 FT_UINT32, BASE_DEC, NULL, 0, 9542 "INTEGER_0_255", HFILL }}, 9543 { &hf_rrlp_ganssUtcWNt, 9544 { "ganssUtcWNt", "rrlp.ganssUtcWNt", 9545 FT_UINT32, BASE_DEC, NULL, 0, 9546 "INTEGER_0_255", HFILL }}, 9547 { &hf_rrlp_ganssUtcDeltaTls, 9548 { "ganssUtcDeltaTls", "rrlp.ganssUtcDeltaTls", 9549 FT_INT32, BASE_DEC, NULL, 0, 9550 "INTEGER_M128_127", HFILL }}, 9551 { &hf_rrlp_ganssUtcWNlsf, 9552 { "ganssUtcWNlsf", "rrlp.ganssUtcWNlsf", 9553 FT_UINT32, BASE_DEC, NULL, 0, 9554 "INTEGER_0_255", HFILL }}, 9555 { &hf_rrlp_ganssUtcDN, 9556 { "ganssUtcDN", "rrlp.ganssUtcDN", 9557 FT_INT32, BASE_DEC, NULL, 0, 9558 "INTEGER_M128_127", HFILL }}, 9559 { &hf_rrlp_ganssUtcDeltaTlsf, 9560 { "ganssUtcDeltaTlsf", "rrlp.ganssUtcDeltaTlsf", 9561 FT_INT32, BASE_DEC, NULL, 0, 9562 "INTEGER_M128_127", HFILL }}, 9563 { &hf_rrlp_ganssEphemerisHeader, 9564 { "ganssEphemerisHeader", "rrlp.ganssEphemerisHeader_element", 9565 FT_NONE, BASE_NONE, NULL, 0, 9566 "GANSSEphemerisExtensionHeader", HFILL }}, 9567 { &hf_rrlp_ganssReferenceSet, 9568 { "ganssReferenceSet", "rrlp.ganssReferenceSet", 9569 FT_UINT32, BASE_DEC, NULL, 0, 9570 "SeqOfGANSSRefOrbit", HFILL }}, 9571 { &hf_rrlp_ganssephemerisDeltasMatrix, 9572 { "ganssephemerisDeltasMatrix", "rrlp.ganssephemerisDeltasMatrix", 9573 FT_UINT32, BASE_DEC, NULL, 0, 9574 "GANSSEphemerisDeltaMatrix", HFILL }}, 9575 { &hf_rrlp_timeAtEstimation, 9576 { "timeAtEstimation", "rrlp.timeAtEstimation_element", 9577 FT_NONE, BASE_NONE, NULL, 0, 9578 "GANSSEphemerisExtensionTime", HFILL }}, 9579 { &hf_rrlp_validityPeriod, 9580 { "validityPeriod", "rrlp.validityPeriod", 9581 FT_UINT32, BASE_DEC, NULL, 0, 9582 "INTEGER_1_8", HFILL }}, 9583 { &hf_rrlp_ephemerisExtensionDuration, 9584 { "ephemerisExtensionDuration", "rrlp.ephemerisExtensionDuration", 9585 FT_UINT32, BASE_DEC, NULL, 0, 9586 "INTEGER_1_512", HFILL }}, 9587 { &hf_rrlp_ganssEphExtDay, 9588 { "ganssEphExtDay", "rrlp.ganssEphExtDay", 9589 FT_UINT32, BASE_DEC, NULL, 0, 9590 "INTEGER_0_8191", HFILL }}, 9591 { &hf_rrlp_ganssEphExtTOD, 9592 { "ganssEphExtTOD", "rrlp.ganssEphExtTOD", 9593 FT_UINT32, BASE_DEC, NULL, 0, 9594 "GANSSTOD", HFILL }}, 9595 { &hf_rrlp_keplerToe_01, 9596 { "keplerToe", "rrlp.keplerToe", 9597 FT_UINT32, BASE_DEC, NULL, 0, 9598 "INTEGER_0_37799", HFILL }}, 9599 { &hf_rrlp_SeqOfGANSSRefOrbit_item, 9600 { "GANSSReferenceOrbit", "rrlp.GANSSReferenceOrbit_element", 9601 FT_NONE, BASE_NONE, NULL, 0, 9602 NULL, HFILL }}, 9603 { &hf_rrlp_ganssOrbitModel_01, 9604 { "ganssOrbitModel", "rrlp.ganssOrbitModel_element", 9605 FT_NONE, BASE_NONE, NULL, 0, 9606 "ReferenceNavModel", HFILL }}, 9607 { &hf_rrlp_GANSSEphemerisDeltaMatrix_item, 9608 { "GANSSEphemerisDeltaEpoch", "rrlp.GANSSEphemerisDeltaEpoch_element", 9609 FT_NONE, BASE_NONE, NULL, 0, 9610 NULL, HFILL }}, 9611 { &hf_rrlp_ganssDeltaEpochHeader, 9612 { "ganssDeltaEpochHeader", "rrlp.ganssDeltaEpochHeader_element", 9613 FT_NONE, BASE_NONE, NULL, 0, 9614 NULL, HFILL }}, 9615 { &hf_rrlp_ganssDeltaElementList, 9616 { "ganssDeltaElementList", "rrlp.ganssDeltaElementList", 9617 FT_UINT32, BASE_DEC, NULL, 0, 9618 NULL, HFILL }}, 9619 { &hf_rrlp_ephemerisDeltaSizes, 9620 { "ephemerisDeltaSizes", "rrlp.ephemerisDeltaSizes_element", 9621 FT_NONE, BASE_NONE, NULL, 0, 9622 "GANSSEphemerisDeltaBitSizes", HFILL }}, 9623 { &hf_rrlp_ephemerisDeltaScales, 9624 { "ephemerisDeltaScales", "rrlp.ephemerisDeltaScales_element", 9625 FT_NONE, BASE_NONE, NULL, 0, 9626 "GANSSEphemerisDeltaScales", HFILL }}, 9627 { &hf_rrlp_GANSSDeltaElementList_item, 9628 { "GANSSDeltaElementList item", "rrlp.GANSSDeltaElementList_item", 9629 FT_BYTES, BASE_NONE, NULL, 0, 9630 "OCTET_STRING_SIZE_1_49", HFILL }}, 9631 { &hf_rrlp_bitsize_delta_omega, 9632 { "bitsize-delta-omega", "rrlp.bitsize_delta_omega", 9633 FT_UINT32, BASE_DEC, NULL, 0, 9634 "INTEGER_1_32", HFILL }}, 9635 { &hf_rrlp_bitsize_delta_deltaN, 9636 { "bitsize-delta-deltaN", "rrlp.bitsize_delta_deltaN", 9637 FT_UINT32, BASE_DEC, NULL, 0, 9638 "INTEGER_1_16", HFILL }}, 9639 { &hf_rrlp_bitsize_delta_m0, 9640 { "bitsize-delta-m0", "rrlp.bitsize_delta_m0", 9641 FT_UINT32, BASE_DEC, NULL, 0, 9642 "INTEGER_1_32", HFILL }}, 9643 { &hf_rrlp_bitsize_delta_omegadot, 9644 { "bitsize-delta-omegadot", "rrlp.bitsize_delta_omegadot", 9645 FT_UINT32, BASE_DEC, NULL, 0, 9646 "INTEGER_1_24", HFILL }}, 9647 { &hf_rrlp_bitsize_delta_e, 9648 { "bitsize-delta-e", "rrlp.bitsize_delta_e", 9649 FT_UINT32, BASE_DEC, NULL, 0, 9650 "INTEGER_1_32", HFILL }}, 9651 { &hf_rrlp_bitsize_delta_idot, 9652 { "bitsize-delta-idot", "rrlp.bitsize_delta_idot", 9653 FT_UINT32, BASE_DEC, NULL, 0, 9654 "INTEGER_1_14", HFILL }}, 9655 { &hf_rrlp_bitsize_delta_sqrtA, 9656 { "bitsize-delta-sqrtA", "rrlp.bitsize_delta_sqrtA", 9657 FT_UINT32, BASE_DEC, NULL, 0, 9658 "INTEGER_1_32", HFILL }}, 9659 { &hf_rrlp_bitsize_delta_i0, 9660 { "bitsize-delta-i0", "rrlp.bitsize_delta_i0", 9661 FT_UINT32, BASE_DEC, NULL, 0, 9662 "INTEGER_1_32", HFILL }}, 9663 { &hf_rrlp_bitsize_delta_omega0, 9664 { "bitsize-delta-omega0", "rrlp.bitsize_delta_omega0", 9665 FT_UINT32, BASE_DEC, NULL, 0, 9666 "INTEGER_1_32", HFILL }}, 9667 { &hf_rrlp_bitsize_delta_crs, 9668 { "bitsize-delta-crs", "rrlp.bitsize_delta_crs", 9669 FT_UINT32, BASE_DEC, NULL, 0, 9670 "INTEGER_1_16", HFILL }}, 9671 { &hf_rrlp_bitsize_delta_cis, 9672 { "bitsize-delta-cis", "rrlp.bitsize_delta_cis", 9673 FT_UINT32, BASE_DEC, NULL, 0, 9674 "INTEGER_1_16", HFILL }}, 9675 { &hf_rrlp_bitsize_delta_cus, 9676 { "bitsize-delta-cus", "rrlp.bitsize_delta_cus", 9677 FT_UINT32, BASE_DEC, NULL, 0, 9678 "INTEGER_1_16", HFILL }}, 9679 { &hf_rrlp_bitsize_delta_crc, 9680 { "bitsize-delta-crc", "rrlp.bitsize_delta_crc", 9681 FT_UINT32, BASE_DEC, NULL, 0, 9682 "INTEGER_1_16", HFILL }}, 9683 { &hf_rrlp_bitsize_delta_cic, 9684 { "bitsize-delta-cic", "rrlp.bitsize_delta_cic", 9685 FT_UINT32, BASE_DEC, NULL, 0, 9686 "INTEGER_1_16", HFILL }}, 9687 { &hf_rrlp_bitsize_delta_cuc, 9688 { "bitsize-delta-cuc", "rrlp.bitsize_delta_cuc", 9689 FT_UINT32, BASE_DEC, NULL, 0, 9690 "INTEGER_1_16", HFILL }}, 9691 { &hf_rrlp_bitsize_delta_tgd1, 9692 { "bitsize-delta-tgd1", "rrlp.bitsize_delta_tgd1", 9693 FT_UINT32, BASE_DEC, NULL, 0, 9694 "INTEGER_1_10", HFILL }}, 9695 { &hf_rrlp_bitsize_delta_tgd2, 9696 { "bitsize-delta-tgd2", "rrlp.bitsize_delta_tgd2", 9697 FT_UINT32, BASE_DEC, NULL, 0, 9698 "INTEGER_1_10", HFILL }}, 9699 { &hf_rrlp_scale_delta_omega, 9700 { "scale-delta-omega", "rrlp.scale_delta_omega", 9701 FT_INT32, BASE_DEC, NULL, 0, 9702 "INTEGER_M16_15", HFILL }}, 9703 { &hf_rrlp_scale_delta_deltaN, 9704 { "scale-delta-deltaN", "rrlp.scale_delta_deltaN", 9705 FT_INT32, BASE_DEC, NULL, 0, 9706 "INTEGER_M16_15", HFILL }}, 9707 { &hf_rrlp_scale_delta_m0, 9708 { "scale-delta-m0", "rrlp.scale_delta_m0", 9709 FT_INT32, BASE_DEC, NULL, 0, 9710 "INTEGER_M16_15", HFILL }}, 9711 { &hf_rrlp_scale_delta_omegadot, 9712 { "scale-delta-omegadot", "rrlp.scale_delta_omegadot", 9713 FT_INT32, BASE_DEC, NULL, 0, 9714 "INTEGER_M16_15", HFILL }}, 9715 { &hf_rrlp_scale_delta_e, 9716 { "scale-delta-e", "rrlp.scale_delta_e", 9717 FT_INT32, BASE_DEC, NULL, 0, 9718 "INTEGER_M16_15", HFILL }}, 9719 { &hf_rrlp_scale_delta_idot, 9720 { "scale-delta-idot", "rrlp.scale_delta_idot", 9721 FT_INT32, BASE_DEC, NULL, 0, 9722 "INTEGER_M16_15", HFILL }}, 9723 { &hf_rrlp_scale_delta_sqrtA, 9724 { "scale-delta-sqrtA", "rrlp.scale_delta_sqrtA", 9725 FT_INT32, BASE_DEC, NULL, 0, 9726 "INTEGER_M16_15", HFILL }}, 9727 { &hf_rrlp_scale_delta_i0, 9728 { "scale-delta-i0", "rrlp.scale_delta_i0", 9729 FT_INT32, BASE_DEC, NULL, 0, 9730 "INTEGER_M16_15", HFILL }}, 9731 { &hf_rrlp_scale_delta_omega0, 9732 { "scale-delta-omega0", "rrlp.scale_delta_omega0", 9733 FT_INT32, BASE_DEC, NULL, 0, 9734 "INTEGER_M16_15", HFILL }}, 9735 { &hf_rrlp_scale_delta_crs, 9736 { "scale-delta-crs", "rrlp.scale_delta_crs", 9737 FT_INT32, BASE_DEC, NULL, 0, 9738 "INTEGER_M16_15", HFILL }}, 9739 { &hf_rrlp_scale_delta_cis, 9740 { "scale-delta-cis", "rrlp.scale_delta_cis", 9741 FT_INT32, BASE_DEC, NULL, 0, 9742 "INTEGER_M16_15", HFILL }}, 9743 { &hf_rrlp_scale_delta_cus, 9744 { "scale-delta-cus", "rrlp.scale_delta_cus", 9745 FT_INT32, BASE_DEC, NULL, 0, 9746 "INTEGER_M16_15", HFILL }}, 9747 { &hf_rrlp_scale_delta_crc, 9748 { "scale-delta-crc", "rrlp.scale_delta_crc", 9749 FT_INT32, BASE_DEC, NULL, 0, 9750 "INTEGER_M16_15", HFILL }}, 9751 { &hf_rrlp_scale_delta_cic, 9752 { "scale-delta-cic", "rrlp.scale_delta_cic", 9753 FT_INT32, BASE_DEC, NULL, 0, 9754 "INTEGER_M16_15", HFILL }}, 9755 { &hf_rrlp_scale_delta_cuc, 9756 { "scale-delta-cuc", "rrlp.scale_delta_cuc", 9757 FT_INT32, BASE_DEC, NULL, 0, 9758 "INTEGER_M16_15", HFILL }}, 9759 { &hf_rrlp_scale_delta_tgd1, 9760 { "scale-delta-tgd1", "rrlp.scale_delta_tgd1", 9761 FT_INT32, BASE_DEC, NULL, 0, 9762 "INTEGER_M16_15", HFILL }}, 9763 { &hf_rrlp_scale_delta_tgd2, 9764 { "scale-delta-tgd2", "rrlp.scale_delta_tgd2", 9765 FT_INT32, BASE_DEC, NULL, 0, 9766 "INTEGER_M16_15", HFILL }}, 9767 { &hf_rrlp_ganssBeginTime, 9768 { "ganssBeginTime", "rrlp.ganssBeginTime_element", 9769 FT_NONE, BASE_NONE, NULL, 0, 9770 "GANSSEphemerisExtensionTime", HFILL }}, 9771 { &hf_rrlp_ganssEndTime, 9772 { "ganssEndTime", "rrlp.ganssEndTime_element", 9773 FT_NONE, BASE_NONE, NULL, 0, 9774 "GANSSEphemerisExtensionTime", HFILL }}, 9775 { &hf_rrlp_ganssSatEventsInfo, 9776 { "ganssSatEventsInfo", "rrlp.ganssSatEventsInfo_element", 9777 FT_NONE, BASE_NONE, NULL, 0, 9778 NULL, HFILL }}, 9779 { &hf_rrlp_eventOccured, 9780 { "eventOccured", "rrlp.eventOccured", 9781 FT_BYTES, BASE_NONE, NULL, 0, 9782 "BIT_STRING_SIZE_64", HFILL }}, 9783 { &hf_rrlp_futureEventNoted, 9784 { "futureEventNoted", "rrlp.futureEventNoted", 9785 FT_BYTES, BASE_NONE, NULL, 0, 9786 "BIT_STRING_SIZE_64", HFILL }}, 9787 { &hf_rrlp_utcModel2, 9788 { "utcModel2", "rrlp.utcModel2_element", 9789 FT_NONE, BASE_NONE, NULL, 0, 9790 "UTCmodelSet2", HFILL }}, 9791 { &hf_rrlp_utcModel3, 9792 { "utcModel3", "rrlp.utcModel3_element", 9793 FT_NONE, BASE_NONE, NULL, 0, 9794 "UTCmodelSet3", HFILL }}, 9795 { &hf_rrlp_utcModel4, 9796 { "utcModel4", "rrlp.utcModel4_element", 9797 FT_NONE, BASE_NONE, NULL, 0, 9798 "UTCmodelSet4", HFILL }}, 9799 { &hf_rrlp_utcA0_01, 9800 { "utcA0", "rrlp.utcA0", 9801 FT_INT32, BASE_DEC, NULL, 0, 9802 "INTEGER_M32768_32767", HFILL }}, 9803 { &hf_rrlp_utcA1_01, 9804 { "utcA1", "rrlp.utcA1", 9805 FT_INT32, BASE_DEC, NULL, 0, 9806 "INTEGER_M4096_4095", HFILL }}, 9807 { &hf_rrlp_utcA2, 9808 { "utcA2", "rrlp.utcA2", 9809 FT_INT32, BASE_DEC, NULL, 0, 9810 "INTEGER_M64_63", HFILL }}, 9811 { &hf_rrlp_utcTot_01, 9812 { "utcTot", "rrlp.utcTot", 9813 FT_UINT32, BASE_DEC, NULL, 0, 9814 "INTEGER_0_65535", HFILL }}, 9815 { &hf_rrlp_utcWNot, 9816 { "utcWNot", "rrlp.utcWNot", 9817 FT_UINT32, BASE_DEC, NULL, 0, 9818 "INTEGER_0_8191", HFILL }}, 9819 { &hf_rrlp_utcDN_01, 9820 { "utcDN", "rrlp.utcDN", 9821 FT_BYTES, BASE_NONE, NULL, 0, 9822 "BIT_STRING_SIZE_4", HFILL }}, 9823 { &hf_rrlp_nA, 9824 { "nA", "rrlp.nA", 9825 FT_UINT32, BASE_DEC, NULL, 0, 9826 "INTEGER_1_1461", HFILL }}, 9827 { &hf_rrlp_tauC, 9828 { "tauC", "rrlp.tauC", 9829 FT_INT32, BASE_DEC, NULL, 0, 9830 "INTEGER_M2147483648_2147483647", HFILL }}, 9831 { &hf_rrlp_b1, 9832 { "b1", "rrlp.b1", 9833 FT_INT32, BASE_DEC, NULL, 0, 9834 "INTEGER_M1024_1023", HFILL }}, 9835 { &hf_rrlp_b2, 9836 { "b2", "rrlp.b2", 9837 FT_INT32, BASE_DEC, NULL, 0, 9838 "INTEGER_M512_511", HFILL }}, 9839 { &hf_rrlp_kp, 9840 { "kp", "rrlp.kp", 9841 FT_BYTES, BASE_NONE, NULL, 0, 9842 "BIT_STRING_SIZE_2", HFILL }}, 9843 { &hf_rrlp_utcA1wnt, 9844 { "utcA1wnt", "rrlp.utcA1wnt", 9845 FT_INT32, BASE_DEC, NULL, 0, 9846 "INTEGER_M8388608_8388607", HFILL }}, 9847 { &hf_rrlp_utcA0wnt, 9848 { "utcA0wnt", "rrlp.utcA0wnt", 9849 FT_INT32, BASE_DEC, NULL, 0, 9850 "INTEGER_M2147483648_2147483647", HFILL }}, 9851 { &hf_rrlp_utcStandardID, 9852 { "utcStandardID", "rrlp.utcStandardID", 9853 FT_UINT32, BASE_DEC, NULL, 0, 9854 "INTEGER_0_7", HFILL }}, 9855 { &hf_rrlp_ganssID1, 9856 { "ganssID1", "rrlp.ganssID1", 9857 FT_UINT32, BASE_DEC, NULL, 0, 9858 "GANSS_ID1", HFILL }}, 9859 { &hf_rrlp_ganssID3, 9860 { "ganssID3", "rrlp.ganssID3", 9861 FT_UINT32, BASE_DEC, NULL, 0, 9862 "GANSS_ID3", HFILL }}, 9863 { &hf_rrlp_GANSS_ID1_item, 9864 { "GANSS-ID1-element", "rrlp.GANSS_ID1_element_element", 9865 FT_NONE, BASE_NONE, NULL, 0, 9866 NULL, HFILL }}, 9867 { &hf_rrlp_signalsAvailable, 9868 { "signalsAvailable", "rrlp.signalsAvailable", 9869 FT_BYTES, BASE_NONE, NULL, 0, 9870 "GANSSSignals", HFILL }}, 9871 { &hf_rrlp_GANSS_ID3_item, 9872 { "GANSS-ID3-element", "rrlp.GANSS_ID3_element_element", 9873 FT_NONE, BASE_NONE, NULL, 0, 9874 NULL, HFILL }}, 9875 { &hf_rrlp_channelNumber, 9876 { "channelNumber", "rrlp.channelNumber", 9877 FT_INT32, BASE_DEC, NULL, 0, 9878 "INTEGER_M7_13", HFILL }}, 9879 { &hf_rrlp_GANSSDiffCorrectionsValidityPeriod_item, 9880 { "DGANSSExtensionSgnTypeElement", "rrlp.DGANSSExtensionSgnTypeElement_element", 9881 FT_NONE, BASE_NONE, NULL, 0, 9882 NULL, HFILL }}, 9883 { &hf_rrlp_dganssExtensionSgnList, 9884 { "dganssExtensionSgnList", "rrlp.dganssExtensionSgnList", 9885 FT_UINT32, BASE_DEC, NULL, 0, 9886 "SeqOfDGANSSExtensionSgnElement", HFILL }}, 9887 { &hf_rrlp_SeqOfDGANSSExtensionSgnElement_item, 9888 { "DGANSSExtensionSgnElement", "rrlp.DGANSSExtensionSgnElement_element", 9889 FT_NONE, BASE_NONE, NULL, 0, 9890 NULL, HFILL }}, 9891 { &hf_rrlp_udreGrowthRate, 9892 { "udreGrowthRate", "rrlp.udreGrowthRate", 9893 FT_UINT32, BASE_DEC, NULL, 0, 9894 "INTEGER_0_7", HFILL }}, 9895 { &hf_rrlp_udreValidityTime, 9896 { "udreValidityTime", "rrlp.udreValidityTime", 9897 FT_UINT32, BASE_DEC, NULL, 0, 9898 "INTEGER_0_7", HFILL }}, 9899 { &hf_rrlp_add_GPS_controlHeader, 9900 { "add-GPS-controlHeader", "rrlp.add_GPS_controlHeader_element", 9901 FT_NONE, BASE_NONE, NULL, 0, 9902 NULL, HFILL }}, 9903 { &hf_rrlp_gpsEphemerisExtension, 9904 { "gpsEphemerisExtension", "rrlp.gpsEphemerisExtension_element", 9905 FT_NONE, BASE_NONE, NULL, 0, 9906 NULL, HFILL }}, 9907 { &hf_rrlp_gpsEphemerisExtensionCheck, 9908 { "gpsEphemerisExtensionCheck", "rrlp.gpsEphemerisExtensionCheck_element", 9909 FT_NONE, BASE_NONE, NULL, 0, 9910 NULL, HFILL }}, 9911 { &hf_rrlp_dgpsCorrectionsValidityPeriod, 9912 { "dgpsCorrectionsValidityPeriod", "rrlp.dgpsCorrectionsValidityPeriod", 9913 FT_UINT32, BASE_DEC, NULL, 0, 9914 NULL, HFILL }}, 9915 { &hf_rrlp_gpsReferenceTime_R10_Ext, 9916 { "gpsReferenceTime-R10-Ext", "rrlp.gpsReferenceTime_R10_Ext_element", 9917 FT_NONE, BASE_NONE, NULL, 0, 9918 NULL, HFILL }}, 9919 { &hf_rrlp_gpsAcquisAssist_R10_Ext, 9920 { "gpsAcquisAssist-R10-Ext", "rrlp.gpsAcquisAssist_R10_Ext", 9921 FT_UINT32, BASE_DEC, NULL, 0, 9922 NULL, HFILL }}, 9923 { &hf_rrlp_gpsAlmanac_R10_Ext, 9924 { "gpsAlmanac-R10-Ext", "rrlp.gpsAlmanac_R10_Ext_element", 9925 FT_NONE, BASE_NONE, NULL, 0, 9926 NULL, HFILL }}, 9927 { &hf_rrlp_af2, 9928 { "af2", "rrlp.af2", 9929 FT_INT32, BASE_DEC, NULL, 0, 9930 "INTEGER_M128_127", HFILL }}, 9931 { &hf_rrlp_af1, 9932 { "af1", "rrlp.af1", 9933 FT_INT32, BASE_DEC, NULL, 0, 9934 "INTEGER_M32768_32767", HFILL }}, 9935 { &hf_rrlp_af0, 9936 { "af0", "rrlp.af0", 9937 FT_INT32, BASE_DEC, NULL, 0, 9938 "INTEGER_M2097152_2097151", HFILL }}, 9939 { &hf_rrlp_tgd, 9940 { "tgd", "rrlp.tgd", 9941 FT_INT32, BASE_DEC, NULL, 0, 9942 "INTEGER_M128_127", HFILL }}, 9943 { &hf_rrlp_gpsEphemerisHeader, 9944 { "gpsEphemerisHeader", "rrlp.gpsEphemerisHeader_element", 9945 FT_NONE, BASE_NONE, NULL, 0, 9946 "GPSEphemerisExtensionHeader", HFILL }}, 9947 { &hf_rrlp_gpsReferenceSet, 9948 { "gpsReferenceSet", "rrlp.gpsReferenceSet", 9949 FT_UINT32, BASE_DEC, NULL, 0, 9950 "SeqOfGPSRefOrbit", HFILL }}, 9951 { &hf_rrlp_gpsephemerisDeltaMatrix, 9952 { "gpsephemerisDeltaMatrix", "rrlp.gpsephemerisDeltaMatrix", 9953 FT_UINT32, BASE_DEC, NULL, 0, 9954 NULL, HFILL }}, 9955 { &hf_rrlp_timeofEstimation, 9956 { "timeofEstimation", "rrlp.timeofEstimation_element", 9957 FT_NONE, BASE_NONE, NULL, 0, 9958 "GPSEphemerisExtensionTime", HFILL }}, 9959 { &hf_rrlp_SeqOfGPSRefOrbit_item, 9960 { "GPSReferenceOrbit", "rrlp.GPSReferenceOrbit_element", 9961 FT_NONE, BASE_NONE, NULL, 0, 9962 NULL, HFILL }}, 9963 { &hf_rrlp_gpsOrbitModel, 9964 { "gpsOrbitModel", "rrlp.gpsOrbitModel_element", 9965 FT_NONE, BASE_NONE, NULL, 0, 9966 "ReferenceNavModel", HFILL }}, 9967 { &hf_rrlp_gpsClockModel, 9968 { "gpsClockModel", "rrlp.gpsClockModel_element", 9969 FT_NONE, BASE_NONE, NULL, 0, 9970 NULL, HFILL }}, 9971 { &hf_rrlp_GPSEphemerisDeltaMatrix_item, 9972 { "GPSEphemerisDeltaEpoch", "rrlp.GPSEphemerisDeltaEpoch_element", 9973 FT_NONE, BASE_NONE, NULL, 0, 9974 NULL, HFILL }}, 9975 { &hf_rrlp_gpsDeltaEpochHeader, 9976 { "gpsDeltaEpochHeader", "rrlp.gpsDeltaEpochHeader_element", 9977 FT_NONE, BASE_NONE, NULL, 0, 9978 NULL, HFILL }}, 9979 { &hf_rrlp_gpsDeltaElementList, 9980 { "gpsDeltaElementList", "rrlp.gpsDeltaElementList", 9981 FT_UINT32, BASE_DEC, NULL, 0, 9982 NULL, HFILL }}, 9983 { &hf_rrlp_ephemerisDeltaSizes_01, 9984 { "ephemerisDeltaSizes", "rrlp.ephemerisDeltaSizes_element", 9985 FT_NONE, BASE_NONE, NULL, 0, 9986 "GPSEphemerisDeltaBitSizes", HFILL }}, 9987 { &hf_rrlp_ephemerisDeltaScales_01, 9988 { "ephemerisDeltaScales", "rrlp.ephemerisDeltaScales_element", 9989 FT_NONE, BASE_NONE, NULL, 0, 9990 "GPSEphemerisDeltaScales", HFILL }}, 9991 { &hf_rrlp_GPSDeltaElementList_item, 9992 { "GPSDeltaElementList item", "rrlp.GPSDeltaElementList_item", 9993 FT_BYTES, BASE_NONE, NULL, 0, 9994 "OCTET_STRING_SIZE_1_47", HFILL }}, 9995 { &hf_rrlp_bitsize_delta_tgd, 9996 { "bitsize-delta-tgd", "rrlp.bitsize_delta_tgd", 9997 FT_UINT32, BASE_DEC, NULL, 0, 9998 "INTEGER_1_10", HFILL }}, 9999 { &hf_rrlp_scale_delta_tgd, 10000 { "scale-delta-tgd", "rrlp.scale_delta_tgd", 10001 FT_INT32, BASE_DEC, NULL, 0, 10002 "INTEGER_M16_15", HFILL }}, 10003 { &hf_rrlp_gpsBeginTime, 10004 { "gpsBeginTime", "rrlp.gpsBeginTime_element", 10005 FT_NONE, BASE_NONE, NULL, 0, 10006 "GPSEphemerisExtensionTime", HFILL }}, 10007 { &hf_rrlp_gpsEndTime, 10008 { "gpsEndTime", "rrlp.gpsEndTime_element", 10009 FT_NONE, BASE_NONE, NULL, 0, 10010 "GPSEphemerisExtensionTime", HFILL }}, 10011 { &hf_rrlp_gpsSatEventsInfo, 10012 { "gpsSatEventsInfo", "rrlp.gpsSatEventsInfo_element", 10013 FT_NONE, BASE_NONE, NULL, 0, 10014 NULL, HFILL }}, 10015 { &hf_rrlp_eventOccured_01, 10016 { "eventOccured", "rrlp.eventOccured", 10017 FT_BYTES, BASE_NONE, NULL, 0, 10018 "BIT_STRING_SIZE_32", HFILL }}, 10019 { &hf_rrlp_futureEventNoted_01, 10020 { "futureEventNoted", "rrlp.futureEventNoted", 10021 FT_BYTES, BASE_NONE, NULL, 0, 10022 "BIT_STRING_SIZE_32", HFILL }}, 10023 { &hf_rrlp_DGPSCorrectionsValidityPeriod_item, 10024 { "DGPSExtensionSatElement", "rrlp.DGPSExtensionSatElement_element", 10025 FT_NONE, BASE_NONE, NULL, 0, 10026 NULL, HFILL }}, 10027 { &hf_rrlp_gpsWeekCycleNumber, 10028 { "gpsWeekCycleNumber", "rrlp.gpsWeekCycleNumber", 10029 FT_UINT32, BASE_DEC, NULL, 0, 10030 "INTEGER_0_7", HFILL }}, 10031 { &hf_rrlp_GPSAcquisAssist_R10_Ext_item, 10032 { "GPSAcquisAssist-R10-Ext-Element", "rrlp.GPSAcquisAssist_R10_Ext_Element_element", 10033 FT_NONE, BASE_NONE, NULL, 0, 10034 NULL, HFILL }}, 10035 { &hf_rrlp_velEstimate, 10036 { "velEstimate", "rrlp.velEstimate", 10037 FT_BYTES, BASE_NONE, NULL, 0, 10038 "VelocityEstimate", HFILL }}, 10039 { &hf_rrlp_ganssLocationInfo, 10040 { "ganssLocationInfo", "rrlp.ganssLocationInfo_element", 10041 FT_NONE, BASE_NONE, NULL, 0, 10042 NULL, HFILL }}, 10043 { &hf_rrlp_ganssMeasureInfo, 10044 { "ganssMeasureInfo", "rrlp.ganssMeasureInfo_element", 10045 FT_NONE, BASE_NONE, NULL, 0, 10046 NULL, HFILL }}, 10047 { &hf_rrlp_referenceFrame, 10048 { "referenceFrame", "rrlp.referenceFrame_element", 10049 FT_NONE, BASE_NONE, NULL, 0, 10050 NULL, HFILL }}, 10051 { &hf_rrlp_ganssTODm, 10052 { "ganssTODm", "rrlp.ganssTODm", 10053 FT_UINT32, BASE_DEC, NULL, 0, 10054 NULL, HFILL }}, 10055 { &hf_rrlp_ganssTODFrac, 10056 { "ganssTODFrac", "rrlp.ganssTODFrac", 10057 FT_UINT32, BASE_DEC, NULL, 0, 10058 "INTEGER_0_16384", HFILL }}, 10059 { &hf_rrlp_posData, 10060 { "posData", "rrlp.posData", 10061 FT_BYTES, BASE_NONE, NULL, 0, 10062 "PositionData", HFILL }}, 10063 { &hf_rrlp_stationaryIndication, 10064 { "stationaryIndication", "rrlp.stationaryIndication", 10065 FT_UINT32, BASE_DEC, NULL, 0, 10066 "INTEGER_0_1", HFILL }}, 10067 { &hf_rrlp_referenceFN, 10068 { "referenceFN", "rrlp.referenceFN", 10069 FT_UINT32, BASE_DEC, NULL, 0, 10070 "INTEGER_0_65535", HFILL }}, 10071 { &hf_rrlp_referenceFNMSB, 10072 { "referenceFNMSB", "rrlp.referenceFNMSB", 10073 FT_UINT32, BASE_DEC, NULL, 0, 10074 "INTEGER_0_63", HFILL }}, 10075 { &hf_rrlp_ganssMsrSetList, 10076 { "ganssMsrSetList", "rrlp.ganssMsrSetList", 10077 FT_UINT32, BASE_DEC, NULL, 0, 10078 "SeqOfGANSS_MsrSetElement", HFILL }}, 10079 { &hf_rrlp_SeqOfGANSS_MsrSetElement_item, 10080 { "GANSS-MsrSetElement", "rrlp.GANSS_MsrSetElement_element", 10081 FT_NONE, BASE_NONE, NULL, 0, 10082 NULL, HFILL }}, 10083 { &hf_rrlp_deltaGANSSTOD, 10084 { "deltaGANSSTOD", "rrlp.deltaGANSSTOD", 10085 FT_UINT32, BASE_DEC, NULL, 0, 10086 "INTEGER_0_127", HFILL }}, 10087 { &hf_rrlp_ganss_MsrElementList, 10088 { "ganss-MsrElementList", "rrlp.ganss_MsrElementList", 10089 FT_UINT32, BASE_DEC, NULL, 0, 10090 "SeqOfGANSS_MsrElement", HFILL }}, 10091 { &hf_rrlp_SeqOfGANSS_MsrElement_item, 10092 { "GANSS-MsrElement", "rrlp.GANSS_MsrElement_element", 10093 FT_NONE, BASE_NONE, NULL, 0, 10094 NULL, HFILL }}, 10095 { &hf_rrlp_ganss_SgnTypeList, 10096 { "ganss-SgnTypeList", "rrlp.ganss_SgnTypeList", 10097 FT_UINT32, BASE_DEC, NULL, 0, 10098 "SeqOfGANSS_SgnTypeElement", HFILL }}, 10099 { &hf_rrlp_SeqOfGANSS_SgnTypeElement_item, 10100 { "GANSS-SgnTypeElement", "rrlp.GANSS_SgnTypeElement_element", 10101 FT_NONE, BASE_NONE, NULL, 0, 10102 NULL, HFILL }}, 10103 { &hf_rrlp_ganssCodePhaseAmbiguity, 10104 { "ganssCodePhaseAmbiguity", "rrlp.ganssCodePhaseAmbiguity", 10105 FT_UINT32, BASE_DEC, NULL, 0, 10106 "INTEGER_0_127", HFILL }}, 10107 { &hf_rrlp_ganss_SgnList, 10108 { "ganss-SgnList", "rrlp.ganss_SgnList", 10109 FT_UINT32, BASE_DEC, NULL, 0, 10110 "SeqOfGANSS_SgnElement", HFILL }}, 10111 { &hf_rrlp_SeqOfGANSS_SgnElement_item, 10112 { "GANSS-SgnElement", "rrlp.GANSS_SgnElement_element", 10113 FT_NONE, BASE_NONE, NULL, 0, 10114 NULL, HFILL }}, 10115 { &hf_rrlp_mpathDet, 10116 { "mpathDet", "rrlp.mpathDet", 10117 FT_UINT32, BASE_DEC, VALS(rrlp_MpathIndic_vals), 0, 10118 "MpathIndic", HFILL }}, 10119 { &hf_rrlp_carrierQualityInd, 10120 { "carrierQualityInd", "rrlp.carrierQualityInd", 10121 FT_UINT32, BASE_DEC, NULL, 0, 10122 "INTEGER_0_3", HFILL }}, 10123 { &hf_rrlp_codePhase_01, 10124 { "codePhase", "rrlp.codePhase", 10125 FT_UINT32, BASE_DEC, NULL, 0, 10126 "INTEGER_0_2097151", HFILL }}, 10127 { &hf_rrlp_integerCodePhase, 10128 { "integerCodePhase", "rrlp.integerCodePhase", 10129 FT_UINT32, BASE_DEC, NULL, 0, 10130 "INTEGER_0_127", HFILL }}, 10131 { &hf_rrlp_codePhaseRMSError, 10132 { "codePhaseRMSError", "rrlp.codePhaseRMSError", 10133 FT_UINT32, BASE_DEC, NULL, 0, 10134 "INTEGER_0_63", HFILL }}, 10135 { &hf_rrlp_adr, 10136 { "adr", "rrlp.adr", 10137 FT_UINT32, BASE_DEC, NULL, 0, 10138 "INTEGER_0_33554431", HFILL }}, 10139 { &hf_rrlp_nonGANSSpositionMethods, 10140 { "nonGANSSpositionMethods", "rrlp.nonGANSSpositionMethods", 10141 FT_BYTES, BASE_NONE, NULL, 0, 10142 NULL, HFILL }}, 10143 { &hf_rrlp_multipleMeasurementSets, 10144 { "multipleMeasurementSets", "rrlp.multipleMeasurementSets", 10145 FT_BYTES, BASE_NONE, NULL, 0, 10146 NULL, HFILL }}, 10147 { &hf_rrlp_GANSSPositionMethods_item, 10148 { "GANSSPositionMethod", "rrlp.GANSSPositionMethod_element", 10149 FT_NONE, BASE_NONE, NULL, 0, 10150 NULL, HFILL }}, 10151 { &hf_rrlp_gANSSPositioningMethodTypes, 10152 { "gANSSPositioningMethodTypes", "rrlp.gANSSPositioningMethodTypes", 10153 FT_BYTES, BASE_NONE, NULL, 0, 10154 NULL, HFILL }}, 10155 { &hf_rrlp_gANSSSignals, 10156 { "gANSSSignals", "rrlp.gANSSSignals", 10157 FT_BYTES, BASE_NONE, NULL, 0, 10158 NULL, HFILL }}, 10159 { &hf_rrlp_sbasID_01, 10160 { "sbasID", "rrlp.sbasID", 10161 FT_BYTES, BASE_NONE, NULL, 0, 10162 NULL, HFILL }}, 10163 { &hf_rrlp_gpsAssistance, 10164 { "gpsAssistance", "rrlp.gpsAssistance", 10165 FT_BYTES, BASE_NONE, NULL, 0, 10166 NULL, HFILL }}, 10167 { &hf_rrlp_gANSSAssistanceSet, 10168 { "gANSSAssistanceSet", "rrlp.gANSSAssistanceSet_element", 10169 FT_NONE, BASE_NONE, NULL, 0, 10170 NULL, HFILL }}, 10171 { &hf_rrlp_gANSSAdditionalAssistanceChoices, 10172 { "gANSSAdditionalAssistanceChoices", "rrlp.gANSSAdditionalAssistanceChoices", 10173 FT_UINT32, BASE_DEC, NULL, 0, 10174 NULL, HFILL }}, 10175 { &hf_rrlp_commonGANSSAssistance, 10176 { "commonGANSSAssistance", "rrlp.commonGANSSAssistance", 10177 FT_BYTES, BASE_NONE, NULL, 0, 10178 NULL, HFILL }}, 10179 { &hf_rrlp_specificGANSSAssistance, 10180 { "specificGANSSAssistance", "rrlp.specificGANSSAssistance", 10181 FT_UINT32, BASE_DEC, NULL, 0, 10182 NULL, HFILL }}, 10183 { &hf_rrlp_SpecificGANSSAssistance_item, 10184 { "GANSSAssistanceForOneGANSS", "rrlp.GANSSAssistanceForOneGANSS_element", 10185 FT_NONE, BASE_NONE, NULL, 0, 10186 NULL, HFILL }}, 10187 { &hf_rrlp_gANSSAssistance, 10188 { "gANSSAssistance", "rrlp.gANSSAssistance", 10189 FT_BYTES, BASE_NONE, NULL, 0, 10190 NULL, HFILL }}, 10191 { &hf_rrlp_GANSSAdditionalAssistanceChoices_item, 10192 { "GANSSAdditionalAssistanceChoicesForOneGANSS", "rrlp.GANSSAdditionalAssistanceChoicesForOneGANSS_element", 10193 FT_NONE, BASE_NONE, NULL, 0, 10194 NULL, HFILL }}, 10195 { &hf_rrlp_ganssClockModelChoice, 10196 { "ganssClockModelChoice", "rrlp.ganssClockModelChoice", 10197 FT_BYTES, BASE_NONE, NULL, 0, 10198 "GANSSModelID", HFILL }}, 10199 { &hf_rrlp_gannsOrbitModelChoice, 10200 { "gannsOrbitModelChoice", "rrlp.gannsOrbitModelChoice", 10201 FT_BYTES, BASE_NONE, NULL, 0, 10202 "GANSSModelID", HFILL }}, 10203 { &hf_rrlp_ganssAlmanacModelChoice, 10204 { "ganssAlmanacModelChoice", "rrlp.ganssAlmanacModelChoice", 10205 FT_BYTES, BASE_NONE, NULL, 0, 10206 "GANSSModelID", HFILL }}, 10207 { &hf_rrlp_ganssAdditionalUTCModelChoice, 10208 { "ganssAdditionalUTCModelChoice", "rrlp.ganssAdditionalUTCModelChoice", 10209 FT_BYTES, BASE_NONE, NULL, 0, 10210 "GANSSModelID", HFILL }}, 10211 { &hf_rrlp_GANSSPositioningMethod_gps, 10212 { "gps", "rrlp.GANSSPositioningMethod.gps", 10213 FT_BOOLEAN, 8, NULL, 0x80, 10214 NULL, HFILL }}, 10215 { &hf_rrlp_GANSSPositioningMethod_galileo, 10216 { "galileo", "rrlp.GANSSPositioningMethod.galileo", 10217 FT_BOOLEAN, 8, NULL, 0x40, 10218 NULL, HFILL }}, 10219 { &hf_rrlp_GANSSPositioningMethod_sbas, 10220 { "sbas", "rrlp.GANSSPositioningMethod.sbas", 10221 FT_BOOLEAN, 8, NULL, 0x20, 10222 NULL, HFILL }}, 10223 { &hf_rrlp_GANSSPositioningMethod_modernizedGPS, 10224 { "modernizedGPS", "rrlp.GANSSPositioningMethod.modernizedGPS", 10225 FT_BOOLEAN, 8, NULL, 0x10, 10226 NULL, HFILL }}, 10227 { &hf_rrlp_GANSSPositioningMethod_qzss, 10228 { "qzss", "rrlp.GANSSPositioningMethod.qzss", 10229 FT_BOOLEAN, 8, NULL, 0x08, 10230 NULL, HFILL }}, 10231 { &hf_rrlp_GANSSPositioningMethod_glonass, 10232 { "glonass", "rrlp.GANSSPositioningMethod.glonass", 10233 FT_BOOLEAN, 8, NULL, 0x04, 10234 NULL, HFILL }}, 10235 { &hf_rrlp_PositionData_e_otd, 10236 { "e-otd", "rrlp.PositionData.e.otd", 10237 FT_BOOLEAN, 8, NULL, 0x80, 10238 NULL, HFILL }}, 10239 { &hf_rrlp_PositionData_gps, 10240 { "gps", "rrlp.PositionData.gps", 10241 FT_BOOLEAN, 8, NULL, 0x40, 10242 NULL, HFILL }}, 10243 { &hf_rrlp_PositionData_galileo, 10244 { "galileo", "rrlp.PositionData.galileo", 10245 FT_BOOLEAN, 8, NULL, 0x20, 10246 NULL, HFILL }}, 10247 { &hf_rrlp_PositionData_sbas, 10248 { "sbas", "rrlp.PositionData.sbas", 10249 FT_BOOLEAN, 8, NULL, 0x10, 10250 NULL, HFILL }}, 10251 { &hf_rrlp_PositionData_modernizedGPS, 10252 { "modernizedGPS", "rrlp.PositionData.modernizedGPS", 10253 FT_BOOLEAN, 8, NULL, 0x08, 10254 NULL, HFILL }}, 10255 { &hf_rrlp_PositionData_qzss, 10256 { "qzss", "rrlp.PositionData.qzss", 10257 FT_BOOLEAN, 8, NULL, 0x04, 10258 NULL, HFILL }}, 10259 { &hf_rrlp_PositionData_glonass, 10260 { "glonass", "rrlp.PositionData.glonass", 10261 FT_BOOLEAN, 8, NULL, 0x02, 10262 NULL, HFILL }}, 10263 { &hf_rrlp_NonGANSSPositionMethods_msAssistedEOTD, 10264 { "msAssistedEOTD", "rrlp.NonGANSSPositionMethods.msAssistedEOTD", 10265 FT_BOOLEAN, 8, NULL, 0x80, 10266 NULL, HFILL }}, 10267 { &hf_rrlp_NonGANSSPositionMethods_msBasedEOTD, 10268 { "msBasedEOTD", "rrlp.NonGANSSPositionMethods.msBasedEOTD", 10269 FT_BOOLEAN, 8, NULL, 0x40, 10270 NULL, HFILL }}, 10271 { &hf_rrlp_NonGANSSPositionMethods_msAssistedGPS, 10272 { "msAssistedGPS", "rrlp.NonGANSSPositionMethods.msAssistedGPS", 10273 FT_BOOLEAN, 8, NULL, 0x20, 10274 NULL, HFILL }}, 10275 { &hf_rrlp_NonGANSSPositionMethods_msBasedGPS, 10276 { "msBasedGPS", "rrlp.NonGANSSPositionMethods.msBasedGPS", 10277 FT_BOOLEAN, 8, NULL, 0x10, 10278 NULL, HFILL }}, 10279 { &hf_rrlp_NonGANSSPositionMethods_standaloneGPS, 10280 { "standaloneGPS", "rrlp.NonGANSSPositionMethods.standaloneGPS", 10281 FT_BOOLEAN, 8, NULL, 0x08, 10282 NULL, HFILL }}, 10283 { &hf_rrlp_GANSSPositioningMethodTypes_msAssisted, 10284 { "msAssisted", "rrlp.GANSSPositioningMethodTypes.msAssisted", 10285 FT_BOOLEAN, 8, NULL, 0x80, 10286 NULL, HFILL }}, 10287 { &hf_rrlp_GANSSPositioningMethodTypes_msBased, 10288 { "msBased", "rrlp.GANSSPositioningMethodTypes.msBased", 10289 FT_BOOLEAN, 8, NULL, 0x40, 10290 NULL, HFILL }}, 10291 { &hf_rrlp_GANSSPositioningMethodTypes_standalone, 10292 { "standalone", "rrlp.GANSSPositioningMethodTypes.standalone", 10293 FT_BOOLEAN, 8, NULL, 0x20, 10294 NULL, HFILL }}, 10295 { &hf_rrlp_GANSSSignals_signal1, 10296 { "signal1", "rrlp.GANSSSignals.signal1", 10297 FT_BOOLEAN, 8, NULL, 0x80, 10298 NULL, HFILL }}, 10299 { &hf_rrlp_GANSSSignals_signal2, 10300 { "signal2", "rrlp.GANSSSignals.signal2", 10301 FT_BOOLEAN, 8, NULL, 0x40, 10302 NULL, HFILL }}, 10303 { &hf_rrlp_GANSSSignals_signal3, 10304 { "signal3", "rrlp.GANSSSignals.signal3", 10305 FT_BOOLEAN, 8, NULL, 0x20, 10306 NULL, HFILL }}, 10307 { &hf_rrlp_GANSSSignals_signal4, 10308 { "signal4", "rrlp.GANSSSignals.signal4", 10309 FT_BOOLEAN, 8, NULL, 0x10, 10310 NULL, HFILL }}, 10311 { &hf_rrlp_GANSSSignals_signal5, 10312 { "signal5", "rrlp.GANSSSignals.signal5", 10313 FT_BOOLEAN, 8, NULL, 0x08, 10314 NULL, HFILL }}, 10315 { &hf_rrlp_GANSSSignals_signal6, 10316 { "signal6", "rrlp.GANSSSignals.signal6", 10317 FT_BOOLEAN, 8, NULL, 0x04, 10318 NULL, HFILL }}, 10319 { &hf_rrlp_GANSSSignals_signal7, 10320 { "signal7", "rrlp.GANSSSignals.signal7", 10321 FT_BOOLEAN, 8, NULL, 0x02, 10322 NULL, HFILL }}, 10323 { &hf_rrlp_GANSSSignals_signal8, 10324 { "signal8", "rrlp.GANSSSignals.signal8", 10325 FT_BOOLEAN, 8, NULL, 0x01, 10326 NULL, HFILL }}, 10327 { &hf_rrlp_SBASID_waas, 10328 { "waas", "rrlp.SBASID.waas", 10329 FT_BOOLEAN, 8, NULL, 0x80, 10330 NULL, HFILL }}, 10331 { &hf_rrlp_SBASID_egnos, 10332 { "egnos", "rrlp.SBASID.egnos", 10333 FT_BOOLEAN, 8, NULL, 0x40, 10334 NULL, HFILL }}, 10335 { &hf_rrlp_SBASID_masas, 10336 { "masas", "rrlp.SBASID.masas", 10337 FT_BOOLEAN, 8, NULL, 0x20, 10338 NULL, HFILL }}, 10339 { &hf_rrlp_SBASID_gagan, 10340 { "gagan", "rrlp.SBASID.gagan", 10341 FT_BOOLEAN, 8, NULL, 0x10, 10342 NULL, HFILL }}, 10343 { &hf_rrlp_MultipleMeasurementSets_eotd, 10344 { "eotd", "rrlp.MultipleMeasurementSets.eotd", 10345 FT_BOOLEAN, 8, NULL, 0x80, 10346 NULL, HFILL }}, 10347 { &hf_rrlp_MultipleMeasurementSets_gps, 10348 { "gps", "rrlp.MultipleMeasurementSets.gps", 10349 FT_BOOLEAN, 8, NULL, 0x40, 10350 NULL, HFILL }}, 10351 { &hf_rrlp_MultipleMeasurementSets_ganss, 10352 { "ganss", "rrlp.MultipleMeasurementSets.ganss", 10353 FT_BOOLEAN, 8, NULL, 0x20, 10354 NULL, HFILL }}, 10355 { &hf_rrlp_GPSAssistance_almanac, 10356 { "almanac", "rrlp.GPSAssistance.almanac", 10357 FT_BOOLEAN, 8, NULL, 0x80, 10358 NULL, HFILL }}, 10359 { &hf_rrlp_GPSAssistance_uTCmodel, 10360 { "uTCmodel", "rrlp.GPSAssistance.uTCmodel", 10361 FT_BOOLEAN, 8, NULL, 0x40, 10362 NULL, HFILL }}, 10363 { &hf_rrlp_GPSAssistance_ionosphericModel, 10364 { "ionosphericModel", "rrlp.GPSAssistance.ionosphericModel", 10365 FT_BOOLEAN, 8, NULL, 0x20, 10366 NULL, HFILL }}, 10367 { &hf_rrlp_GPSAssistance_navigationmodel, 10368 { "navigationmodel", "rrlp.GPSAssistance.navigationmodel", 10369 FT_BOOLEAN, 8, NULL, 0x10, 10370 NULL, HFILL }}, 10371 { &hf_rrlp_GPSAssistance_dGPScorrections, 10372 { "dGPScorrections", "rrlp.GPSAssistance.dGPScorrections", 10373 FT_BOOLEAN, 8, NULL, 0x08, 10374 NULL, HFILL }}, 10375 { &hf_rrlp_GPSAssistance_referenceLocation, 10376 { "referenceLocation", "rrlp.GPSAssistance.referenceLocation", 10377 FT_BOOLEAN, 8, NULL, 0x04, 10378 NULL, HFILL }}, 10379 { &hf_rrlp_GPSAssistance_referenceTime, 10380 { "referenceTime", "rrlp.GPSAssistance.referenceTime", 10381 FT_BOOLEAN, 8, NULL, 0x02, 10382 NULL, HFILL }}, 10383 { &hf_rrlp_GPSAssistance_acquisitionAssistance, 10384 { "acquisitionAssistance", "rrlp.GPSAssistance.acquisitionAssistance", 10385 FT_BOOLEAN, 8, NULL, 0x01, 10386 NULL, HFILL }}, 10387 { &hf_rrlp_GPSAssistance_realTimeIntegrity, 10388 { "realTimeIntegrity", "rrlp.GPSAssistance.realTimeIntegrity", 10389 FT_BOOLEAN, 8, NULL, 0x80, 10390 NULL, HFILL }}, 10391 { &hf_rrlp_GPSAssistance_ephemerisExtension, 10392 { "ephemerisExtension", "rrlp.GPSAssistance.ephemerisExtension", 10393 FT_BOOLEAN, 8, NULL, 0x40, 10394 NULL, HFILL }}, 10395 { &hf_rrlp_GPSAssistance_ephemerisExtensionCheck, 10396 { "ephemerisExtensionCheck", "rrlp.GPSAssistance.ephemerisExtensionCheck", 10397 FT_BOOLEAN, 8, NULL, 0x20, 10398 NULL, HFILL }}, 10399 { &hf_rrlp_CommonGANSSAssistance_referenceTime, 10400 { "referenceTime", "rrlp.CommonGANSSAssistance.referenceTime", 10401 FT_BOOLEAN, 8, NULL, 0x80, 10402 NULL, HFILL }}, 10403 { &hf_rrlp_CommonGANSSAssistance_referenceLocation, 10404 { "referenceLocation", "rrlp.CommonGANSSAssistance.referenceLocation", 10405 FT_BOOLEAN, 8, NULL, 0x40, 10406 NULL, HFILL }}, 10407 { &hf_rrlp_CommonGANSSAssistance_spare_bit2, 10408 { "spare_bit2", "rrlp.CommonGANSSAssistance.spare.bit2", 10409 FT_BOOLEAN, 8, NULL, 0x20, 10410 NULL, HFILL }}, 10411 { &hf_rrlp_CommonGANSSAssistance_ionosphericModel, 10412 { "ionosphericModel", "rrlp.CommonGANSSAssistance.ionosphericModel", 10413 FT_BOOLEAN, 8, NULL, 0x10, 10414 NULL, HFILL }}, 10415 { &hf_rrlp_CommonGANSSAssistance_addIonosphericModel, 10416 { "addIonosphericModel", "rrlp.CommonGANSSAssistance.addIonosphericModel", 10417 FT_BOOLEAN, 8, NULL, 0x08, 10418 NULL, HFILL }}, 10419 { &hf_rrlp_CommonGANSSAssistance_earthOrientationParam, 10420 { "earthOrientationParam", "rrlp.CommonGANSSAssistance.earthOrientationParam", 10421 FT_BOOLEAN, 8, NULL, 0x04, 10422 NULL, HFILL }}, 10423 { &hf_rrlp_GANSSAssistance_realTimeIntegrity, 10424 { "realTimeIntegrity", "rrlp.GANSSAssistance.realTimeIntegrity", 10425 FT_BOOLEAN, 8, NULL, 0x80, 10426 NULL, HFILL }}, 10427 { &hf_rrlp_GANSSAssistance_differentialCorrections, 10428 { "differentialCorrections", "rrlp.GANSSAssistance.differentialCorrections", 10429 FT_BOOLEAN, 8, NULL, 0x40, 10430 NULL, HFILL }}, 10431 { &hf_rrlp_GANSSAssistance_almanac, 10432 { "almanac", "rrlp.GANSSAssistance.almanac", 10433 FT_BOOLEAN, 8, NULL, 0x20, 10434 NULL, HFILL }}, 10435 { &hf_rrlp_GANSSAssistance_referenceMeasurementInformation, 10436 { "referenceMeasurementInformation", "rrlp.GANSSAssistance.referenceMeasurementInformation", 10437 FT_BOOLEAN, 8, NULL, 0x10, 10438 NULL, HFILL }}, 10439 { &hf_rrlp_GANSSAssistance_navigationModel, 10440 { "navigationModel", "rrlp.GANSSAssistance.navigationModel", 10441 FT_BOOLEAN, 8, NULL, 0x08, 10442 NULL, HFILL }}, 10443 { &hf_rrlp_GANSSAssistance_timeModelGNSS_UTC, 10444 { "timeModelGNSS-UTC", "rrlp.GANSSAssistance.timeModelGNSS.UTC", 10445 FT_BOOLEAN, 8, NULL, 0x04, 10446 NULL, HFILL }}, 10447 { &hf_rrlp_GANSSAssistance_timeModelGNSS_GNSS, 10448 { "timeModelGNSS-GNSS", "rrlp.GANSSAssistance.timeModelGNSS.GNSS", 10449 FT_BOOLEAN, 8, NULL, 0x02, 10450 NULL, HFILL }}, 10451 { &hf_rrlp_GANSSAssistance_databitassistance, 10452 { "databitassistance", "rrlp.GANSSAssistance.databitassistance", 10453 FT_BOOLEAN, 8, NULL, 0x01, 10454 NULL, HFILL }}, 10455 { &hf_rrlp_GANSSAssistance_ephemerisExtension, 10456 { "ephemerisExtension", "rrlp.GANSSAssistance.ephemerisExtension", 10457 FT_BOOLEAN, 8, NULL, 0x80, 10458 NULL, HFILL }}, 10459 { &hf_rrlp_GANSSAssistance_ephemerisExtensionCheck, 10460 { "ephemerisExtensionCheck", "rrlp.GANSSAssistance.ephemerisExtensionCheck", 10461 FT_BOOLEAN, 8, NULL, 0x40, 10462 NULL, HFILL }}, 10463 { &hf_rrlp_GANSSAssistance_addUTCmodel, 10464 { "addUTCmodel", "rrlp.GANSSAssistance.addUTCmodel", 10465 FT_BOOLEAN, 8, NULL, 0x20, 10466 NULL, HFILL }}, 10467 { &hf_rrlp_GANSSAssistance_auxiliaryInformation, 10468 { "auxiliaryInformation", "rrlp.GANSSAssistance.auxiliaryInformation", 10469 FT_BOOLEAN, 8, NULL, 0x10, 10470 NULL, HFILL }}, 10471 { &hf_rrlp_GANSSModelID_model1, 10472 { "model1", "rrlp.GANSSModelID.model1", 10473 FT_BOOLEAN, 8, NULL, 0x80, 10474 NULL, HFILL }}, 10475 { &hf_rrlp_GANSSModelID_model2, 10476 { "model2", "rrlp.GANSSModelID.model2", 10477 FT_BOOLEAN, 8, NULL, 0x40, 10478 NULL, HFILL }}, 10479 { &hf_rrlp_GANSSModelID_model3, 10480 { "model3", "rrlp.GANSSModelID.model3", 10481 FT_BOOLEAN, 8, NULL, 0x20, 10482 NULL, HFILL }}, 10483 { &hf_rrlp_GANSSModelID_model4, 10484 { "model4", "rrlp.GANSSModelID.model4", 10485 FT_BOOLEAN, 8, NULL, 0x10, 10486 NULL, HFILL }}, 10487 { &hf_rrlp_GANSSModelID_model5, 10488 { "model5", "rrlp.GANSSModelID.model5", 10489 FT_BOOLEAN, 8, NULL, 0x08, 10490 NULL, HFILL }}, 10491 { &hf_rrlp_GANSSModelID_model6, 10492 { "model6", "rrlp.GANSSModelID.model6", 10493 FT_BOOLEAN, 8, NULL, 0x04, 10494 NULL, HFILL }}, 10495 { &hf_rrlp_GANSSModelID_model7, 10496 { "model7", "rrlp.GANSSModelID.model7", 10497 FT_BOOLEAN, 8, NULL, 0x02, 10498 NULL, HFILL }}, 10499 { &hf_rrlp_GANSSModelID_model8, 10500 { "model8", "rrlp.GANSSModelID.model8", 10501 FT_BOOLEAN, 8, NULL, 0x01, 10502 NULL, HFILL }}, 10503 10504 /*--- End of included file: packet-rrlp-hfarr.c ---*/ 10505 #line 62 "./asn1/rrlp/packet-rrlp-template.c" 10506 }; 10507 10508 /* List of subtrees */ 10509 static gint *ett[] = { 10510 &ett_rrlp, 10511 10512 /*--- Included file: packet-rrlp-ettarr.c ---*/ 10513 #line 1 "./asn1/rrlp/packet-rrlp-ettarr.c" 10514 &ett_rrlp_ExtensionContainer, 10515 &ett_rrlp_PrivateExtensionList, 10516 &ett_rrlp_PrivateExtension, 10517 &ett_rrlp_PCS_Extensions, 10518 &ett_rrlp_PDU, 10519 &ett_rrlp_RRLP_Component, 10520 &ett_rrlp_MsrPosition_Req, 10521 &ett_rrlp_MsrPosition_Rsp, 10522 &ett_rrlp_AssistanceData, 10523 &ett_rrlp_ProtocolError, 10524 &ett_rrlp_PosCapability_Req, 10525 &ett_rrlp_PosCapability_Rsp, 10526 &ett_rrlp_PositionInstruct, 10527 &ett_rrlp_MethodType, 10528 &ett_rrlp_AccuracyOpt, 10529 &ett_rrlp_ReferenceAssistData, 10530 &ett_rrlp_MsrAssistData, 10531 &ett_rrlp_SeqOfMsrAssistBTS, 10532 &ett_rrlp_MsrAssistBTS, 10533 &ett_rrlp_SystemInfoAssistData, 10534 &ett_rrlp_SeqOfSystemInfoAssistBTS, 10535 &ett_rrlp_SystemInfoAssistBTS, 10536 &ett_rrlp_AssistBTSData, 10537 &ett_rrlp_CalcAssistanceBTS, 10538 &ett_rrlp_ReferenceWGS84, 10539 &ett_rrlp_MultipleSets, 10540 &ett_rrlp_ReferenceIdentity, 10541 &ett_rrlp_SeqOfReferenceIdentityType, 10542 &ett_rrlp_ReferenceIdentityType, 10543 &ett_rrlp_BSICAndCarrier, 10544 &ett_rrlp_CellIDAndLAC, 10545 &ett_rrlp_OTD_MeasureInfo, 10546 &ett_rrlp_SeqOfOTD_MsrElementRest, 10547 &ett_rrlp_OTD_MsrElementFirst, 10548 &ett_rrlp_SeqOfOTD_FirstSetMsrs, 10549 &ett_rrlp_OTD_MsrElementRest, 10550 &ett_rrlp_SeqOfOTD_MsrsOfOtherSets, 10551 &ett_rrlp_TOA_MeasurementsOfRef, 10552 &ett_rrlp_OTD_MsrsOfOtherSets, 10553 &ett_rrlp_OTD_Measurement, 10554 &ett_rrlp_OTD_MeasurementWithID, 10555 &ett_rrlp_EOTDQuality, 10556 &ett_rrlp_NeighborIdentity, 10557 &ett_rrlp_MultiFrameCarrier, 10558 &ett_rrlp_LocationInfo, 10559 &ett_rrlp_GPS_MeasureInfo, 10560 &ett_rrlp_SeqOfGPS_MsrSetElement, 10561 &ett_rrlp_GPS_MsrSetElement, 10562 &ett_rrlp_SeqOfGPS_MsrElement, 10563 &ett_rrlp_GPS_MsrElement, 10564 &ett_rrlp_LocationError, 10565 &ett_rrlp_AdditionalAssistanceData, 10566 &ett_rrlp_GPS_AssistData, 10567 &ett_rrlp_ControlHeader, 10568 &ett_rrlp_ReferenceTime, 10569 &ett_rrlp_GPSTime, 10570 &ett_rrlp_GPSTOWAssist, 10571 &ett_rrlp_GPSTOWAssistElement, 10572 &ett_rrlp_GSMTime, 10573 &ett_rrlp_RefLocation, 10574 &ett_rrlp_DGPSCorrections, 10575 &ett_rrlp_SeqOfSatElement, 10576 &ett_rrlp_SatElement, 10577 &ett_rrlp_NavigationModel, 10578 &ett_rrlp_SeqOfNavModelElement, 10579 &ett_rrlp_NavModelElement, 10580 &ett_rrlp_SatStatus, 10581 &ett_rrlp_UncompressedEphemeris, 10582 &ett_rrlp_EphemerisSubframe1Reserved, 10583 &ett_rrlp_IonosphericModel, 10584 &ett_rrlp_UTCModel, 10585 &ett_rrlp_Almanac, 10586 &ett_rrlp_SeqOfAlmanacElement, 10587 &ett_rrlp_AlmanacElement, 10588 &ett_rrlp_AcquisAssist, 10589 &ett_rrlp_SeqOfAcquisElement, 10590 &ett_rrlp_TimeRelation, 10591 &ett_rrlp_AcquisElement, 10592 &ett_rrlp_AddionalDopplerFields, 10593 &ett_rrlp_AddionalAngleFields, 10594 &ett_rrlp_SeqOf_BadSatelliteSet, 10595 &ett_rrlp_Rel98_MsrPosition_Req_Extension, 10596 &ett_rrlp_Rel98_AssistanceData_Extension, 10597 &ett_rrlp_Rel98_Ext_ExpOTD, 10598 &ett_rrlp_MsrAssistData_R98_ExpOTD, 10599 &ett_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD, 10600 &ett_rrlp_MsrAssistBTS_R98_ExpOTD, 10601 &ett_rrlp_SystemInfoAssistData_R98_ExpOTD, 10602 &ett_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD, 10603 &ett_rrlp_SystemInfoAssistBTS_R98_ExpOTD, 10604 &ett_rrlp_AssistBTSData_R98_ExpOTD, 10605 &ett_rrlp_GPSTimeAssistanceMeasurements, 10606 &ett_rrlp_Rel_98_MsrPosition_Rsp_Extension, 10607 &ett_rrlp_T_rel_98_Ext_MeasureInfo, 10608 &ett_rrlp_OTD_MeasureInfo_R98_Ext, 10609 &ett_rrlp_OTD_MsrElementFirst_R98_Ext, 10610 &ett_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext, 10611 &ett_rrlp_Rel_5_MsrPosition_Rsp_Extension, 10612 &ett_rrlp_Extended_reference, 10613 &ett_rrlp_Rel5_MsrPosition_Req_Extension, 10614 &ett_rrlp_Rel5_AssistanceData_Extension, 10615 &ett_rrlp_Rel_5_ProtocolError_Extension, 10616 &ett_rrlp_Rel7_MsrPosition_Req_Extension, 10617 &ett_rrlp_GANSSPositioningMethod, 10618 &ett_rrlp_GANSS_AssistData, 10619 &ett_rrlp_GANSS_ControlHeader, 10620 &ett_rrlp_GANSSCommonAssistData, 10621 &ett_rrlp_SeqOfGANSSGenericAssistDataElement, 10622 &ett_rrlp_GANSSGenericAssistDataElement, 10623 &ett_rrlp_GANSSReferenceTime, 10624 &ett_rrlp_GANSSRefTimeInfo, 10625 &ett_rrlp_GANSSReferenceTime_R10_Ext, 10626 &ett_rrlp_GANSSTOD_GSMTimeAssociation, 10627 &ett_rrlp_GANSSRefLocation, 10628 &ett_rrlp_GANSSIonosphericModel, 10629 &ett_rrlp_GANSSIonosphereModel, 10630 &ett_rrlp_GANSSIonoStormFlags, 10631 &ett_rrlp_GANSSAddIonosphericModel, 10632 &ett_rrlp_GANSSEarthOrientParam, 10633 &ett_rrlp_SeqOfGANSSTimeModel, 10634 &ett_rrlp_GANSSTimeModelElement, 10635 &ett_rrlp_SeqOfGANSSTimeModel_R10_Ext, 10636 &ett_rrlp_GANSSTimeModelElement_R10_Ext, 10637 &ett_rrlp_GANSSDiffCorrections, 10638 &ett_rrlp_SeqOfSgnTypeElement, 10639 &ett_rrlp_SgnTypeElement, 10640 &ett_rrlp_SeqOfDGANSSSgnElement, 10641 &ett_rrlp_DGANSSSgnElement, 10642 &ett_rrlp_GANSSNavModel, 10643 &ett_rrlp_SeqOfGANSSSatelliteElement, 10644 &ett_rrlp_GANSSSatelliteElement, 10645 &ett_rrlp_GANSSOrbitModel, 10646 &ett_rrlp_NavModel_KeplerianSet, 10647 &ett_rrlp_NavModel_NAVKeplerianSet, 10648 &ett_rrlp_NavModel_CNAVKeplerianSet, 10649 &ett_rrlp_NavModel_GLONASSecef, 10650 &ett_rrlp_NavModel_SBASecef, 10651 &ett_rrlp_GANSSClockModel, 10652 &ett_rrlp_SeqOfStandardClockModelElement, 10653 &ett_rrlp_StandardClockModelElement, 10654 &ett_rrlp_NAVclockModel, 10655 &ett_rrlp_CNAVclockModel, 10656 &ett_rrlp_GLONASSclockModel, 10657 &ett_rrlp_SBASclockModel, 10658 &ett_rrlp_GANSSRealTimeIntegrity, 10659 &ett_rrlp_SeqOfBadSignalElement, 10660 &ett_rrlp_BadSignalElement, 10661 &ett_rrlp_GANSSDataBitAssist, 10662 &ett_rrlp_SeqOfGanssDataBitsElement, 10663 &ett_rrlp_GanssDataBitsElement, 10664 &ett_rrlp_Seq_OfGANSSDataBitsSgn, 10665 &ett_rrlp_GANSSDataBitsSgnElement, 10666 &ett_rrlp_SeqOf_GANSSDataBits, 10667 &ett_rrlp_GANSSRefMeasurementAssist, 10668 &ett_rrlp_SeqOfGANSSRefMeasurementElement, 10669 &ett_rrlp_GANSSRefMeasurementElement, 10670 &ett_rrlp_AdditionalDopplerFields, 10671 &ett_rrlp_GANSSRefMeasurementAssist_R10_Ext, 10672 &ett_rrlp_GANSSRefMeasurement_R10_Ext_Element, 10673 &ett_rrlp_GANSSAlmanacModel, 10674 &ett_rrlp_SeqOfGANSSAlmanacElement, 10675 &ett_rrlp_GANSSAlmanacElement, 10676 &ett_rrlp_Almanac_KeplerianSet, 10677 &ett_rrlp_Almanac_NAVKeplerianSet, 10678 &ett_rrlp_Almanac_ReducedKeplerianSet, 10679 &ett_rrlp_Almanac_MidiAlmanacSet, 10680 &ett_rrlp_Almanac_GlonassAlmanacSet, 10681 &ett_rrlp_Almanac_ECEFsbasAlmanacSet, 10682 &ett_rrlp_GANSSAlmanacModel_R10_Ext, 10683 &ett_rrlp_GANSSUTCModel, 10684 &ett_rrlp_GANSSEphemerisExtension, 10685 &ett_rrlp_GANSSEphemerisExtensionHeader, 10686 &ett_rrlp_GANSSEphemerisExtensionTime, 10687 &ett_rrlp_ReferenceNavModel, 10688 &ett_rrlp_SeqOfGANSSRefOrbit, 10689 &ett_rrlp_GANSSReferenceOrbit, 10690 &ett_rrlp_GANSSEphemerisDeltaMatrix, 10691 &ett_rrlp_GANSSEphemerisDeltaEpoch, 10692 &ett_rrlp_GANSSDeltaEpochHeader, 10693 &ett_rrlp_GANSSDeltaElementList, 10694 &ett_rrlp_GANSSEphemerisDeltaBitSizes, 10695 &ett_rrlp_GANSSEphemerisDeltaScales, 10696 &ett_rrlp_GANSSEphemerisExtensionCheck, 10697 &ett_rrlp_GANSSSatEventsInfo, 10698 &ett_rrlp_GANSSAddUTCModel, 10699 &ett_rrlp_UTCmodelSet2, 10700 &ett_rrlp_UTCmodelSet3, 10701 &ett_rrlp_UTCmodelSet4, 10702 &ett_rrlp_GANSSAuxiliaryInformation, 10703 &ett_rrlp_GANSS_ID1, 10704 &ett_rrlp_GANSS_ID1_element, 10705 &ett_rrlp_GANSS_ID3, 10706 &ett_rrlp_GANSS_ID3_element, 10707 &ett_rrlp_GANSSDiffCorrectionsValidityPeriod, 10708 &ett_rrlp_DGANSSExtensionSgnTypeElement, 10709 &ett_rrlp_SeqOfDGANSSExtensionSgnElement, 10710 &ett_rrlp_DGANSSExtensionSgnElement, 10711 &ett_rrlp_Add_GPS_AssistData, 10712 &ett_rrlp_Add_GPS_ControlHeader, 10713 &ett_rrlp_GPSClockModel, 10714 &ett_rrlp_GPSEphemerisExtension, 10715 &ett_rrlp_GPSEphemerisExtensionHeader, 10716 &ett_rrlp_GPSEphemerisExtensionTime, 10717 &ett_rrlp_SeqOfGPSRefOrbit, 10718 &ett_rrlp_GPSReferenceOrbit, 10719 &ett_rrlp_GPSEphemerisDeltaMatrix, 10720 &ett_rrlp_GPSEphemerisDeltaEpoch, 10721 &ett_rrlp_GPSDeltaEpochHeader, 10722 &ett_rrlp_GPSDeltaElementList, 10723 &ett_rrlp_GPSEphemerisDeltaBitSizes, 10724 &ett_rrlp_GPSEphemerisDeltaScales, 10725 &ett_rrlp_GPSEphemerisExtensionCheck, 10726 &ett_rrlp_GPSSatEventsInfo, 10727 &ett_rrlp_DGPSCorrectionsValidityPeriod, 10728 &ett_rrlp_DGPSExtensionSatElement, 10729 &ett_rrlp_GPSReferenceTime_R10_Ext, 10730 &ett_rrlp_GPSAcquisAssist_R10_Ext, 10731 &ett_rrlp_GPSAcquisAssist_R10_Ext_Element, 10732 &ett_rrlp_GPSAlmanac_R10_Ext, 10733 &ett_rrlp_Rel_7_MsrPosition_Rsp_Extension, 10734 &ett_rrlp_GANSSLocationInfo, 10735 &ett_rrlp_PositionData, 10736 &ett_rrlp_ReferenceFrame, 10737 &ett_rrlp_GANSSMeasureInfo, 10738 &ett_rrlp_SeqOfGANSS_MsrSetElement, 10739 &ett_rrlp_GANSS_MsrSetElement, 10740 &ett_rrlp_SeqOfGANSS_MsrElement, 10741 &ett_rrlp_GANSS_MsrElement, 10742 &ett_rrlp_SeqOfGANSS_SgnTypeElement, 10743 &ett_rrlp_GANSS_SgnTypeElement, 10744 &ett_rrlp_SeqOfGANSS_SgnElement, 10745 &ett_rrlp_GANSS_SgnElement, 10746 &ett_rrlp_Rel7_AssistanceData_Extension, 10747 &ett_rrlp_PosCapabilities, 10748 &ett_rrlp_NonGANSSPositionMethods, 10749 &ett_rrlp_GANSSPositionMethods, 10750 &ett_rrlp_GANSSPositionMethod, 10751 &ett_rrlp_GANSSPositioningMethodTypes, 10752 &ett_rrlp_GANSSSignals, 10753 &ett_rrlp_SBASID, 10754 &ett_rrlp_MultipleMeasurementSets, 10755 &ett_rrlp_AssistanceSupported, 10756 &ett_rrlp_GPSAssistance, 10757 &ett_rrlp_GANSSAssistanceSet, 10758 &ett_rrlp_CommonGANSSAssistance, 10759 &ett_rrlp_SpecificGANSSAssistance, 10760 &ett_rrlp_GANSSAssistanceForOneGANSS, 10761 &ett_rrlp_GANSSAssistance, 10762 &ett_rrlp_GANSSAdditionalAssistanceChoices, 10763 &ett_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS, 10764 &ett_rrlp_GANSSModelID, 10765 &ett_rrlp_AssistanceNeeded, 10766 10767 /*--- End of included file: packet-rrlp-ettarr.c ---*/ 10768 #line 68 "./asn1/rrlp/packet-rrlp-template.c" 10769 }; 10770 10771 10772 /* Register protocol */ 10773 proto_rrlp = proto_register_protocol(PNAME, PSNAME, PFNAME); 10774 register_dissector("rrlp", dissect_PDU_PDU, proto_rrlp); 10775 10776 /* Register fields and subtrees */ 10777 proto_register_field_array(proto_rrlp, hf, array_length(hf)); 10778 proto_register_subtree_array(ett, array_length(ett)); 10779 10780 10781 } 10782 10783 10784 /*--- proto_reg_handoff_rrlp ---------------------------------------*/ 10785 void 10786 proto_reg_handoff_rrlp(void) 10787 { 10788 10789 } 10790 10791 10792