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