Coverage Report

Created: 2026-08-14 06:45

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/wireshark/epan/dissectors/packet-rrlp.c
Line
Count
Source
1
/* Do not modify this file. Changes will be overwritten.                      */
2
/* Generated automatically by the ASN.1 to Wireshark dissector compiler       */
3
/* packet-rrlp.c                                                              */
4
/* asn2wrs.py -q -L -p rrlp -c ./rrlp.cnf -s ./packet-rrlp-template -D . -O ../.. ../gsm_map/MAP-ExtensionDataTypes.asn ../gsm_map/MAP-LCS-DataTypes.asn RRLP-Messages.asn RRLP-Components.asn */
5
6
/* packet-rrlp.c
7
 * Routines for 3GPP Radio Resource LCS Protocol (RRLP) packet dissection
8
 * Copyright 2006, Anders Broman <anders.broman@ericsson.com>
9
 *
10
 * Wireshark - Network traffic analyzer
11
 * By Gerald Combs <gerald@wireshark.org>
12
 * Copyright 1998 Gerald Combs
13
 *
14
 * SPDX-License-Identifier: GPL-2.0-or-later
15
 *
16
 * Ref 3GPP TS 44.031 version 18.0.0 Release 18
17
 * http://www.3gpp.org
18
 */
19
20
#include "config.h"
21
22
#include <epan/packet.h>
23
#include <epan/asn1.h>
24
#include <wsutil/array.h>
25
26
#include "packet-ber.h"
27
#include "packet-per.h"
28
#include "packet-gsm_a_common.h"
29
30
void proto_register_rrlp(void);
31
void proto_reg_handoff_rrlp(void);
32
33
/* Initialize the protocol and registered fields */
34
static int proto_rrlp;
35
36
37
static int hf_rrlp_PDU_PDU;                       /* PDU */
38
static int hf_rrlp_privateExtensionList;          /* PrivateExtensionList */
39
static int hf_rrlp_pcs_Extensions;                /* PCS_Extensions */
40
static int hf_rrlp_PrivateExtensionList_item;     /* PrivateExtension */
41
static int hf_rrlp_extId;                         /* OBJECT_IDENTIFIER */
42
static int hf_rrlp_extType;                       /* T_extType */
43
static int hf_rrlp_referenceNumber;               /* INTEGER_0_7 */
44
static int hf_rrlp_component;                     /* RRLP_Component */
45
static int hf_rrlp_msrPositionReq;                /* MsrPosition_Req */
46
static int hf_rrlp_msrPositionRsp;                /* MsrPosition_Rsp */
47
static int hf_rrlp_assistanceData;                /* AssistanceData */
48
static int hf_rrlp_assistanceDataAck;             /* NULL */
49
static int hf_rrlp_protocolError;                 /* ProtocolError */
50
static int hf_rrlp_posCapabilityReq;              /* PosCapability_Req */
51
static int hf_rrlp_posCapabilityRsp;              /* PosCapability_Rsp */
52
static int hf_rrlp_multilaterationOTDReq;         /* MultilaterationOTD_Req */
53
static int hf_rrlp_multilaterationOTDRsp;         /* MultilaterationOTD_Rsp */
54
static int hf_rrlp_posMTAReq;                     /* PosMTA_Req */
55
static int hf_rrlp_positionInstruct;              /* PositionInstruct */
56
static int hf_rrlp_referenceAssistData;           /* ReferenceAssistData */
57
static int hf_rrlp_msrAssistData;                 /* MsrAssistData */
58
static int hf_rrlp_systemInfoAssistData;          /* SystemInfoAssistData */
59
static int hf_rrlp_gps_AssistData;                /* GPS_AssistData */
60
static int hf_rrlp_extensionContainer;            /* ExtensionContainer */
61
static int hf_rrlp_rel98_MsrPosition_Req_extension;  /* Rel98_MsrPosition_Req_Extension */
62
static int hf_rrlp_rel5_MsrPosition_Req_extension;  /* Rel5_MsrPosition_Req_Extension */
63
static int hf_rrlp_rel7_MsrPosition_Req_extension;  /* Rel7_MsrPosition_Req_Extension */
64
static int hf_rrlp_multipleSets;                  /* MultipleSets */
65
static int hf_rrlp_referenceIdentity;             /* ReferenceIdentity */
66
static int hf_rrlp_otd_MeasureInfo;               /* OTD_MeasureInfo */
67
static int hf_rrlp_locationInfo;                  /* LocationInfo */
68
static int hf_rrlp_gps_MeasureInfo;               /* GPS_MeasureInfo */
69
static int hf_rrlp_locationError;                 /* LocationError */
70
static int hf_rrlp_rel_98_MsrPosition_Rsp_Extension;  /* Rel_98_MsrPosition_Rsp_Extension */
71
static int hf_rrlp_rel_5_MsrPosition_Rsp_Extension;  /* Rel_5_MsrPosition_Rsp_Extension */
72
static int hf_rrlp_rel_7_MsrPosition_Rsp_Extension;  /* Rel_7_MsrPosition_Rsp_Extension */
73
static int hf_rrlp_moreAssDataToBeSent;           /* MoreAssDataToBeSent */
74
static int hf_rrlp_rel98_AssistanceData_Extension;  /* Rel98_AssistanceData_Extension */
75
static int hf_rrlp_rel5_AssistanceData_Extension;  /* Rel5_AssistanceData_Extension */
76
static int hf_rrlp_rel7_AssistanceData_Extension;  /* Rel7_AssistanceData_Extension */
77
static int hf_rrlp_errorCause;                    /* ErrorCodes */
78
static int hf_rrlp_rel_5_ProtocolError_Extension;  /* Rel_5_ProtocolError_Extension */
79
static int hf_rrlp_extended_reference;            /* Extended_reference */
80
static int hf_rrlp_gANSSPositionMethods;          /* GANSSPositionMethods */
81
static int hf_rrlp_posCapabilities;               /* PosCapabilities */
82
static int hf_rrlp_assistanceSupported;           /* AssistanceSupported */
83
static int hf_rrlp_assistanceNeeded;              /* AssistanceNeeded */
84
static int hf_rrlp_target_Number_of_Cells;        /* INTEGER_0_7 */
85
static int hf_rrlp_requested_MS_Synchronization_Accuracy;  /* INTEGER_0_15 */
86
static int hf_rrlp_mta_Method;                    /* MTA_Method */
87
static int hf_rrlp_random_ID_Set;                 /* Random_ID_Set */
88
static int hf_rrlp_mpm_Timer;                     /* INTEGER_0_7 */
89
static int hf_rrlp_serving_cell;                  /* BOOLEAN */
90
static int hf_rrlp_co_sited_cells;                /* Co_Sited_Cells */
91
static int hf_rrlp_cell_Set1;                     /* Cell_Set */
92
static int hf_rrlp_cell_Set2;                     /* Cell_Set */
93
static int hf_rrlp_cell_Set3;                     /* Cell_Set */
94
static int hf_rrlp_cell_Set4;                     /* Cell_Set */
95
static int hf_rrlp_cell_Set5;                     /* Cell_Set */
96
static int hf_rrlp_cell_Set6;                     /* Cell_Set */
97
static int hf_rrlp_cell_Set7;                     /* Cell_Set */
98
static int hf_rrlp_cell_Set8;                     /* Cell_Set */
99
static int hf_rrlp_mta_security;                  /* MTA_Security */
100
static int hf_rrlp_targetNumOTDMeasurements;      /* INTEGER */
101
static int hf_rrlp_requiredDLSyncAccuracy;        /* INTEGER */
102
static int hf_rrlp_neighbourCellSets;             /* CellSets */
103
static int hf_rrlp_servingCellSet;                /* CellSet */
104
static int hf_rrlp_servingCellDLAccuracy;         /* INTEGER_1_16 */
105
static int hf_rrlp_oTDMeasurementResults;         /* OTDMeasurementResults */
106
static int hf_rrlp_rXLEVMeasurementResults;       /* RXLEVMeasurementResults */
107
static int hf_rrlp_methodType;                    /* MethodType */
108
static int hf_rrlp_positionMethod;                /* PositionMethod */
109
static int hf_rrlp_measureResponseTime;           /* MeasureResponseTime */
110
static int hf_rrlp_useMultipleSets;               /* UseMultipleSets */
111
static int hf_rrlp_environmentCharacter;          /* EnvironmentCharacter */
112
static int hf_rrlp_msAssisted;                    /* AccuracyOpt */
113
static int hf_rrlp_msBased;                       /* Accuracy */
114
static int hf_rrlp_msBasedPref;                   /* Accuracy */
115
static int hf_rrlp_msAssistedPref;                /* Accuracy */
116
static int hf_rrlp_accuracy;                      /* Accuracy */
117
static int hf_rrlp_bcchCarrier;                   /* BCCHCarrier */
118
static int hf_rrlp_bsic;                          /* BSIC */
119
static int hf_rrlp_timeSlotScheme;                /* TimeSlotScheme */
120
static int hf_rrlp_btsPosition;                   /* BTSPosition */
121
static int hf_rrlp_msrAssistList;                 /* SeqOfMsrAssistBTS */
122
static int hf_rrlp_SeqOfMsrAssistBTS_item;        /* MsrAssistBTS */
123
static int hf_rrlp_multiFrameOffset;              /* MultiFrameOffset */
124
static int hf_rrlp_roughRTD;                      /* RoughRTD */
125
static int hf_rrlp_calcAssistanceBTS;             /* CalcAssistanceBTS */
126
static int hf_rrlp_systemInfoAssistList;          /* SeqOfSystemInfoAssistBTS */
127
static int hf_rrlp_SeqOfSystemInfoAssistBTS_item;  /* SystemInfoAssistBTS */
128
static int hf_rrlp_notPresent;                    /* NULL */
129
static int hf_rrlp_present;                       /* AssistBTSData */
130
static int hf_rrlp_fineRTD;                       /* FineRTD */
131
static int hf_rrlp_referenceWGS84;                /* ReferenceWGS84 */
132
static int hf_rrlp_relativeNorth;                 /* RelDistance */
133
static int hf_rrlp_relativeEast;                  /* RelDistance */
134
static int hf_rrlp_relativeAlt;                   /* RelativeAlt */
135
static int hf_rrlp_nbrOfSets;                     /* INTEGER_2_3 */
136
static int hf_rrlp_nbrOfReferenceBTSs;            /* INTEGER_1_3 */
137
static int hf_rrlp_referenceRelation;             /* ReferenceRelation */
138
static int hf_rrlp_refBTSList;                    /* SeqOfReferenceIdentityType */
139
static int hf_rrlp_SeqOfReferenceIdentityType_item;  /* ReferenceIdentityType */
140
static int hf_rrlp_bsicAndCarrier;                /* BSICAndCarrier */
141
static int hf_rrlp_ci;                            /* CellID */
142
static int hf_rrlp_requestIndex;                  /* RequestIndex */
143
static int hf_rrlp_systemInfoIndex;               /* SystemInfoIndex */
144
static int hf_rrlp_ciAndLAC;                      /* CellIDAndLAC */
145
static int hf_rrlp_carrier;                       /* BCCHCarrier */
146
static int hf_rrlp_referenceLAC;                  /* LAC */
147
static int hf_rrlp_referenceCI;                   /* CellID */
148
static int hf_rrlp_otdMsrFirstSets;               /* OTD_MsrElementFirst */
149
static int hf_rrlp_otdMsrRestSets;                /* SeqOfOTD_MsrElementRest */
150
static int hf_rrlp_SeqOfOTD_MsrElementRest_item;  /* OTD_MsrElementRest */
151
static int hf_rrlp_refFrameNumber;                /* INTEGER_0_42431 */
152
static int hf_rrlp_referenceTimeSlot;             /* ModuloTimeSlot */
153
static int hf_rrlp_toaMeasurementsOfRef;          /* TOA_MeasurementsOfRef */
154
static int hf_rrlp_stdResolution;                 /* StdResolution */
155
static int hf_rrlp_taCorrection;                  /* INTEGER_0_960 */
156
static int hf_rrlp_otd_FirstSetMsrs;              /* SeqOfOTD_FirstSetMsrs */
157
static int hf_rrlp_SeqOfOTD_FirstSetMsrs_item;    /* OTD_FirstSetMsrs */
158
static int hf_rrlp_otd_MsrsOfOtherSets;           /* SeqOfOTD_MsrsOfOtherSets */
159
static int hf_rrlp_SeqOfOTD_MsrsOfOtherSets_item;  /* OTD_MsrsOfOtherSets */
160
static int hf_rrlp_refQuality;                    /* RefQuality */
161
static int hf_rrlp_numOfMeasurements;             /* NumOfMeasurements */
162
static int hf_rrlp_identityNotPresent;            /* OTD_Measurement */
163
static int hf_rrlp_identityPresent;               /* OTD_MeasurementWithID */
164
static int hf_rrlp_nborTimeSlot;                  /* ModuloTimeSlot */
165
static int hf_rrlp_eotdQuality;                   /* EOTDQuality */
166
static int hf_rrlp_otdValue;                      /* OTDValue */
167
static int hf_rrlp_neighborIdentity;              /* NeighborIdentity */
168
static int hf_rrlp_nbrOfMeasurements;             /* INTEGER_0_7 */
169
static int hf_rrlp_stdOfEOTD;                     /* INTEGER_0_31 */
170
static int hf_rrlp_multiFrameCarrier;             /* MultiFrameCarrier */
171
static int hf_rrlp_refFrame;                      /* INTEGER_0_65535 */
172
static int hf_rrlp_gpsTOW;                        /* INTEGER_0_14399999 */
173
static int hf_rrlp_fixType;                       /* FixType */
174
static int hf_rrlp_posEstimate;                   /* Ext_GeographicalInformation */
175
static int hf_rrlp_gpsMsrSetList;                 /* SeqOfGPS_MsrSetElement */
176
static int hf_rrlp_SeqOfGPS_MsrSetElement_item;   /* GPS_MsrSetElement */
177
static int hf_rrlp_gpsTOW_01;                     /* GPSTOW24b */
178
static int hf_rrlp_gps_msrList;                   /* SeqOfGPS_MsrElement */
179
static int hf_rrlp_SeqOfGPS_MsrElement_item;      /* GPS_MsrElement */
180
static int hf_rrlp_satelliteID;                   /* SatelliteID */
181
static int hf_rrlp_cNo;                           /* INTEGER_0_63 */
182
static int hf_rrlp_doppler;                       /* INTEGER_M32768_32767 */
183
static int hf_rrlp_wholeChips;                    /* INTEGER_0_1022 */
184
static int hf_rrlp_fracChips;                     /* INTEGER_0_1024 */
185
static int hf_rrlp_mpathIndic;                    /* MpathIndic */
186
static int hf_rrlp_pseuRangeRMSErr;               /* INTEGER_0_63 */
187
static int hf_rrlp_locErrorReason;                /* LocErrorReason */
188
static int hf_rrlp_additionalAssistanceData;      /* AdditionalAssistanceData */
189
static int hf_rrlp_gpsAssistanceData;             /* GPSAssistanceData */
190
static int hf_rrlp_ganssAssistanceData;           /* GANSSAssistanceData */
191
static int hf_rrlp_controlHeader;                 /* ControlHeader */
192
static int hf_rrlp_referenceTime;                 /* ReferenceTime */
193
static int hf_rrlp_refLocation;                   /* RefLocation */
194
static int hf_rrlp_dgpsCorrections;               /* DGPSCorrections */
195
static int hf_rrlp_navigationModel;               /* NavigationModel */
196
static int hf_rrlp_ionosphericModel;              /* IonosphericModel */
197
static int hf_rrlp_utcModel;                      /* UTCModel */
198
static int hf_rrlp_almanac;                       /* Almanac */
199
static int hf_rrlp_acquisAssist;                  /* AcquisAssist */
200
static int hf_rrlp_realTimeIntegrity;             /* SeqOf_BadSatelliteSet */
201
static int hf_rrlp_gpsTime;                       /* GPSTime */
202
static int hf_rrlp_gsmTime;                       /* GSMTime */
203
static int hf_rrlp_gpsTowAssist;                  /* GPSTOWAssist */
204
static int hf_rrlp_gpsTOW23b;                     /* GPSTOW23b */
205
static int hf_rrlp_gpsWeek;                       /* GPSWeek */
206
static int hf_rrlp_GPSTOWAssist_item;             /* GPSTOWAssistElement */
207
static int hf_rrlp_tlmWord;                       /* TLMWord */
208
static int hf_rrlp_antiSpoof;                     /* AntiSpoofFlag */
209
static int hf_rrlp_alert;                         /* AlertFlag */
210
static int hf_rrlp_tlmRsvdBits;                   /* TLMReservedBits */
211
static int hf_rrlp_frameNumber;                   /* FrameNumber */
212
static int hf_rrlp_timeSlot;                      /* TimeSlot */
213
static int hf_rrlp_bitNumber;                     /* BitNumber */
214
static int hf_rrlp_threeDLocation;                /* Ext_GeographicalInformation */
215
static int hf_rrlp_gpsTOW_02;                     /* INTEGER_0_604799 */
216
static int hf_rrlp_status;                        /* INTEGER_0_7 */
217
static int hf_rrlp_satList;                       /* SeqOfSatElement */
218
static int hf_rrlp_SeqOfSatElement_item;          /* SatElement */
219
static int hf_rrlp_iode;                          /* INTEGER_0_239 */
220
static int hf_rrlp_udre;                          /* INTEGER_0_3 */
221
static int hf_rrlp_pseudoRangeCor;                /* INTEGER_M2047_2047 */
222
static int hf_rrlp_rangeRateCor;                  /* INTEGER_M127_127 */
223
static int hf_rrlp_deltaPseudoRangeCor2;          /* INTEGER_M127_127 */
224
static int hf_rrlp_deltaRangeRateCor2;            /* INTEGER_M7_7 */
225
static int hf_rrlp_deltaPseudoRangeCor3;          /* INTEGER_M127_127 */
226
static int hf_rrlp_deltaRangeRateCor3;            /* INTEGER_M7_7 */
227
static int hf_rrlp_navModelList;                  /* SeqOfNavModelElement */
228
static int hf_rrlp_SeqOfNavModelElement_item;     /* NavModelElement */
229
static int hf_rrlp_satStatus;                     /* SatStatus */
230
static int hf_rrlp_newSatelliteAndModelUC;        /* UncompressedEphemeris */
231
static int hf_rrlp_oldSatelliteAndModel;          /* NULL */
232
static int hf_rrlp_newNaviModelUC;                /* UncompressedEphemeris */
233
static int hf_rrlp_ephemCodeOnL2;                 /* INTEGER_0_3 */
234
static int hf_rrlp_ephemURA;                      /* INTEGER_0_15 */
235
static int hf_rrlp_ephemSVhealth;                 /* INTEGER_0_63 */
236
static int hf_rrlp_ephemIODC;                     /* INTEGER_0_1023 */
237
static int hf_rrlp_ephemL2Pflag;                  /* INTEGER_0_1 */
238
static int hf_rrlp_ephemSF1Rsvd;                  /* EphemerisSubframe1Reserved */
239
static int hf_rrlp_ephemTgd;                      /* INTEGER_M128_127 */
240
static int hf_rrlp_ephemToc;                      /* INTEGER_0_37799 */
241
static int hf_rrlp_ephemAF2;                      /* INTEGER_M128_127 */
242
static int hf_rrlp_ephemAF1;                      /* INTEGER_M32768_32767 */
243
static int hf_rrlp_ephemAF0;                      /* INTEGER_M2097152_2097151 */
244
static int hf_rrlp_ephemCrs;                      /* INTEGER_M32768_32767 */
245
static int hf_rrlp_ephemDeltaN;                   /* INTEGER_M32768_32767 */
246
static int hf_rrlp_ephemM0;                       /* INTEGER_M2147483648_2147483647 */
247
static int hf_rrlp_ephemCuc;                      /* INTEGER_M32768_32767 */
248
static int hf_rrlp_ephemE;                        /* INTEGER_0_4294967295 */
249
static int hf_rrlp_ephemCus;                      /* INTEGER_M32768_32767 */
250
static int hf_rrlp_ephemAPowerHalf;               /* INTEGER_0_4294967295 */
251
static int hf_rrlp_ephemToe;                      /* INTEGER_0_37799 */
252
static int hf_rrlp_ephemFitFlag;                  /* INTEGER_0_1 */
253
static int hf_rrlp_ephemAODA;                     /* INTEGER_0_31 */
254
static int hf_rrlp_ephemCic;                      /* INTEGER_M32768_32767 */
255
static int hf_rrlp_ephemOmegaA0;                  /* INTEGER_M2147483648_2147483647 */
256
static int hf_rrlp_ephemCis;                      /* INTEGER_M32768_32767 */
257
static int hf_rrlp_ephemI0;                       /* INTEGER_M2147483648_2147483647 */
258
static int hf_rrlp_ephemCrc;                      /* INTEGER_M32768_32767 */
259
static int hf_rrlp_ephemW;                        /* INTEGER_M2147483648_2147483647 */
260
static int hf_rrlp_ephemOmegaADot;                /* INTEGER_M8388608_8388607 */
261
static int hf_rrlp_ephemIDot;                     /* INTEGER_M8192_8191 */
262
static int hf_rrlp_reserved1;                     /* INTEGER_0_8388607 */
263
static int hf_rrlp_reserved2;                     /* INTEGER_0_16777215 */
264
static int hf_rrlp_reserved3;                     /* INTEGER_0_16777215 */
265
static int hf_rrlp_reserved4;                     /* INTEGER_0_65535 */
266
static int hf_rrlp_alfa0;                         /* INTEGER_M128_127 */
267
static int hf_rrlp_alfa1;                         /* INTEGER_M128_127 */
268
static int hf_rrlp_alfa2;                         /* INTEGER_M128_127 */
269
static int hf_rrlp_alfa3;                         /* INTEGER_M128_127 */
270
static int hf_rrlp_beta0;                         /* INTEGER_M128_127 */
271
static int hf_rrlp_beta1;                         /* INTEGER_M128_127 */
272
static int hf_rrlp_beta2;                         /* INTEGER_M128_127 */
273
static int hf_rrlp_beta3;                         /* INTEGER_M128_127 */
274
static int hf_rrlp_utcA1;                         /* INTEGER_M8388608_8388607 */
275
static int hf_rrlp_utcA0;                         /* INTEGER_M2147483648_2147483647 */
276
static int hf_rrlp_utcTot;                        /* INTEGER_0_255 */
277
static int hf_rrlp_utcWNt;                        /* INTEGER_0_255 */
278
static int hf_rrlp_utcDeltaTls;                   /* INTEGER_M128_127 */
279
static int hf_rrlp_utcWNlsf;                      /* INTEGER_0_255 */
280
static int hf_rrlp_utcDN;                         /* INTEGER_M128_127 */
281
static int hf_rrlp_utcDeltaTlsf;                  /* INTEGER_M128_127 */
282
static int hf_rrlp_alamanacWNa;                   /* INTEGER_0_255 */
283
static int hf_rrlp_almanacList;                   /* SeqOfAlmanacElement */
284
static int hf_rrlp_SeqOfAlmanacElement_item;      /* AlmanacElement */
285
static int hf_rrlp_almanacE;                      /* INTEGER_0_65535 */
286
static int hf_rrlp_alamanacToa;                   /* INTEGER_0_255 */
287
static int hf_rrlp_almanacKsii;                   /* INTEGER_M32768_32767 */
288
static int hf_rrlp_almanacOmegaDot;               /* INTEGER_M32768_32767 */
289
static int hf_rrlp_almanacSVhealth;               /* INTEGER_0_255 */
290
static int hf_rrlp_almanacAPowerHalf;             /* INTEGER_0_16777215 */
291
static int hf_rrlp_almanacOmega0;                 /* INTEGER_M8388608_8388607 */
292
static int hf_rrlp_almanacW;                      /* INTEGER_M8388608_8388607 */
293
static int hf_rrlp_almanacM0;                     /* INTEGER_M8388608_8388607 */
294
static int hf_rrlp_almanacAF0;                    /* INTEGER_M1024_1023 */
295
static int hf_rrlp_almanacAF1;                    /* INTEGER_M1024_1023 */
296
static int hf_rrlp_timeRelation;                  /* TimeRelation */
297
static int hf_rrlp_acquisList;                    /* SeqOfAcquisElement */
298
static int hf_rrlp_SeqOfAcquisElement_item;       /* AcquisElement */
299
static int hf_rrlp_gpsTOW_03;                     /* GPSTOW23b */
300
static int hf_rrlp_svid;                          /* SatelliteID */
301
static int hf_rrlp_doppler0;                      /* INTEGER_M2048_2047 */
302
static int hf_rrlp_addionalDoppler;               /* AddionalDopplerFields */
303
static int hf_rrlp_codePhase;                     /* INTEGER_0_1022 */
304
static int hf_rrlp_intCodePhase;                  /* INTEGER_0_19 */
305
static int hf_rrlp_gpsBitNumber;                  /* INTEGER_0_3 */
306
static int hf_rrlp_codePhaseSearchWindow;         /* INTEGER_0_15 */
307
static int hf_rrlp_addionalAngle;                 /* AddionalAngleFields */
308
static int hf_rrlp_doppler1;                      /* INTEGER_0_63 */
309
static int hf_rrlp_dopplerUncertainty;            /* INTEGER_0_7 */
310
static int hf_rrlp_azimuth;                       /* INTEGER_0_31 */
311
static int hf_rrlp_elevation;                     /* INTEGER_0_7 */
312
static int hf_rrlp_SeqOf_BadSatelliteSet_item;    /* SatelliteID */
313
static int hf_rrlp_rel98_Ext_ExpOTD;              /* Rel98_Ext_ExpOTD */
314
static int hf_rrlp_gpsTimeAssistanceMeasurementRequest;  /* NULL */
315
static int hf_rrlp_gpsReferenceTimeUncertainty;   /* GPSReferenceTimeUncertainty */
316
static int hf_rrlp_msrAssistData_R98_ExpOTD;      /* MsrAssistData_R98_ExpOTD */
317
static int hf_rrlp_systemInfoAssistData_R98_ExpOTD;  /* SystemInfoAssistData_R98_ExpOTD */
318
static int hf_rrlp_msrAssistList_R98_ExpOTD;      /* SeqOfMsrAssistBTS_R98_ExpOTD */
319
static int hf_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD_item;  /* MsrAssistBTS_R98_ExpOTD */
320
static int hf_rrlp_expectedOTD;                   /* ExpectedOTD */
321
static int hf_rrlp_expOTDUncertainty;             /* ExpOTDUncertainty */
322
static int hf_rrlp_systemInfoAssistListR98_ExpOTD;  /* SeqOfSystemInfoAssistBTS_R98_ExpOTD */
323
static int hf_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD_item;  /* SystemInfoAssistBTS_R98_ExpOTD */
324
static int hf_rrlp_present_01;                    /* AssistBTSData_R98_ExpOTD */
325
static int hf_rrlp_expOTDuncertainty;             /* ExpOTDUncertainty */
326
static int hf_rrlp_referenceFrameMSB;             /* INTEGER_0_63 */
327
static int hf_rrlp_gpsTowSubms;                   /* INTEGER_0_9999 */
328
static int hf_rrlp_deltaTow;                      /* INTEGER_0_127 */
329
static int hf_rrlp_rel_98_Ext_MeasureInfo;        /* T_rel_98_Ext_MeasureInfo */
330
static int hf_rrlp_otd_MeasureInfo_R98_Ext;       /* OTD_MeasureInfo_R98_Ext */
331
static int hf_rrlp_timeAssistanceMeasurements;    /* GPSTimeAssistanceMeasurements */
332
static int hf_rrlp_otdMsrFirstSets_R98_Ext;       /* OTD_MsrElementFirst_R98_Ext */
333
static int hf_rrlp_otd_FirstSetMsrs_R98_Ext;      /* SeqOfOTD_FirstSetMsrs_R98_Ext */
334
static int hf_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext_item;  /* OTD_FirstSetMsrs */
335
static int hf_rrlp_otd_MeasureInfo_5_Ext;         /* OTD_MeasureInfo_5_Ext */
336
static int hf_rrlp_ulPseudoSegInd;                /* UlPseudoSegInd */
337
static int hf_rrlp_smlc_code;                     /* INTEGER_0_63 */
338
static int hf_rrlp_transaction_ID;                /* INTEGER_0_262143 */
339
static int hf_rrlp_velocityRequested;             /* NULL */
340
static int hf_rrlp_ganssPositionMethod;           /* GANSSPositioningMethod */
341
static int hf_rrlp_ganss_AssistData;              /* GANSS_AssistData */
342
static int hf_rrlp_ganssCarrierPhaseMeasurementRequest;  /* NULL */
343
static int hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest;  /* NULL */
344
static int hf_rrlp_requiredResponseTime;          /* RequiredResponseTime */
345
static int hf_rrlp_add_GPS_AssistData;            /* Add_GPS_AssistData */
346
static int hf_rrlp_ganssMultiFreqMeasurementRequest;  /* NULL */
347
static int hf_rrlp_ganss_controlHeader;           /* GANSS_ControlHeader */
348
static int hf_rrlp_ganssCommonAssistData;         /* GANSSCommonAssistData */
349
static int hf_rrlp_ganssGenericAssistDataList;    /* SeqOfGANSSGenericAssistDataElement */
350
static int hf_rrlp_ganssReferenceTime;            /* GANSSReferenceTime */
351
static int hf_rrlp_ganssRefLocation;              /* GANSSRefLocation */
352
static int hf_rrlp_ganssIonosphericModel;         /* GANSSIonosphericModel */
353
static int hf_rrlp_ganssAddIonosphericModel;      /* GANSSAddIonosphericModel */
354
static int hf_rrlp_ganssEarthOrientParam;         /* GANSSEarthOrientParam */
355
static int hf_rrlp_ganssReferenceTime_R10_Ext;    /* GANSSReferenceTime_R10_Ext */
356
static int hf_rrlp_SeqOfGANSSGenericAssistDataElement_item;  /* GANSSGenericAssistDataElement */
357
static int hf_rrlp_ganssID;                       /* INTEGER_0_7 */
358
static int hf_rrlp_ganssTimeModel;                /* SeqOfGANSSTimeModel */
359
static int hf_rrlp_ganssDiffCorrections;          /* GANSSDiffCorrections */
360
static int hf_rrlp_ganssNavigationModel;          /* GANSSNavModel */
361
static int hf_rrlp_ganssRealTimeIntegrity;        /* GANSSRealTimeIntegrity */
362
static int hf_rrlp_ganssDataBitAssist;            /* GANSSDataBitAssist */
363
static int hf_rrlp_ganssRefMeasurementAssist;     /* GANSSRefMeasurementAssist */
364
static int hf_rrlp_ganssAlmanacModel;             /* GANSSAlmanacModel */
365
static int hf_rrlp_ganssUTCModel;                 /* GANSSUTCModel */
366
static int hf_rrlp_ganssEphemerisExtension;       /* GANSSEphemerisExtension */
367
static int hf_rrlp_ganssEphemerisExtCheck;        /* GANSSEphemerisExtensionCheck */
368
static int hf_rrlp_sbasID_int;                    /* INTEGER_0_7 */
369
static int hf_rrlp_ganssAddUTCModel;              /* GANSSAddUTCModel */
370
static int hf_rrlp_ganssAuxiliaryInfo;            /* GANSSAuxiliaryInformation */
371
static int hf_rrlp_ganssDiffCorrectionsValidityPeriod;  /* GANSSDiffCorrectionsValidityPeriod */
372
static int hf_rrlp_ganssTimeModel_R10_Ext;        /* SeqOfGANSSTimeModel_R10_Ext */
373
static int hf_rrlp_ganssRefMeasurementAssist_R10_Ext;  /* GANSSRefMeasurementAssist_R10_Ext */
374
static int hf_rrlp_ganssAlmanacModel_R10_Ext;     /* GANSSAlmanacModel_R10_Ext */
375
static int hf_rrlp_ganssAlmanacModel_R12_Ext;     /* GANSSAlmanacModel_R12_Ext */
376
static int hf_rrlp_ganssRefMeasurementAssist_R12_Ext;  /* GANSSRefMeasurementAssist_R12_Ext */
377
static int hf_rrlp_bdsDifferentialCorrections_r12;  /* BDS_DiffCorrections_r12 */
378
static int hf_rrlp_bdsGridModel_r12;              /* BDS_GridModelParameter_r12 */
379
static int hf_rrlp_ganssRefTimeInfo;              /* GANSSRefTimeInfo */
380
static int hf_rrlp_ganssTOD_GSMTimeAssociation;   /* GANSSTOD_GSMTimeAssociation */
381
static int hf_rrlp_ganssDay;                      /* INTEGER_0_8191 */
382
static int hf_rrlp_ganssTOD;                      /* GANSSTOD */
383
static int hf_rrlp_ganssTODUncertainty;           /* GANSSTODUncertainty */
384
static int hf_rrlp_ganssTimeID;                   /* INTEGER_0_7 */
385
static int hf_rrlp_ganssDayCycleNumber;           /* INTEGER_0_7 */
386
static int hf_rrlp_frameDrift;                    /* FrameDrift */
387
static int hf_rrlp_ganssIonoModel;                /* GANSSIonosphereModel */
388
static int hf_rrlp_ganssIonoStormFlags;           /* GANSSIonoStormFlags */
389
static int hf_rrlp_ai0;                           /* INTEGER_0_2047 */
390
static int hf_rrlp_ai1;                           /* INTEGER_M1024_1023 */
391
static int hf_rrlp_ai2;                           /* INTEGER_M8192_8191 */
392
static int hf_rrlp_ionoStormFlag1;                /* INTEGER_0_1 */
393
static int hf_rrlp_ionoStormFlag2;                /* INTEGER_0_1 */
394
static int hf_rrlp_ionoStormFlag3;                /* INTEGER_0_1 */
395
static int hf_rrlp_ionoStormFlag4;                /* INTEGER_0_1 */
396
static int hf_rrlp_ionoStormFlag5;                /* INTEGER_0_1 */
397
static int hf_rrlp_dataID;                        /* BIT_STRING_SIZE_2 */
398
static int hf_rrlp_ionoModel;                     /* IonosphericModel */
399
static int hf_rrlp_teop;                          /* INTEGER_0_65535 */
400
static int hf_rrlp_pmX;                           /* INTEGER_M1048576_1048575 */
401
static int hf_rrlp_pmXdot;                        /* INTEGER_M16384_16383 */
402
static int hf_rrlp_pmY;                           /* INTEGER_M1048576_1048575 */
403
static int hf_rrlp_pmYdot;                        /* INTEGER_M16384_16383 */
404
static int hf_rrlp_deltaUT1;                      /* INTEGER_M1073741824_1073741823 */
405
static int hf_rrlp_deltaUT1dot;                   /* INTEGER_M262144_262143 */
406
static int hf_rrlp_SeqOfGANSSTimeModel_item;      /* GANSSTimeModelElement */
407
static int hf_rrlp_ganssTimeModelRefTime;         /* INTEGER_0_65535 */
408
static int hf_rrlp_tA0;                           /* TA0 */
409
static int hf_rrlp_tA1;                           /* TA1 */
410
static int hf_rrlp_tA2;                           /* TA2 */
411
static int hf_rrlp_gnssTOID;                      /* INTEGER_0_7 */
412
static int hf_rrlp_weekNumber;                    /* INTEGER_0_8191 */
413
static int hf_rrlp_SeqOfGANSSTimeModel_R10_Ext_item;  /* GANSSTimeModelElement_R10_Ext */
414
static int hf_rrlp_deltaT;                        /* INTEGER_M128_127 */
415
static int hf_rrlp_dganssRefTime;                 /* INTEGER_0_119 */
416
static int hf_rrlp_sgnTypeList;                   /* SeqOfSgnTypeElement */
417
static int hf_rrlp_SeqOfSgnTypeElement_item;      /* SgnTypeElement */
418
static int hf_rrlp_ganssSignalID;                 /* GANSSSignalID */
419
static int hf_rrlp_ganssStatusHealth;             /* INTEGER_0_7 */
420
static int hf_rrlp_dganssSgnList;                 /* SeqOfDGANSSSgnElement */
421
static int hf_rrlp_SeqOfDGANSSSgnElement_item;    /* DGANSSSgnElement */
422
static int hf_rrlp_svID;                          /* SVID */
423
static int hf_rrlp_iod;                           /* INTEGER_0_1023 */
424
static int hf_rrlp_nonBroadcastIndFlag;           /* INTEGER_0_1 */
425
static int hf_rrlp_ganssSatelliteList;            /* SeqOfGANSSSatelliteElement */
426
static int hf_rrlp_SeqOfGANSSSatelliteElement_item;  /* GANSSSatelliteElement */
427
static int hf_rrlp_svHealth;                      /* BIT_STRING_SIZE_5 */
428
static int hf_rrlp_ganssClockModel;               /* GANSSClockModel */
429
static int hf_rrlp_ganssOrbitModel;               /* GANSSOrbitModel */
430
static int hf_rrlp_svHealthMSB;                   /* BIT_STRING_SIZE_1 */
431
static int hf_rrlp_iodMSB;                        /* INTEGER_0_1 */
432
static int hf_rrlp_svHealthExt;                   /* BIT_STRING_SIZE_4 */
433
static int hf_rrlp_keplerianSet;                  /* NavModel_KeplerianSet */
434
static int hf_rrlp_navKeplerianSet;               /* NavModel_NAVKeplerianSet */
435
static int hf_rrlp_cnavKeplerianSet;              /* NavModel_CNAVKeplerianSet */
436
static int hf_rrlp_glonassECEF;                   /* NavModel_GLONASSecef */
437
static int hf_rrlp_sbasECEF;                      /* NavModel_SBASecef */
438
static int hf_rrlp_bdsKeplerianSet_r12;           /* NavModel_BDSKeplerianSet_r12 */
439
static int hf_rrlp_keplerToe;                     /* INTEGER_0_16383 */
440
static int hf_rrlp_keplerW;                       /* INTEGER_M2147483648_2147483647 */
441
static int hf_rrlp_keplerDeltaN;                  /* INTEGER_M32768_32767 */
442
static int hf_rrlp_keplerM0;                      /* INTEGER_M2147483648_2147483647 */
443
static int hf_rrlp_keplerOmegaDot;                /* INTEGER_M8388608_8388607 */
444
static int hf_rrlp_keplerE;                       /* INTEGER_0_4294967295 */
445
static int hf_rrlp_keplerIDot;                    /* INTEGER_M8192_8191 */
446
static int hf_rrlp_keplerAPowerHalf;              /* INTEGER_0_4294967295 */
447
static int hf_rrlp_keplerI0;                      /* INTEGER_M2147483648_2147483647 */
448
static int hf_rrlp_keplerOmega0;                  /* INTEGER_M2147483648_2147483647 */
449
static int hf_rrlp_keplerCrs;                     /* INTEGER_M32768_32767 */
450
static int hf_rrlp_keplerCis;                     /* INTEGER_M32768_32767 */
451
static int hf_rrlp_keplerCus;                     /* INTEGER_M32768_32767 */
452
static int hf_rrlp_keplerCrc;                     /* INTEGER_M32768_32767 */
453
static int hf_rrlp_keplerCic;                     /* INTEGER_M32768_32767 */
454
static int hf_rrlp_keplerCuc;                     /* INTEGER_M32768_32767 */
455
static int hf_rrlp_navURA;                        /* INTEGER_0_15 */
456
static int hf_rrlp_navFitFlag;                    /* INTEGER_0_1 */
457
static int hf_rrlp_navToe;                        /* INTEGER_0_37799 */
458
static int hf_rrlp_navOmega;                      /* INTEGER_M2147483648_2147483647 */
459
static int hf_rrlp_navDeltaN;                     /* INTEGER_M32768_32767 */
460
static int hf_rrlp_navM0;                         /* INTEGER_M2147483648_2147483647 */
461
static int hf_rrlp_navOmegaADot;                  /* INTEGER_M8388608_8388607 */
462
static int hf_rrlp_navE;                          /* INTEGER_0_4294967295 */
463
static int hf_rrlp_navIDot;                       /* INTEGER_M8192_8191 */
464
static int hf_rrlp_navAPowerHalf;                 /* INTEGER_0_4294967295 */
465
static int hf_rrlp_navI0;                         /* INTEGER_M2147483648_2147483647 */
466
static int hf_rrlp_navOmegaA0;                    /* INTEGER_M2147483648_2147483647 */
467
static int hf_rrlp_navCrs;                        /* INTEGER_M32768_32767 */
468
static int hf_rrlp_navCis;                        /* INTEGER_M32768_32767 */
469
static int hf_rrlp_navCus;                        /* INTEGER_M32768_32767 */
470
static int hf_rrlp_navCrc;                        /* INTEGER_M32768_32767 */
471
static int hf_rrlp_navCic;                        /* INTEGER_M32768_32767 */
472
static int hf_rrlp_navCuc;                        /* INTEGER_M32768_32767 */
473
static int hf_rrlp_cnavTop;                       /* INTEGER_0_2015 */
474
static int hf_rrlp_cnavURAindex;                  /* INTEGER_M16_15 */
475
static int hf_rrlp_cnavDeltaA;                    /* INTEGER_M33554432_33554431 */
476
static int hf_rrlp_cnavAdot;                      /* INTEGER_M16777216_16777215 */
477
static int hf_rrlp_cnavDeltaNo;                   /* INTEGER_M65536_65535 */
478
static int hf_rrlp_cnavDeltaNoDot;                /* INTEGER_M4194304_4194303 */
479
static int hf_rrlp_cnavMo;                        /* INTEGER_M4294967296_4294967295 */
480
static int hf_rrlp_cnavE;                         /* INTEGER_0_8589934591 */
481
static int hf_rrlp_cnavOmega;                     /* INTEGER_M4294967296_4294967295 */
482
static int hf_rrlp_cnavOMEGA0;                    /* INTEGER_M4294967296_4294967295 */
483
static int hf_rrlp_cnavDeltaOmegaDot;             /* INTEGER_M65536_65535 */
484
static int hf_rrlp_cnavIo;                        /* INTEGER_M4294967296_4294967295 */
485
static int hf_rrlp_cnavIoDot;                     /* INTEGER_M16384_16383 */
486
static int hf_rrlp_cnavCis;                       /* INTEGER_M32768_32767 */
487
static int hf_rrlp_cnavCic;                       /* INTEGER_M32768_32767 */
488
static int hf_rrlp_cnavCrs;                       /* INTEGER_M8388608_8388607 */
489
static int hf_rrlp_cnavCrc;                       /* INTEGER_M8388608_8388607 */
490
static int hf_rrlp_cnavCus;                       /* INTEGER_M1048576_1048575 */
491
static int hf_rrlp_cnavCuc;                       /* INTEGER_M1048576_1048575 */
492
static int hf_rrlp_gloEn;                         /* INTEGER_0_31 */
493
static int hf_rrlp_gloP1;                         /* BIT_STRING_SIZE_2 */
494
static int hf_rrlp_gloP2;                         /* BOOLEAN */
495
static int hf_rrlp_gloM;                          /* INTEGER_0_3 */
496
static int hf_rrlp_gloX;                          /* INTEGER_M67108864_67108863 */
497
static int hf_rrlp_gloXdot;                       /* INTEGER_M8388608_8388607 */
498
static int hf_rrlp_gloXdotdot;                    /* INTEGER_M16_15 */
499
static int hf_rrlp_gloY;                          /* INTEGER_M67108864_67108863 */
500
static int hf_rrlp_gloYdot;                       /* INTEGER_M8388608_8388607 */
501
static int hf_rrlp_gloYdotdot;                    /* INTEGER_M16_15 */
502
static int hf_rrlp_gloZ;                          /* INTEGER_M67108864_67108863 */
503
static int hf_rrlp_gloZdot;                       /* INTEGER_M8388608_8388607 */
504
static int hf_rrlp_gloZdotdot;                    /* INTEGER_M16_15 */
505
static int hf_rrlp_sbasTo;                        /* INTEGER_0_5399 */
506
static int hf_rrlp_sbasAccuracy;                  /* BIT_STRING_SIZE_4 */
507
static int hf_rrlp_sbasXg;                        /* INTEGER_M536870912_536870911 */
508
static int hf_rrlp_sbasYg;                        /* INTEGER_M536870912_536870911 */
509
static int hf_rrlp_sbasZg;                        /* INTEGER_M16777216_16777215 */
510
static int hf_rrlp_sbasXgDot;                     /* INTEGER_M65536_65535 */
511
static int hf_rrlp_sbasYgDot;                     /* INTEGER_M65536_65535 */
512
static int hf_rrlp_sbasZgDot;                     /* INTEGER_M131072_131071 */
513
static int hf_rrlp_sbasXgDotDot;                  /* INTEGER_M512_511 */
514
static int hf_rrlp_sbagYgDotDot;                  /* INTEGER_M512_511 */
515
static int hf_rrlp_sbasZgDotDot;                  /* INTEGER_M512_511 */
516
static int hf_rrlp_bdsAODE_r12;                   /* INTEGER_0_31 */
517
static int hf_rrlp_bdsURAI_r12;                   /* INTEGER_0_15 */
518
static int hf_rrlp_bdsToe_r12;                    /* INTEGER_0_131071 */
519
static int hf_rrlp_bdsAPowerHalf_r12;             /* INTEGER_0_4294967295 */
520
static int hf_rrlp_bdsE_r12;                      /* INTEGER_0_4294967295 */
521
static int hf_rrlp_bdsW_r12;                      /* INTEGER_M2147483648_2147483647 */
522
static int hf_rrlp_bdsDeltaN_r12;                 /* INTEGER_M32768_32767 */
523
static int hf_rrlp_bdsM0_r12;                     /* INTEGER_M2147483648_2147483647 */
524
static int hf_rrlp_bdsOmega0_r12;                 /* INTEGER_M2147483648_2147483647 */
525
static int hf_rrlp_bdsOmegaDot_r12;               /* INTEGER_M8388608_8388607 */
526
static int hf_rrlp_bdsI0_r12;                     /* INTEGER_M2147483648_2147483647 */
527
static int hf_rrlp_bdsIDot_r12;                   /* INTEGER_M8192_8191 */
528
static int hf_rrlp_bdsCuc_r12;                    /* INTEGER_M131072_131071 */
529
static int hf_rrlp_bdsCus_r12;                    /* INTEGER_M131072_131071 */
530
static int hf_rrlp_bdsCrc_r12;                    /* INTEGER_M131072_131071 */
531
static int hf_rrlp_bdsCrs_r12;                    /* INTEGER_M131072_131071 */
532
static int hf_rrlp_bdsCic_r12;                    /* INTEGER_M131072_131071 */
533
static int hf_rrlp_bdsCis_r12;                    /* INTEGER_M131072_131071 */
534
static int hf_rrlp_standardClockModelList;        /* SeqOfStandardClockModelElement */
535
static int hf_rrlp_navClockModel;                 /* NAVclockModel */
536
static int hf_rrlp_cnavClockModel;                /* CNAVclockModel */
537
static int hf_rrlp_glonassClockModel;             /* GLONASSclockModel */
538
static int hf_rrlp_sbasClockModel;                /* SBASclockModel */
539
static int hf_rrlp_bdsClockModel_r12;             /* BDSClockModel_r12 */
540
static int hf_rrlp_SeqOfStandardClockModelElement_item;  /* StandardClockModelElement */
541
static int hf_rrlp_stanClockToc;                  /* INTEGER_0_16383 */
542
static int hf_rrlp_stanClockAF2;                  /* INTEGER_M32_31 */
543
static int hf_rrlp_stanClockAF1;                  /* INTEGER_M1048576_1048575 */
544
static int hf_rrlp_stanClockAF0;                  /* INTEGER_M1073741824_1073741823 */
545
static int hf_rrlp_stanClockTgd;                  /* INTEGER_M512_511 */
546
static int hf_rrlp_stanModelID;                   /* INTEGER_0_1 */
547
static int hf_rrlp_navToc;                        /* INTEGER_0_37799 */
548
static int hf_rrlp_navaf2;                        /* INTEGER_M128_127 */
549
static int hf_rrlp_navaf1;                        /* INTEGER_M32768_32767 */
550
static int hf_rrlp_navaf0;                        /* INTEGER_M2097152_2097151 */
551
static int hf_rrlp_navTgd;                        /* INTEGER_M128_127 */
552
static int hf_rrlp_cnavToc;                       /* INTEGER_0_2015 */
553
static int hf_rrlp_cnavURA0;                      /* INTEGER_M16_15 */
554
static int hf_rrlp_cnavURA1;                      /* INTEGER_0_7 */
555
static int hf_rrlp_cnavURA2;                      /* INTEGER_0_7 */
556
static int hf_rrlp_cnavAf2;                       /* INTEGER_M512_511 */
557
static int hf_rrlp_cnavAf1;                       /* INTEGER_M524288_524287 */
558
static int hf_rrlp_cnavAf0;                       /* INTEGER_M33554432_33554431 */
559
static int hf_rrlp_cnavTgd;                       /* INTEGER_M4096_4095 */
560
static int hf_rrlp_cnavISCl1cp;                   /* INTEGER_M4096_4095 */
561
static int hf_rrlp_cnavISCl1cd;                   /* INTEGER_M4096_4095 */
562
static int hf_rrlp_cnavISCl1ca;                   /* INTEGER_M4096_4095 */
563
static int hf_rrlp_cnavISCl2c;                    /* INTEGER_M4096_4095 */
564
static int hf_rrlp_cnavISCl5i5;                   /* INTEGER_M4096_4095 */
565
static int hf_rrlp_cnavISCl5q5;                   /* INTEGER_M4096_4095 */
566
static int hf_rrlp_gloTau;                        /* INTEGER_M2097152_2097151 */
567
static int hf_rrlp_gloGamma;                      /* INTEGER_M1024_1023 */
568
static int hf_rrlp_gloDeltaTau;                   /* INTEGER_M16_15 */
569
static int hf_rrlp_sbasAgfo;                      /* INTEGER_M2048_2047 */
570
static int hf_rrlp_sbasAgf1;                      /* INTEGER_M128_127 */
571
static int hf_rrlp_bdsAODC_r12;                   /* INTEGER_0_31 */
572
static int hf_rrlp_bdsToc_r12;                    /* INTEGER_0_131071 */
573
static int hf_rrlp_bdsA0_r12;                     /* INTEGER_M8388608_8388607 */
574
static int hf_rrlp_bdsA1_r12;                     /* INTEGER_M2097152_2097151 */
575
static int hf_rrlp_bdsA2_r12;                     /* INTEGER_M1024_1023 */
576
static int hf_rrlp_bdsTgd1_r12;                   /* INTEGER_M512_511 */
577
static int hf_rrlp_ganssBadSignalList;            /* SeqOfBadSignalElement */
578
static int hf_rrlp_SeqOfBadSignalElement_item;    /* BadSignalElement */
579
static int hf_rrlp_badSVID;                       /* SVID */
580
static int hf_rrlp_badSignalID;                   /* GANSSSignals */
581
static int hf_rrlp_ganssTOD_01;                   /* INTEGER_0_59 */
582
static int hf_rrlp_ganssDataBitsSatList;          /* SeqOfGanssDataBitsElement */
583
static int hf_rrlp_SeqOfGanssDataBitsElement_item;  /* GanssDataBitsElement */
584
static int hf_rrlp_ganssDataBitsSgnList;          /* Seq_OfGANSSDataBitsSgn */
585
static int hf_rrlp_Seq_OfGANSSDataBitsSgn_item;   /* GANSSDataBitsSgnElement */
586
static int hf_rrlp_ganssSignalType;               /* GANSSSignalID */
587
static int hf_rrlp_ganssDataBits;                 /* SeqOf_GANSSDataBits */
588
static int hf_rrlp_SeqOf_GANSSDataBits_item;      /* GANSSDataBit */
589
static int hf_rrlp_ganssRefMeasAssistList;        /* SeqOfGANSSRefMeasurementElement */
590
static int hf_rrlp_SeqOfGANSSRefMeasurementElement_item;  /* GANSSRefMeasurementElement */
591
static int hf_rrlp_additionalDoppler;             /* AdditionalDopplerFields */
592
static int hf_rrlp_intCodePhase_01;               /* INTEGER_0_127 */
593
static int hf_rrlp_codePhaseSearchWindow_01;      /* INTEGER_0_31 */
594
static int hf_rrlp_additionalAngle;               /* AddionalAngleFields */
595
static int hf_rrlp_codePhase1023;                 /* BOOLEAN */
596
static int hf_rrlp_dopplerUncertainty_01;         /* INTEGER_0_4 */
597
static int hf_rrlp_GANSSRefMeasurementAssist_R10_Ext_item;  /* GANSSRefMeasurement_R10_Ext_Element */
598
static int hf_rrlp_azimuthLSB;                    /* INTEGER_0_15 */
599
static int hf_rrlp_elevationLSB;                  /* INTEGER_0_15 */
600
static int hf_rrlp_confidence;                    /* INTEGER_0_100 */
601
static int hf_rrlp_ganssRefMeasAssistList_01;     /* SeqOfGANSSRefMeasurementElement_R12 */
602
static int hf_rrlp_SeqOfGANSSRefMeasurementElement_R12_item;  /* GANSSRefMeasurement_R12_Ext_Element */
603
static int hf_rrlp_dopplerUncertaintyExt;         /* T_dopplerUncertaintyExt */
604
static int hf_rrlp_weekNumber_01;                 /* INTEGER_0_255 */
605
static int hf_rrlp_toa;                           /* INTEGER_0_255 */
606
static int hf_rrlp_ioda;                          /* INTEGER_0_3 */
607
static int hf_rrlp_ganssAlmanacList;              /* SeqOfGANSSAlmanacElement */
608
static int hf_rrlp_SeqOfGANSSAlmanacElement_item;  /* GANSSAlmanacElement */
609
static int hf_rrlp_keplerianAlmanacSet;           /* Almanac_KeplerianSet */
610
static int hf_rrlp_keplerianNAVAlmanac;           /* Almanac_NAVKeplerianSet */
611
static int hf_rrlp_keplerianReducedAlmanac;       /* Almanac_ReducedKeplerianSet */
612
static int hf_rrlp_keplerianMidiAlmanac;          /* Almanac_MidiAlmanacSet */
613
static int hf_rrlp_keplerianGLONASS;              /* Almanac_GlonassAlmanacSet */
614
static int hf_rrlp_ecefSBASAlmanac;               /* Almanac_ECEFsbasAlmanacSet */
615
static int hf_rrlp_keplerianBDSAlmanac_r12;       /* Almanac_BDSAlmanacSet_r12 */
616
static int hf_rrlp_kepAlmanacE;                   /* INTEGER_0_2047 */
617
static int hf_rrlp_kepAlmanacDeltaI;              /* INTEGER_M1024_1023 */
618
static int hf_rrlp_kepAlmanacOmegaDot;            /* INTEGER_M1024_1023 */
619
static int hf_rrlp_kepSVStatusINAV;               /* BIT_STRING_SIZE_4 */
620
static int hf_rrlp_kepSVStatusFNAV;               /* BIT_STRING_SIZE_2 */
621
static int hf_rrlp_kepAlmanacAPowerHalf;          /* INTEGER_M4096_4095 */
622
static int hf_rrlp_kepAlmanacOmega0;              /* INTEGER_M32768_32767 */
623
static int hf_rrlp_kepAlmanacW;                   /* INTEGER_M32768_32767 */
624
static int hf_rrlp_kepAlmanacM0;                  /* INTEGER_M32768_32767 */
625
static int hf_rrlp_kepAlmanacAF0;                 /* INTEGER_M32768_32767 */
626
static int hf_rrlp_kepAlmanacAF1;                 /* INTEGER_M4096_4095 */
627
static int hf_rrlp_navAlmE;                       /* INTEGER_0_65535 */
628
static int hf_rrlp_navAlmDeltaI;                  /* INTEGER_M32768_32767 */
629
static int hf_rrlp_navAlmOMEGADOT;                /* INTEGER_M32768_32767 */
630
static int hf_rrlp_navAlmSVHealth;                /* INTEGER_0_255 */
631
static int hf_rrlp_navAlmSqrtA;                   /* INTEGER_0_16777215 */
632
static int hf_rrlp_navAlmOMEGAo;                  /* INTEGER_M8388608_8388607 */
633
static int hf_rrlp_navAlmOmega;                   /* INTEGER_M8388608_8388607 */
634
static int hf_rrlp_navAlmMo;                      /* INTEGER_M8388608_8388607 */
635
static int hf_rrlp_navAlmaf0;                     /* INTEGER_M1024_1023 */
636
static int hf_rrlp_navAlmaf1;                     /* INTEGER_M1024_1023 */
637
static int hf_rrlp_redAlmDeltaA;                  /* INTEGER_M128_127 */
638
static int hf_rrlp_redAlmOmega0;                  /* INTEGER_M64_63 */
639
static int hf_rrlp_redAlmPhi0;                    /* INTEGER_M64_63 */
640
static int hf_rrlp_redAlmL1Health;                /* BOOLEAN */
641
static int hf_rrlp_redAlmL2Health;                /* BOOLEAN */
642
static int hf_rrlp_redAlmL5Health;                /* BOOLEAN */
643
static int hf_rrlp_midiAlmE;                      /* INTEGER_0_2047 */
644
static int hf_rrlp_midiAlmDeltaI;                 /* INTEGER_M1024_1023 */
645
static int hf_rrlp_midiAlmOmegaDot;               /* INTEGER_M1024_1023 */
646
static int hf_rrlp_midiAlmSqrtA;                  /* INTEGER_0_131071 */
647
static int hf_rrlp_midiAlmOmega0;                 /* INTEGER_M32768_32767 */
648
static int hf_rrlp_midiAlmOmega;                  /* INTEGER_M32768_32767 */
649
static int hf_rrlp_midiAlmMo;                     /* INTEGER_M32768_32767 */
650
static int hf_rrlp_midiAlmaf0;                    /* INTEGER_M1024_1023 */
651
static int hf_rrlp_midiAlmaf1;                    /* INTEGER_M512_511 */
652
static int hf_rrlp_midiAlmL1Health;               /* BOOLEAN */
653
static int hf_rrlp_midiAlmL2Health;               /* BOOLEAN */
654
static int hf_rrlp_midiAlmL5Health;               /* BOOLEAN */
655
static int hf_rrlp_gloAlmNA;                      /* INTEGER_1_1461 */
656
static int hf_rrlp_gloAlmnA;                      /* INTEGER_1_24 */
657
static int hf_rrlp_gloAlmHA;                      /* INTEGER_0_31 */
658
static int hf_rrlp_gloAlmLambdaA;                 /* INTEGER_M1048576_1048575 */
659
static int hf_rrlp_gloAlmtlambdaA;                /* INTEGER_0_2097151 */
660
static int hf_rrlp_gloAlmDeltaIa;                 /* INTEGER_M131072_131071 */
661
static int hf_rrlp_gloAlmDeltaTA;                 /* INTEGER_M2097152_2097151 */
662
static int hf_rrlp_gloAlmDeltaTdotA;              /* INTEGER_M64_63 */
663
static int hf_rrlp_gloAlmEpsilonA;                /* INTEGER_0_32767 */
664
static int hf_rrlp_gloAlmOmegaA;                  /* INTEGER_M32768_32767 */
665
static int hf_rrlp_gloAlmTauA;                    /* INTEGER_M512_511 */
666
static int hf_rrlp_gloAlmCA;                      /* INTEGER_0_1 */
667
static int hf_rrlp_gloAlmMA;                      /* BIT_STRING_SIZE_2 */
668
static int hf_rrlp_sbasAlmDataID;                 /* INTEGER_0_3 */
669
static int hf_rrlp_sbasAlmHealth;                 /* BIT_STRING_SIZE_8 */
670
static int hf_rrlp_sbasAlmXg;                     /* INTEGER_M16384_16383 */
671
static int hf_rrlp_sbasAlmYg;                     /* INTEGER_M16384_16383 */
672
static int hf_rrlp_sbasAlmZg;                     /* INTEGER_M256_255 */
673
static int hf_rrlp_sbasAlmXgdot;                  /* INTEGER_M4_3 */
674
static int hf_rrlp_sbasAlmYgDot;                  /* INTEGER_M4_3 */
675
static int hf_rrlp_sbasAlmZgDot;                  /* INTEGER_M8_7 */
676
static int hf_rrlp_sbasAlmTo;                     /* INTEGER_0_2047 */
677
static int hf_rrlp_bdsAlmToa_r12;                 /* INTEGER_0_255 */
678
static int hf_rrlp_bdsAlmSqrtA_r12;               /* INTEGER_0_16777215 */
679
static int hf_rrlp_bdsAlmE_r12;                   /* INTEGER_0_131071 */
680
static int hf_rrlp_bdsAlmW_r12;                   /* INTEGER_M8388608_8388607 */
681
static int hf_rrlp_bdsAlmM0_r12;                  /* INTEGER_M8388608_8388607 */
682
static int hf_rrlp_bdsAlmOmega0_r12;              /* INTEGER_M8388608_8388607 */
683
static int hf_rrlp_bdsAlmOmegaDot_r12;            /* INTEGER_M65536_65535 */
684
static int hf_rrlp_bdsAlmDeltaI_r12;              /* INTEGER_M32768_32767 */
685
static int hf_rrlp_bdsAlmA0_r12;                  /* INTEGER_M1024_1023 */
686
static int hf_rrlp_bdsAlmA1_r12;                  /* INTEGER_M1024_1023 */
687
static int hf_rrlp_bdsSvHealth_r12;               /* BIT_STRING_SIZE_9 */
688
static int hf_rrlp_completeAlmanacProvided;       /* BOOLEAN */
689
static int hf_rrlp_toa_ext;                       /* INTEGER_256_1023 */
690
static int hf_rrlp_ioda_ext;                      /* INTEGER_4_15 */
691
static int hf_rrlp_ganssUtcA1;                    /* INTEGER_M8388608_8388607 */
692
static int hf_rrlp_ganssUtcA0;                    /* INTEGER_M2147483648_2147483647 */
693
static int hf_rrlp_ganssUtcTot;                   /* INTEGER_0_255 */
694
static int hf_rrlp_ganssUtcWNt;                   /* INTEGER_0_255 */
695
static int hf_rrlp_ganssUtcDeltaTls;              /* INTEGER_M128_127 */
696
static int hf_rrlp_ganssUtcWNlsf;                 /* INTEGER_0_255 */
697
static int hf_rrlp_ganssUtcDN;                    /* INTEGER_M128_127 */
698
static int hf_rrlp_ganssUtcDeltaTlsf;             /* INTEGER_M128_127 */
699
static int hf_rrlp_ganssEphemerisHeader;          /* GANSSEphemerisExtensionHeader */
700
static int hf_rrlp_ganssReferenceSet;             /* SeqOfGANSSRefOrbit */
701
static int hf_rrlp_ganssephemerisDeltasMatrix;    /* GANSSEphemerisDeltaMatrix */
702
static int hf_rrlp_timeAtEstimation;              /* GANSSEphemerisExtensionTime */
703
static int hf_rrlp_validityPeriod;                /* INTEGER_1_8 */
704
static int hf_rrlp_ephemerisExtensionDuration;    /* INTEGER_1_512 */
705
static int hf_rrlp_ganssEphExtDay;                /* INTEGER_0_8191 */
706
static int hf_rrlp_ganssEphExtTOD;                /* GANSSTOD */
707
static int hf_rrlp_keplerToe_01;                  /* INTEGER_0_37799 */
708
static int hf_rrlp_SeqOfGANSSRefOrbit_item;       /* GANSSReferenceOrbit */
709
static int hf_rrlp_ganssOrbitModel_01;            /* ReferenceNavModel */
710
static int hf_rrlp_GANSSEphemerisDeltaMatrix_item;  /* GANSSEphemerisDeltaEpoch */
711
static int hf_rrlp_ganssDeltaEpochHeader;         /* GANSSDeltaEpochHeader */
712
static int hf_rrlp_ganssDeltaElementList;         /* GANSSDeltaElementList */
713
static int hf_rrlp_ephemerisDeltaSizes;           /* GANSSEphemerisDeltaBitSizes */
714
static int hf_rrlp_ephemerisDeltaScales;          /* GANSSEphemerisDeltaScales */
715
static int hf_rrlp_GANSSDeltaElementList_item;    /* OCTET_STRING_SIZE_1_49 */
716
static int hf_rrlp_bitsize_delta_omega;           /* INTEGER_1_32 */
717
static int hf_rrlp_bitsize_delta_deltaN;          /* INTEGER_1_16 */
718
static int hf_rrlp_bitsize_delta_m0;              /* INTEGER_1_32 */
719
static int hf_rrlp_bitsize_delta_omegadot;        /* INTEGER_1_24 */
720
static int hf_rrlp_bitsize_delta_e;               /* INTEGER_1_32 */
721
static int hf_rrlp_bitsize_delta_idot;            /* INTEGER_1_14 */
722
static int hf_rrlp_bitsize_delta_sqrtA;           /* INTEGER_1_32 */
723
static int hf_rrlp_bitsize_delta_i0;              /* INTEGER_1_32 */
724
static int hf_rrlp_bitsize_delta_omega0;          /* INTEGER_1_32 */
725
static int hf_rrlp_bitsize_delta_crs;             /* INTEGER_1_16 */
726
static int hf_rrlp_bitsize_delta_cis;             /* INTEGER_1_16 */
727
static int hf_rrlp_bitsize_delta_cus;             /* INTEGER_1_16 */
728
static int hf_rrlp_bitsize_delta_crc;             /* INTEGER_1_16 */
729
static int hf_rrlp_bitsize_delta_cic;             /* INTEGER_1_16 */
730
static int hf_rrlp_bitsize_delta_cuc;             /* INTEGER_1_16 */
731
static int hf_rrlp_bitsize_delta_tgd1;            /* INTEGER_1_10 */
732
static int hf_rrlp_bitsize_delta_tgd2;            /* INTEGER_1_10 */
733
static int hf_rrlp_scale_delta_omega;             /* INTEGER_M16_15 */
734
static int hf_rrlp_scale_delta_deltaN;            /* INTEGER_M16_15 */
735
static int hf_rrlp_scale_delta_m0;                /* INTEGER_M16_15 */
736
static int hf_rrlp_scale_delta_omegadot;          /* INTEGER_M16_15 */
737
static int hf_rrlp_scale_delta_e;                 /* INTEGER_M16_15 */
738
static int hf_rrlp_scale_delta_idot;              /* INTEGER_M16_15 */
739
static int hf_rrlp_scale_delta_sqrtA;             /* INTEGER_M16_15 */
740
static int hf_rrlp_scale_delta_i0;                /* INTEGER_M16_15 */
741
static int hf_rrlp_scale_delta_omega0;            /* INTEGER_M16_15 */
742
static int hf_rrlp_scale_delta_crs;               /* INTEGER_M16_15 */
743
static int hf_rrlp_scale_delta_cis;               /* INTEGER_M16_15 */
744
static int hf_rrlp_scale_delta_cus;               /* INTEGER_M16_15 */
745
static int hf_rrlp_scale_delta_crc;               /* INTEGER_M16_15 */
746
static int hf_rrlp_scale_delta_cic;               /* INTEGER_M16_15 */
747
static int hf_rrlp_scale_delta_cuc;               /* INTEGER_M16_15 */
748
static int hf_rrlp_scale_delta_tgd1;              /* INTEGER_M16_15 */
749
static int hf_rrlp_scale_delta_tgd2;              /* INTEGER_M16_15 */
750
static int hf_rrlp_ganssBeginTime;                /* GANSSEphemerisExtensionTime */
751
static int hf_rrlp_ganssEndTime;                  /* GANSSEphemerisExtensionTime */
752
static int hf_rrlp_ganssSatEventsInfo;            /* GANSSSatEventsInfo */
753
static int hf_rrlp_eventOccured;                  /* BIT_STRING_SIZE_64 */
754
static int hf_rrlp_futureEventNoted;              /* BIT_STRING_SIZE_64 */
755
static int hf_rrlp_utcModel2;                     /* UTCmodelSet2 */
756
static int hf_rrlp_utcModel3;                     /* UTCmodelSet3 */
757
static int hf_rrlp_utcModel4;                     /* UTCmodelSet4 */
758
static int hf_rrlp_utcModel5_r12;                 /* UTCmodelSet5_r12 */
759
static int hf_rrlp_utcA0_01;                      /* INTEGER_M32768_32767 */
760
static int hf_rrlp_utcA1_01;                      /* INTEGER_M4096_4095 */
761
static int hf_rrlp_utcA2;                         /* INTEGER_M64_63 */
762
static int hf_rrlp_utcTot_01;                     /* INTEGER_0_65535 */
763
static int hf_rrlp_utcWNot;                       /* INTEGER_0_8191 */
764
static int hf_rrlp_utcDN_bit_str;                 /* BIT_STRING_SIZE_4 */
765
static int hf_rrlp_nA;                            /* INTEGER_1_1461 */
766
static int hf_rrlp_tauC;                          /* INTEGER_M2147483648_2147483647 */
767
static int hf_rrlp_b1;                            /* INTEGER_M1024_1023 */
768
static int hf_rrlp_b2;                            /* INTEGER_M512_511 */
769
static int hf_rrlp_kp;                            /* BIT_STRING_SIZE_2 */
770
static int hf_rrlp_utcA1wnt;                      /* INTEGER_M8388608_8388607 */
771
static int hf_rrlp_utcA0wnt;                      /* INTEGER_M2147483648_2147483647 */
772
static int hf_rrlp_utcStandardID;                 /* INTEGER_0_7 */
773
static int hf_rrlp_utcA0_r12;                     /* INTEGER_M2147483648_2147483647 */
774
static int hf_rrlp_utcA1_r12;                     /* INTEGER_M8388608_8388607 */
775
static int hf_rrlp_utcDeltaTls_r12;               /* INTEGER_M128_127 */
776
static int hf_rrlp_utcWNlsf_r12;                  /* INTEGER_0_255 */
777
static int hf_rrlp_utcDN_r12;                     /* INTEGER_0_255 */
778
static int hf_rrlp_utcDeltaTlsf_r12;              /* INTEGER_M128_127 */
779
static int hf_rrlp_ganssID1;                      /* GANSS_ID1 */
780
static int hf_rrlp_ganssID3;                      /* GANSS_ID3 */
781
static int hf_rrlp_GANSS_ID1_item;                /* GANSS_ID1_element */
782
static int hf_rrlp_signalsAvailable;              /* GANSSSignals */
783
static int hf_rrlp_GANSS_ID3_item;                /* GANSS_ID3_element */
784
static int hf_rrlp_channelNumber;                 /* INTEGER_M7_13 */
785
static int hf_rrlp_GANSSDiffCorrectionsValidityPeriod_item;  /* DGANSSExtensionSgnTypeElement */
786
static int hf_rrlp_dganssExtensionSgnList;        /* SeqOfDGANSSExtensionSgnElement */
787
static int hf_rrlp_SeqOfDGANSSExtensionSgnElement_item;  /* DGANSSExtensionSgnElement */
788
static int hf_rrlp_udreGrowthRate;                /* INTEGER_0_7 */
789
static int hf_rrlp_udreValidityTime;              /* INTEGER_0_7 */
790
static int hf_rrlp_add_GPS_controlHeader;         /* Add_GPS_ControlHeader */
791
static int hf_rrlp_gpsEphemerisExtension;         /* GPSEphemerisExtension */
792
static int hf_rrlp_gpsEphemerisExtensionCheck;    /* GPSEphemerisExtensionCheck */
793
static int hf_rrlp_dgpsCorrectionsValidityPeriod;  /* DGPSCorrectionsValidityPeriod */
794
static int hf_rrlp_gpsReferenceTime_R10_Ext;      /* GPSReferenceTime_R10_Ext */
795
static int hf_rrlp_gpsAcquisAssist_R10_Ext;       /* GPSAcquisAssist_R10_Ext */
796
static int hf_rrlp_gpsAlmanac_R10_Ext;            /* GPSAlmanac_R10_Ext */
797
static int hf_rrlp_gpsAcquisAssist_R12_Ext;       /* GPSAcquisAssist_R12_Ext */
798
static int hf_rrlp_af2;                           /* INTEGER_M128_127 */
799
static int hf_rrlp_af1;                           /* INTEGER_M32768_32767 */
800
static int hf_rrlp_af0;                           /* INTEGER_M2097152_2097151 */
801
static int hf_rrlp_tgd;                           /* INTEGER_M128_127 */
802
static int hf_rrlp_gpsEphemerisHeader;            /* GPSEphemerisExtensionHeader */
803
static int hf_rrlp_gpsReferenceSet;               /* SeqOfGPSRefOrbit */
804
static int hf_rrlp_gpsephemerisDeltaMatrix;       /* GPSEphemerisDeltaMatrix */
805
static int hf_rrlp_timeofEstimation;              /* GPSEphemerisExtensionTime */
806
static int hf_rrlp_SeqOfGPSRefOrbit_item;         /* GPSReferenceOrbit */
807
static int hf_rrlp_gpsOrbitModel;                 /* ReferenceNavModel */
808
static int hf_rrlp_gpsClockModel;                 /* GPSClockModel */
809
static int hf_rrlp_GPSEphemerisDeltaMatrix_item;  /* GPSEphemerisDeltaEpoch */
810
static int hf_rrlp_gpsDeltaEpochHeader;           /* GPSDeltaEpochHeader */
811
static int hf_rrlp_gpsDeltaElementList;           /* GPSDeltaElementList */
812
static int hf_rrlp_ephemerisDeltaSizes_01;        /* GPSEphemerisDeltaBitSizes */
813
static int hf_rrlp_ephemerisDeltaScales_01;       /* GPSEphemerisDeltaScales */
814
static int hf_rrlp_GPSDeltaElementList_item;      /* OCTET_STRING_SIZE_1_47 */
815
static int hf_rrlp_bitsize_delta_tgd;             /* INTEGER_1_10 */
816
static int hf_rrlp_scale_delta_tgd;               /* INTEGER_M16_15 */
817
static int hf_rrlp_gpsBeginTime;                  /* GPSEphemerisExtensionTime */
818
static int hf_rrlp_gpsEndTime;                    /* GPSEphemerisExtensionTime */
819
static int hf_rrlp_gpsSatEventsInfo;              /* GPSSatEventsInfo */
820
static int hf_rrlp_eventOccured_01;               /* BIT_STRING_SIZE_32 */
821
static int hf_rrlp_futureEventNoted_01;           /* BIT_STRING_SIZE_32 */
822
static int hf_rrlp_DGPSCorrectionsValidityPeriod_item;  /* DGPSExtensionSatElement */
823
static int hf_rrlp_gpsWeekCycleNumber;            /* INTEGER_0_7 */
824
static int hf_rrlp_GPSAcquisAssist_R10_Ext_item;  /* GPSAcquisAssist_R10_Ext_Element */
825
static int hf_rrlp_acquisList_01;                 /* SeqOfGPSAcquisAssist_R12_Ext */
826
static int hf_rrlp_SeqOfGPSAcquisAssist_R12_Ext_item;  /* GPSAcquisAssist_R12_Ext_Element */
827
static int hf_rrlp_dopplerUncertaintyExt_01;      /* T_dopplerUncertaintyExt_01 */
828
static int hf_rrlp_velEstimate;                   /* VelocityEstimate */
829
static int hf_rrlp_ganssLocationInfo;             /* GANSSLocationInfo */
830
static int hf_rrlp_ganssMeasureInfo;              /* GANSSMeasureInfo */
831
static int hf_rrlp_referenceFrame;                /* ReferenceFrame */
832
static int hf_rrlp_ganssTODm;                     /* GANSSTODm */
833
static int hf_rrlp_ganssTODFrac;                  /* INTEGER_0_16384 */
834
static int hf_rrlp_posData;                       /* PositionData */
835
static int hf_rrlp_stationaryIndication;          /* INTEGER_0_1 */
836
static int hf_rrlp_referenceFN;                   /* INTEGER_0_65535 */
837
static int hf_rrlp_referenceFNMSB;                /* INTEGER_0_63 */
838
static int hf_rrlp_ganssMsrSetList;               /* SeqOfGANSS_MsrSetElement */
839
static int hf_rrlp_SeqOfGANSS_MsrSetElement_item;  /* GANSS_MsrSetElement */
840
static int hf_rrlp_deltaGANSSTOD;                 /* INTEGER_0_127 */
841
static int hf_rrlp_ganss_MsrElementList;          /* SeqOfGANSS_MsrElement */
842
static int hf_rrlp_SeqOfGANSS_MsrElement_item;    /* GANSS_MsrElement */
843
static int hf_rrlp_ganss_SgnTypeList;             /* SeqOfGANSS_SgnTypeElement */
844
static int hf_rrlp_SeqOfGANSS_SgnTypeElement_item;  /* GANSS_SgnTypeElement */
845
static int hf_rrlp_ganssCodePhaseAmbiguity;       /* INTEGER_0_127 */
846
static int hf_rrlp_ganss_SgnList;                 /* SeqOfGANSS_SgnElement */
847
static int hf_rrlp_SeqOfGANSS_SgnElement_item;    /* GANSS_SgnElement */
848
static int hf_rrlp_mpathDet;                      /* MpathIndic */
849
static int hf_rrlp_carrierQualityInd;             /* INTEGER_0_3 */
850
static int hf_rrlp_codePhase_01;                  /* INTEGER_0_2097151 */
851
static int hf_rrlp_integerCodePhase;              /* INTEGER_0_127 */
852
static int hf_rrlp_codePhaseRMSError;             /* INTEGER_0_63 */
853
static int hf_rrlp_adr;                           /* INTEGER_0_33554431 */
854
static int hf_rrlp_dbds_RefTime_r12;              /* INTEGER_0_3599 */
855
static int hf_rrlp_bds_SgnTypeList_r12;           /* BDS_SgnTypeList_r12 */
856
static int hf_rrlp_BDS_SgnTypeList_r12_item;      /* BDS_SgnTypeElement_r12 */
857
static int hf_rrlp_dbds_CorrectionList_r12;       /* DBDS_CorrectionList_r12 */
858
static int hf_rrlp_DBDS_CorrectionList_r12_item;  /* DBDS_CorrectionElement_r12 */
859
static int hf_rrlp_bds_UDREI_r12;                 /* INTEGER_0_15 */
860
static int hf_rrlp_bds_RURAI_r12;                 /* INTEGER_0_15 */
861
static int hf_rrlp_bds_ECC_DeltaT_r12;            /* INTEGER_M4096_4095 */
862
static int hf_rrlp_bds_RefTime_r12;               /* INTEGER_0_3599 */
863
static int hf_rrlp_gridIonList_r12;               /* GridIonList_r12 */
864
static int hf_rrlp_GridIonList_r12_item;          /* GridIonElement_r12 */
865
static int hf_rrlp_igp_ID_r12;                    /* INTEGER_1_320 */
866
static int hf_rrlp_dt_r12;                        /* INTEGER_0_511 */
867
static int hf_rrlp_givei_r12;                     /* INTEGER_0_15 */
868
static int hf_rrlp_nonGANSSpositionMethods;       /* NonGANSSPositionMethods */
869
static int hf_rrlp_multipleMeasurementSets;       /* MultipleMeasurementSets */
870
static int hf_rrlp_GANSSPositionMethods_item;     /* GANSSPositionMethod */
871
static int hf_rrlp_gANSSPositioningMethodTypes;   /* GANSSPositioningMethodTypes */
872
static int hf_rrlp_gANSSSignals;                  /* GANSSSignals */
873
static int hf_rrlp_sbasID;                        /* SBASID */
874
static int hf_rrlp_gpsAssistance;                 /* GPSAssistance */
875
static int hf_rrlp_gANSSAssistanceSet;            /* GANSSAssistanceSet */
876
static int hf_rrlp_gANSSAdditionalAssistanceChoices;  /* GANSSAdditionalAssistanceChoices */
877
static int hf_rrlp_commonGANSSAssistance;         /* CommonGANSSAssistance */
878
static int hf_rrlp_specificGANSSAssistance;       /* SpecificGANSSAssistance */
879
static int hf_rrlp_SpecificGANSSAssistance_item;  /* GANSSAssistanceForOneGANSS */
880
static int hf_rrlp_gANSSAssistance;               /* GANSSAssistance */
881
static int hf_rrlp_GANSSAdditionalAssistanceChoices_item;  /* GANSSAdditionalAssistanceChoicesForOneGANSS */
882
static int hf_rrlp_ganssClockModelChoice;         /* GANSSModelID */
883
static int hf_rrlp_gannsOrbitModelChoice;         /* GANSSModelID */
884
static int hf_rrlp_ganssAlmanacModelChoice;       /* GANSSModelID */
885
static int hf_rrlp_ganssAdditionalUTCModelChoice;  /* GANSSModelID */
886
static int hf_rrlp_cellSet1;                      /* CellSet */
887
static int hf_rrlp_cellSet2;                      /* CellSet */
888
static int hf_rrlp_cellSet3;                      /* CellSet */
889
static int hf_rrlp_cellSet4;                      /* CellSet */
890
static int hf_rrlp_cellSet5;                      /* CellSet */
891
static int hf_rrlp_cellSet6;                      /* CellSet */
892
static int hf_rrlp_cellSet7;                      /* CellSet */
893
static int hf_rrlp_cellSet8;                      /* CellSet */
894
static int hf_rrlp_cell1;                         /* CellInfo */
895
static int hf_rrlp_cell2;                         /* CellInfo */
896
static int hf_rrlp_cell3;                         /* CellInfo */
897
static int hf_rrlp_cell4;                         /* CellInfo */
898
static int hf_rrlp_cell5;                         /* CellInfo */
899
static int hf_rrlp_cell6;                         /* CellInfo */
900
static int hf_rrlp_bsic_01;                       /* INTEGER_0_511 */
901
static int hf_rrlp_arfcn;                         /* INTEGER_0_1023 */
902
static int hf_rrlp_oTDMeasurementInfo1;           /* OTDMeasurementInfo */
903
static int hf_rrlp_oTDMeasurementInfo2;           /* OTDMeasurementInfo */
904
static int hf_rrlp_oTDMeasurementInfo3;           /* OTDMeasurementInfo */
905
static int hf_rrlp_oTDMeasurementInfo4;           /* OTDMeasurementInfo */
906
static int hf_rrlp_oTDMeasurementInfo5;           /* OTDMeasurementInfo */
907
static int hf_rrlp_oTDMeasurementInfo6;           /* OTDMeasurementInfo */
908
static int hf_rrlp_oTDMeasurementInfo7;           /* OTDMeasurementInfo */
909
static int hf_rrlp_reportedCell;                  /* CellType */
910
static int hf_rrlp_msSyncAccuracy;                /* INTEGER_0_15 */
911
static int hf_rrlp_observedTimeDiff;              /* INTEGER_0_999 */
912
static int hf_rrlp_configuredNeighbourCellIdx;    /* INTEGER_1_48 */
913
static int hf_rrlp_detectedNeighbourCell;         /* CellInfo */
914
static int hf_rrlp_rxLEVMeasurementInfo1;         /* RXLEVMeasurementInfo */
915
static int hf_rrlp_rxLEVMeasurementInfo2;         /* RXLEVMeasurementInfo */
916
static int hf_rrlp_rxLEVMeasurementInfo3;         /* RXLEVMeasurementInfo */
917
static int hf_rrlp_rxLEVMeasurementInfo4;         /* RXLEVMeasurementInfo */
918
static int hf_rrlp_rxLEVMeasurementInfo5;         /* RXLEVMeasurementInfo */
919
static int hf_rrlp_rxLEVMeasurementInfo6;         /* RXLEVMeasurementInfo */
920
static int hf_rrlp_rxLEV;                         /* INTEGER_0_63 */
921
static int hf_rrlp_rlc_Data_Block;                /* NULL */
922
static int hf_rrlp_access_Burst;                  /* NULL */
923
static int hf_rrlp_extended_Access_Burst;         /* Extended_Access_Burst */
924
static int hf_rrlp_spare;                         /* NULL */
925
static int hf_rrlp_random_ID1;                    /* INTEGER_0_65535 */
926
static int hf_rrlp_random_ID2;                    /* INTEGER_0_65535 */
927
static int hf_rrlp_random_ID3;                    /* INTEGER_0_65535 */
928
static int hf_rrlp_random_ID4;                    /* INTEGER_0_65535 */
929
static int hf_rrlp_random_ID5;                    /* INTEGER_0_65535 */
930
static int hf_rrlp_random_ID6;                    /* INTEGER_0_65535 */
931
static int hf_rrlp_random_ID7;                    /* INTEGER_0_65535 */
932
static int hf_rrlp_random_ID8;                    /* INTEGER_0_65535 */
933
static int hf_rrlp_random_ID9;                    /* INTEGER_0_65535 */
934
static int hf_rrlp_short_BSS_ID;                  /* INTEGER_0_7 */
935
static int hf_rrlp_co_sited_cell_Set_Member1;     /* Co_Sited_Cell_Set_Member */
936
static int hf_rrlp_co_sited_cell_set_Member2;     /* Co_Sited_Cell_Set_Member */
937
static int hf_rrlp_co_sited_cell_set_Member3;     /* Co_Sited_Cell_Set_Member */
938
static int hf_rrlp_co_sited_cell_set_Member4;     /* Co_Sited_Cell_Set_Member */
939
static int hf_rrlp_co_sited_cell_set_Member5;     /* Co_Sited_Cell_Set_Member */
940
static int hf_rrlp_co_sited_cell_set_Member6;     /* Co_Sited_Cell_Set_Member */
941
static int hf_rrlp_bsic_Info;                     /* BSIC_Info */
942
static int hf_rrlp_cell_Set_Member1;              /* Cell_Set_Member */
943
static int hf_rrlp_cell_set_Member2;              /* Cell_Set_Member */
944
static int hf_rrlp_cell_set_Member3;              /* Cell_Set_Member */
945
static int hf_rrlp_cell_set_Member4;              /* Cell_Set_Member */
946
static int hf_rrlp_cell_set_Member5;              /* Cell_Set_Member */
947
static int hf_rrlp_cell_set_Member6;              /* Cell_Set_Member */
948
static int hf_rrlp_short_ID;                      /* INTEGER_0_255 */
949
static int hf_rrlp_ec_cell_information;           /* T_ec_cell_information */
950
static int hf_rrlp_ec_RACH_Control_Parameters;    /* EC_RACH_Control_Parameters */
951
static int hf_rrlp_default_ec_RACH_Control_Parameters;  /* NULL */
952
static int hf_rrlp_peo_cell_information;          /* T_peo_cell_information */
953
static int hf_rrlp_rach_Control_Parameters;       /* RACH_Control_Parameters */
954
static int hf_rrlp_default_rach_Control_Parameters;  /* NULL */
955
static int hf_rrlp_radio_Frequency_Colour_Code;   /* INTEGER_0_7 */
956
static int hf_rrlp_network_Colour_Code;           /* INTEGER_0_7 */
957
static int hf_rrlp_base_station_Colour_Code;      /* INTEGER_0_7 */
958
static int hf_rrlp_ec_BS_CC_CHANS;                /* INTEGER_0_3 */
959
static int hf_rrlp_ec_RXLEV_ACCESS_MIN;           /* INTEGER_0_63 */
960
static int hf_rrlp_ms_TXPWR_MAX_CCH;              /* INTEGER_0_31 */
961
static int hf_rrlp_lb_MS_TXPWR_MAX_CCH;           /* INTEGER_0_31 */
962
static int hf_rrlp_cell_SELECTION_RLA_MARGIN;     /* INTEGER_0_7 */
963
static int hf_rrlp_dl_CC_Selection;               /* BOOLEAN */
964
static int hf_rrlp_bt_Threshold_DL;               /* INTEGER_0_31 */
965
static int hf_rrlp_cc2_Range_DL;                  /* INTEGER_0_31 */
966
static int hf_rrlp_cc3_Range_DL;                  /* INTEGER_0_31 */
967
static int hf_rrlp_bt_Threshold_UL;               /* INTEGER_0_31 */
968
static int hf_rrlp_cc2_Range_UL;                  /* INTEGER_0_31 */
969
static int hf_rrlp_cc3_Range_UL;                  /* INTEGER_0_31 */
970
static int hf_rrlp_cc4_Range_UL;                  /* INTEGER_0_31 */
971
static int hf_rrlp_bsPWR;                         /* INTEGER_0_63 */
972
static int hf_rrlp_dl_Signal_Strength_Step_Size;  /* INTEGER_0_3 */
973
static int hf_rrlp_ec_Reduced_PDCH_Allocation;    /* BOOLEAN */
974
static int hf_rrlp_ec_Max_Retrans;                /* INTEGER */
975
static int hf_rrlp_sm;                            /* INTEGER_0_3 */
976
static int hf_rrlp_tm;                            /* INTEGER_0_3 */
977
static int hf_rrlp_access_Timeslots;              /* BOOLEAN */
978
static int hf_rrlp_alpha;                         /* INTEGER_0_15 */
979
static int hf_rrlp_t3168;                         /* INTEGER_0_7 */
980
static int hf_rrlp_t3192;                         /* INTEGER_0_7 */
981
static int hf_rrlp_t3226;                         /* INTEGER_0_7 */
982
static int hf_rrlp_t3248;                         /* INTEGER_0_3 */
983
static int hf_rrlp_mta_BITMAP;                    /* MTA_BITMAP */
984
static int hf_rrlp_rxlev_ACCESS_MIN;              /* INTEGER_0_63 */
985
static int hf_rrlp_max_Retrans;                   /* INTEGER_0_3 */
986
static int hf_rrlp_tx_integer;                    /* INTEGER_0_15 */
987
static int hf_rrlp_mta_RLC_Data_Block_method;     /* BOOLEAN */
988
static int hf_rrlp_mta_Access_Burst_method;       /* BOOLEAN */
989
static int hf_rrlp_mta_Extended_Access_Burst_method;  /* BOOLEAN */
990
static int hf_rrlp_mta_spare;                     /* BOOLEAN */
991
static int hf_rrlp_mta_access_security_method;    /* NULL */
992
static int hf_rrlp_bss_duplication_detection_method;  /* NULL */
993
/* named bits */
994
static int hf_rrlp_GANSSPositioningMethod_gps;
995
static int hf_rrlp_GANSSPositioningMethod_galileo;
996
static int hf_rrlp_GANSSPositioningMethod_sbas;
997
static int hf_rrlp_GANSSPositioningMethod_modernizedGPS;
998
static int hf_rrlp_GANSSPositioningMethod_qzss;
999
static int hf_rrlp_GANSSPositioningMethod_glonass;
1000
static int hf_rrlp_GANSSPositioningMethod_bd;
1001
static int hf_rrlp_PositionData_e_otd;
1002
static int hf_rrlp_PositionData_gps;
1003
static int hf_rrlp_PositionData_galileo;
1004
static int hf_rrlp_PositionData_sbas;
1005
static int hf_rrlp_PositionData_modernizedGPS;
1006
static int hf_rrlp_PositionData_qzss;
1007
static int hf_rrlp_PositionData_glonass;
1008
static int hf_rrlp_PositionData_bds;
1009
static int hf_rrlp_NonGANSSPositionMethods_msAssistedEOTD;
1010
static int hf_rrlp_NonGANSSPositionMethods_msBasedEOTD;
1011
static int hf_rrlp_NonGANSSPositionMethods_msAssistedGPS;
1012
static int hf_rrlp_NonGANSSPositionMethods_msBasedGPS;
1013
static int hf_rrlp_NonGANSSPositionMethods_standaloneGPS;
1014
static int hf_rrlp_GANSSPositioningMethodTypes_msAssisted;
1015
static int hf_rrlp_GANSSPositioningMethodTypes_msBased;
1016
static int hf_rrlp_GANSSPositioningMethodTypes_standalone;
1017
static int hf_rrlp_GANSSSignals_signal1;
1018
static int hf_rrlp_GANSSSignals_signal2;
1019
static int hf_rrlp_GANSSSignals_signal3;
1020
static int hf_rrlp_GANSSSignals_signal4;
1021
static int hf_rrlp_GANSSSignals_signal5;
1022
static int hf_rrlp_GANSSSignals_signal6;
1023
static int hf_rrlp_GANSSSignals_signal7;
1024
static int hf_rrlp_GANSSSignals_signal8;
1025
static int hf_rrlp_SBASID_waas;
1026
static int hf_rrlp_SBASID_egnos;
1027
static int hf_rrlp_SBASID_masas;
1028
static int hf_rrlp_SBASID_gagan;
1029
static int hf_rrlp_MultipleMeasurementSets_eotd;
1030
static int hf_rrlp_MultipleMeasurementSets_gps;
1031
static int hf_rrlp_MultipleMeasurementSets_ganss;
1032
static int hf_rrlp_GPSAssistance_almanac;
1033
static int hf_rrlp_GPSAssistance_uTCmodel;
1034
static int hf_rrlp_GPSAssistance_ionosphericModel;
1035
static int hf_rrlp_GPSAssistance_navigationmodel;
1036
static int hf_rrlp_GPSAssistance_dGPScorrections;
1037
static int hf_rrlp_GPSAssistance_referenceLocation;
1038
static int hf_rrlp_GPSAssistance_referenceTime;
1039
static int hf_rrlp_GPSAssistance_acquisitionAssistance;
1040
static int hf_rrlp_GPSAssistance_realTimeIntegrity;
1041
static int hf_rrlp_GPSAssistance_ephemerisExtension;
1042
static int hf_rrlp_GPSAssistance_ephemerisExtensionCheck;
1043
static int hf_rrlp_GPSAssistance_gPSAcquisAssist_R12_Ext;
1044
static int hf_rrlp_CommonGANSSAssistance_referenceTime;
1045
static int hf_rrlp_CommonGANSSAssistance_referenceLocation;
1046
static int hf_rrlp_CommonGANSSAssistance_spare_bit2;
1047
static int hf_rrlp_CommonGANSSAssistance_ionosphericModel;
1048
static int hf_rrlp_CommonGANSSAssistance_addIonosphericModel;
1049
static int hf_rrlp_CommonGANSSAssistance_earthOrientationParam;
1050
static int hf_rrlp_GANSSAssistance_realTimeIntegrity;
1051
static int hf_rrlp_GANSSAssistance_differentialCorrections;
1052
static int hf_rrlp_GANSSAssistance_almanac;
1053
static int hf_rrlp_GANSSAssistance_referenceMeasurementInformation;
1054
static int hf_rrlp_GANSSAssistance_navigationModel;
1055
static int hf_rrlp_GANSSAssistance_timeModelGNSS_UTC;
1056
static int hf_rrlp_GANSSAssistance_timeModelGNSS_GNSS;
1057
static int hf_rrlp_GANSSAssistance_databitassistance;
1058
static int hf_rrlp_GANSSAssistance_ephemerisExtension;
1059
static int hf_rrlp_GANSSAssistance_ephemerisExtensionCheck;
1060
static int hf_rrlp_GANSSAssistance_addUTCmodel;
1061
static int hf_rrlp_GANSSAssistance_auxiliaryInformation;
1062
static int hf_rrlp_GANSSAssistance_gANSSRefMeasurementAssist_R12_Ext;
1063
static int hf_rrlp_GANSSAssistance_bdsDifferentialCorrections_r12;
1064
static int hf_rrlp_GANSSAssistance_bdsGridModel_r12;
1065
static int hf_rrlp_GANSSModelID_model1;
1066
static int hf_rrlp_GANSSModelID_model2;
1067
static int hf_rrlp_GANSSModelID_model3;
1068
static int hf_rrlp_GANSSModelID_model4;
1069
static int hf_rrlp_GANSSModelID_model5;
1070
static int hf_rrlp_GANSSModelID_model6;
1071
static int hf_rrlp_GANSSModelID_model7;
1072
static int hf_rrlp_GANSSModelID_model8;
1073
1074
/* Initialize the subtree pointers */
1075
static int ett_rrlp;
1076
static int ett_rrlp_ExtensionContainer;
1077
static int ett_rrlp_PrivateExtensionList;
1078
static int ett_rrlp_PrivateExtension;
1079
static int ett_rrlp_PCS_Extensions;
1080
static int ett_rrlp_PDU;
1081
static int ett_rrlp_RRLP_Component;
1082
static int ett_rrlp_MsrPosition_Req;
1083
static int ett_rrlp_MsrPosition_Rsp;
1084
static int ett_rrlp_AssistanceData;
1085
static int ett_rrlp_ProtocolError;
1086
static int ett_rrlp_PosCapability_Req;
1087
static int ett_rrlp_PosCapability_Rsp;
1088
static int ett_rrlp_PosMTA_Req;
1089
static int ett_rrlp_MultilaterationOTD_Req;
1090
static int ett_rrlp_MultilaterationOTD_Rsp;
1091
static int ett_rrlp_PositionInstruct;
1092
static int ett_rrlp_MethodType;
1093
static int ett_rrlp_AccuracyOpt;
1094
static int ett_rrlp_ReferenceAssistData;
1095
static int ett_rrlp_MsrAssistData;
1096
static int ett_rrlp_SeqOfMsrAssistBTS;
1097
static int ett_rrlp_MsrAssistBTS;
1098
static int ett_rrlp_SystemInfoAssistData;
1099
static int ett_rrlp_SeqOfSystemInfoAssistBTS;
1100
static int ett_rrlp_SystemInfoAssistBTS;
1101
static int ett_rrlp_AssistBTSData;
1102
static int ett_rrlp_CalcAssistanceBTS;
1103
static int ett_rrlp_ReferenceWGS84;
1104
static int ett_rrlp_MultipleSets;
1105
static int ett_rrlp_ReferenceIdentity;
1106
static int ett_rrlp_SeqOfReferenceIdentityType;
1107
static int ett_rrlp_ReferenceIdentityType;
1108
static int ett_rrlp_BSICAndCarrier;
1109
static int ett_rrlp_CellIDAndLAC;
1110
static int ett_rrlp_OTD_MeasureInfo;
1111
static int ett_rrlp_SeqOfOTD_MsrElementRest;
1112
static int ett_rrlp_OTD_MsrElementFirst;
1113
static int ett_rrlp_SeqOfOTD_FirstSetMsrs;
1114
static int ett_rrlp_OTD_MsrElementRest;
1115
static int ett_rrlp_SeqOfOTD_MsrsOfOtherSets;
1116
static int ett_rrlp_TOA_MeasurementsOfRef;
1117
static int ett_rrlp_OTD_MsrsOfOtherSets;
1118
static int ett_rrlp_OTD_Measurement;
1119
static int ett_rrlp_OTD_MeasurementWithID;
1120
static int ett_rrlp_EOTDQuality;
1121
static int ett_rrlp_NeighborIdentity;
1122
static int ett_rrlp_MultiFrameCarrier;
1123
static int ett_rrlp_LocationInfo;
1124
static int ett_rrlp_GPS_MeasureInfo;
1125
static int ett_rrlp_SeqOfGPS_MsrSetElement;
1126
static int ett_rrlp_GPS_MsrSetElement;
1127
static int ett_rrlp_SeqOfGPS_MsrElement;
1128
static int ett_rrlp_GPS_MsrElement;
1129
static int ett_rrlp_LocationError;
1130
static int ett_rrlp_AdditionalAssistanceData;
1131
static int ett_rrlp_GPS_AssistData;
1132
static int ett_rrlp_ControlHeader;
1133
static int ett_rrlp_ReferenceTime;
1134
static int ett_rrlp_GPSTime;
1135
static int ett_rrlp_GPSTOWAssist;
1136
static int ett_rrlp_GPSTOWAssistElement;
1137
static int ett_rrlp_GSMTime;
1138
static int ett_rrlp_RefLocation;
1139
static int ett_rrlp_DGPSCorrections;
1140
static int ett_rrlp_SeqOfSatElement;
1141
static int ett_rrlp_SatElement;
1142
static int ett_rrlp_NavigationModel;
1143
static int ett_rrlp_SeqOfNavModelElement;
1144
static int ett_rrlp_NavModelElement;
1145
static int ett_rrlp_SatStatus;
1146
static int ett_rrlp_UncompressedEphemeris;
1147
static int ett_rrlp_EphemerisSubframe1Reserved;
1148
static int ett_rrlp_IonosphericModel;
1149
static int ett_rrlp_UTCModel;
1150
static int ett_rrlp_Almanac;
1151
static int ett_rrlp_SeqOfAlmanacElement;
1152
static int ett_rrlp_AlmanacElement;
1153
static int ett_rrlp_AcquisAssist;
1154
static int ett_rrlp_SeqOfAcquisElement;
1155
static int ett_rrlp_TimeRelation;
1156
static int ett_rrlp_AcquisElement;
1157
static int ett_rrlp_AddionalDopplerFields;
1158
static int ett_rrlp_AddionalAngleFields;
1159
static int ett_rrlp_SeqOf_BadSatelliteSet;
1160
static int ett_rrlp_Rel98_MsrPosition_Req_Extension;
1161
static int ett_rrlp_Rel98_AssistanceData_Extension;
1162
static int ett_rrlp_Rel98_Ext_ExpOTD;
1163
static int ett_rrlp_MsrAssistData_R98_ExpOTD;
1164
static int ett_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD;
1165
static int ett_rrlp_MsrAssistBTS_R98_ExpOTD;
1166
static int ett_rrlp_SystemInfoAssistData_R98_ExpOTD;
1167
static int ett_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD;
1168
static int ett_rrlp_SystemInfoAssistBTS_R98_ExpOTD;
1169
static int ett_rrlp_AssistBTSData_R98_ExpOTD;
1170
static int ett_rrlp_GPSTimeAssistanceMeasurements;
1171
static int ett_rrlp_Rel_98_MsrPosition_Rsp_Extension;
1172
static int ett_rrlp_T_rel_98_Ext_MeasureInfo;
1173
static int ett_rrlp_OTD_MeasureInfo_R98_Ext;
1174
static int ett_rrlp_OTD_MsrElementFirst_R98_Ext;
1175
static int ett_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext;
1176
static int ett_rrlp_Rel_5_MsrPosition_Rsp_Extension;
1177
static int ett_rrlp_Extended_reference;
1178
static int ett_rrlp_Rel5_MsrPosition_Req_Extension;
1179
static int ett_rrlp_Rel5_AssistanceData_Extension;
1180
static int ett_rrlp_Rel_5_ProtocolError_Extension;
1181
static int ett_rrlp_Rel7_MsrPosition_Req_Extension;
1182
static int ett_rrlp_GANSSPositioningMethod;
1183
static int ett_rrlp_GANSS_AssistData;
1184
static int ett_rrlp_GANSS_ControlHeader;
1185
static int ett_rrlp_GANSSCommonAssistData;
1186
static int ett_rrlp_SeqOfGANSSGenericAssistDataElement;
1187
static int ett_rrlp_GANSSGenericAssistDataElement;
1188
static int ett_rrlp_GANSSReferenceTime;
1189
static int ett_rrlp_GANSSRefTimeInfo;
1190
static int ett_rrlp_GANSSReferenceTime_R10_Ext;
1191
static int ett_rrlp_GANSSTOD_GSMTimeAssociation;
1192
static int ett_rrlp_GANSSRefLocation;
1193
static int ett_rrlp_GANSSIonosphericModel;
1194
static int ett_rrlp_GANSSIonosphereModel;
1195
static int ett_rrlp_GANSSIonoStormFlags;
1196
static int ett_rrlp_GANSSAddIonosphericModel;
1197
static int ett_rrlp_GANSSEarthOrientParam;
1198
static int ett_rrlp_SeqOfGANSSTimeModel;
1199
static int ett_rrlp_GANSSTimeModelElement;
1200
static int ett_rrlp_SeqOfGANSSTimeModel_R10_Ext;
1201
static int ett_rrlp_GANSSTimeModelElement_R10_Ext;
1202
static int ett_rrlp_GANSSDiffCorrections;
1203
static int ett_rrlp_SeqOfSgnTypeElement;
1204
static int ett_rrlp_SgnTypeElement;
1205
static int ett_rrlp_SeqOfDGANSSSgnElement;
1206
static int ett_rrlp_DGANSSSgnElement;
1207
static int ett_rrlp_GANSSNavModel;
1208
static int ett_rrlp_SeqOfGANSSSatelliteElement;
1209
static int ett_rrlp_GANSSSatelliteElement;
1210
static int ett_rrlp_GANSSOrbitModel;
1211
static int ett_rrlp_NavModel_KeplerianSet;
1212
static int ett_rrlp_NavModel_NAVKeplerianSet;
1213
static int ett_rrlp_NavModel_CNAVKeplerianSet;
1214
static int ett_rrlp_NavModel_GLONASSecef;
1215
static int ett_rrlp_NavModel_SBASecef;
1216
static int ett_rrlp_NavModel_BDSKeplerianSet_r12;
1217
static int ett_rrlp_GANSSClockModel;
1218
static int ett_rrlp_SeqOfStandardClockModelElement;
1219
static int ett_rrlp_StandardClockModelElement;
1220
static int ett_rrlp_NAVclockModel;
1221
static int ett_rrlp_CNAVclockModel;
1222
static int ett_rrlp_GLONASSclockModel;
1223
static int ett_rrlp_SBASclockModel;
1224
static int ett_rrlp_BDSClockModel_r12;
1225
static int ett_rrlp_GANSSRealTimeIntegrity;
1226
static int ett_rrlp_SeqOfBadSignalElement;
1227
static int ett_rrlp_BadSignalElement;
1228
static int ett_rrlp_GANSSDataBitAssist;
1229
static int ett_rrlp_SeqOfGanssDataBitsElement;
1230
static int ett_rrlp_GanssDataBitsElement;
1231
static int ett_rrlp_Seq_OfGANSSDataBitsSgn;
1232
static int ett_rrlp_GANSSDataBitsSgnElement;
1233
static int ett_rrlp_SeqOf_GANSSDataBits;
1234
static int ett_rrlp_GANSSRefMeasurementAssist;
1235
static int ett_rrlp_SeqOfGANSSRefMeasurementElement;
1236
static int ett_rrlp_GANSSRefMeasurementElement;
1237
static int ett_rrlp_AdditionalDopplerFields;
1238
static int ett_rrlp_GANSSRefMeasurementAssist_R10_Ext;
1239
static int ett_rrlp_GANSSRefMeasurement_R10_Ext_Element;
1240
static int ett_rrlp_GANSSRefMeasurementAssist_R12_Ext;
1241
static int ett_rrlp_SeqOfGANSSRefMeasurementElement_R12;
1242
static int ett_rrlp_GANSSRefMeasurement_R12_Ext_Element;
1243
static int ett_rrlp_GANSSAlmanacModel;
1244
static int ett_rrlp_SeqOfGANSSAlmanacElement;
1245
static int ett_rrlp_GANSSAlmanacElement;
1246
static int ett_rrlp_Almanac_KeplerianSet;
1247
static int ett_rrlp_Almanac_NAVKeplerianSet;
1248
static int ett_rrlp_Almanac_ReducedKeplerianSet;
1249
static int ett_rrlp_Almanac_MidiAlmanacSet;
1250
static int ett_rrlp_Almanac_GlonassAlmanacSet;
1251
static int ett_rrlp_Almanac_ECEFsbasAlmanacSet;
1252
static int ett_rrlp_Almanac_BDSAlmanacSet_r12;
1253
static int ett_rrlp_GANSSAlmanacModel_R10_Ext;
1254
static int ett_rrlp_GANSSAlmanacModel_R12_Ext;
1255
static int ett_rrlp_GANSSUTCModel;
1256
static int ett_rrlp_GANSSEphemerisExtension;
1257
static int ett_rrlp_GANSSEphemerisExtensionHeader;
1258
static int ett_rrlp_GANSSEphemerisExtensionTime;
1259
static int ett_rrlp_ReferenceNavModel;
1260
static int ett_rrlp_SeqOfGANSSRefOrbit;
1261
static int ett_rrlp_GANSSReferenceOrbit;
1262
static int ett_rrlp_GANSSEphemerisDeltaMatrix;
1263
static int ett_rrlp_GANSSEphemerisDeltaEpoch;
1264
static int ett_rrlp_GANSSDeltaEpochHeader;
1265
static int ett_rrlp_GANSSDeltaElementList;
1266
static int ett_rrlp_GANSSEphemerisDeltaBitSizes;
1267
static int ett_rrlp_GANSSEphemerisDeltaScales;
1268
static int ett_rrlp_GANSSEphemerisExtensionCheck;
1269
static int ett_rrlp_GANSSSatEventsInfo;
1270
static int ett_rrlp_GANSSAddUTCModel;
1271
static int ett_rrlp_UTCmodelSet2;
1272
static int ett_rrlp_UTCmodelSet3;
1273
static int ett_rrlp_UTCmodelSet4;
1274
static int ett_rrlp_UTCmodelSet5_r12;
1275
static int ett_rrlp_GANSSAuxiliaryInformation;
1276
static int ett_rrlp_GANSS_ID1;
1277
static int ett_rrlp_GANSS_ID1_element;
1278
static int ett_rrlp_GANSS_ID3;
1279
static int ett_rrlp_GANSS_ID3_element;
1280
static int ett_rrlp_GANSSDiffCorrectionsValidityPeriod;
1281
static int ett_rrlp_DGANSSExtensionSgnTypeElement;
1282
static int ett_rrlp_SeqOfDGANSSExtensionSgnElement;
1283
static int ett_rrlp_DGANSSExtensionSgnElement;
1284
static int ett_rrlp_Add_GPS_AssistData;
1285
static int ett_rrlp_Add_GPS_ControlHeader;
1286
static int ett_rrlp_GPSClockModel;
1287
static int ett_rrlp_GPSEphemerisExtension;
1288
static int ett_rrlp_GPSEphemerisExtensionHeader;
1289
static int ett_rrlp_GPSEphemerisExtensionTime;
1290
static int ett_rrlp_SeqOfGPSRefOrbit;
1291
static int ett_rrlp_GPSReferenceOrbit;
1292
static int ett_rrlp_GPSEphemerisDeltaMatrix;
1293
static int ett_rrlp_GPSEphemerisDeltaEpoch;
1294
static int ett_rrlp_GPSDeltaEpochHeader;
1295
static int ett_rrlp_GPSDeltaElementList;
1296
static int ett_rrlp_GPSEphemerisDeltaBitSizes;
1297
static int ett_rrlp_GPSEphemerisDeltaScales;
1298
static int ett_rrlp_GPSEphemerisExtensionCheck;
1299
static int ett_rrlp_GPSSatEventsInfo;
1300
static int ett_rrlp_DGPSCorrectionsValidityPeriod;
1301
static int ett_rrlp_DGPSExtensionSatElement;
1302
static int ett_rrlp_GPSReferenceTime_R10_Ext;
1303
static int ett_rrlp_GPSAcquisAssist_R10_Ext;
1304
static int ett_rrlp_GPSAcquisAssist_R10_Ext_Element;
1305
static int ett_rrlp_GPSAcquisAssist_R12_Ext;
1306
static int ett_rrlp_SeqOfGPSAcquisAssist_R12_Ext;
1307
static int ett_rrlp_GPSAcquisAssist_R12_Ext_Element;
1308
static int ett_rrlp_GPSAlmanac_R10_Ext;
1309
static int ett_rrlp_Rel_7_MsrPosition_Rsp_Extension;
1310
static int ett_rrlp_GANSSLocationInfo;
1311
static int ett_rrlp_PositionData;
1312
static int ett_rrlp_ReferenceFrame;
1313
static int ett_rrlp_GANSSMeasureInfo;
1314
static int ett_rrlp_SeqOfGANSS_MsrSetElement;
1315
static int ett_rrlp_GANSS_MsrSetElement;
1316
static int ett_rrlp_SeqOfGANSS_MsrElement;
1317
static int ett_rrlp_GANSS_MsrElement;
1318
static int ett_rrlp_SeqOfGANSS_SgnTypeElement;
1319
static int ett_rrlp_GANSS_SgnTypeElement;
1320
static int ett_rrlp_SeqOfGANSS_SgnElement;
1321
static int ett_rrlp_GANSS_SgnElement;
1322
static int ett_rrlp_Rel7_AssistanceData_Extension;
1323
static int ett_rrlp_BDS_DiffCorrections_r12;
1324
static int ett_rrlp_BDS_SgnTypeList_r12;
1325
static int ett_rrlp_BDS_SgnTypeElement_r12;
1326
static int ett_rrlp_DBDS_CorrectionList_r12;
1327
static int ett_rrlp_DBDS_CorrectionElement_r12;
1328
static int ett_rrlp_BDS_GridModelParameter_r12;
1329
static int ett_rrlp_GridIonList_r12;
1330
static int ett_rrlp_GridIonElement_r12;
1331
static int ett_rrlp_PosCapabilities;
1332
static int ett_rrlp_NonGANSSPositionMethods;
1333
static int ett_rrlp_GANSSPositionMethods;
1334
static int ett_rrlp_GANSSPositionMethod;
1335
static int ett_rrlp_GANSSPositioningMethodTypes;
1336
static int ett_rrlp_GANSSSignals;
1337
static int ett_rrlp_SBASID;
1338
static int ett_rrlp_MultipleMeasurementSets;
1339
static int ett_rrlp_AssistanceSupported;
1340
static int ett_rrlp_GPSAssistance;
1341
static int ett_rrlp_GANSSAssistanceSet;
1342
static int ett_rrlp_CommonGANSSAssistance;
1343
static int ett_rrlp_SpecificGANSSAssistance;
1344
static int ett_rrlp_GANSSAssistanceForOneGANSS;
1345
static int ett_rrlp_GANSSAssistance;
1346
static int ett_rrlp_GANSSAdditionalAssistanceChoices;
1347
static int ett_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS;
1348
static int ett_rrlp_GANSSModelID;
1349
static int ett_rrlp_AssistanceNeeded;
1350
static int ett_rrlp_CellSets;
1351
static int ett_rrlp_CellSet;
1352
static int ett_rrlp_CellInfo;
1353
static int ett_rrlp_OTDMeasurementResults;
1354
static int ett_rrlp_OTDMeasurementInfo;
1355
static int ett_rrlp_CellType;
1356
static int ett_rrlp_RXLEVMeasurementResults;
1357
static int ett_rrlp_RXLEVMeasurementInfo;
1358
static int ett_rrlp_MTA_Method;
1359
static int ett_rrlp_Random_ID_Set;
1360
static int ett_rrlp_Extended_Access_Burst;
1361
static int ett_rrlp_Co_Sited_Cells;
1362
static int ett_rrlp_Co_Sited_Cell_Set_Member;
1363
static int ett_rrlp_Cell_Set;
1364
static int ett_rrlp_Cell_Set_Member;
1365
static int ett_rrlp_T_ec_cell_information;
1366
static int ett_rrlp_T_peo_cell_information;
1367
static int ett_rrlp_BSIC_Info;
1368
static int ett_rrlp_EC_RACH_Control_Parameters;
1369
static int ett_rrlp_RACH_Control_Parameters;
1370
static int ett_rrlp_MTA_BITMAP;
1371
static int ett_rrlp_MTA_Security;
1372
1373
/* Include constants */
1374
32
#define maxNumOfPrivateExtensions      10
1375
303
#define maxExt_GeographicalInformation 20
1376
6
#define maxGPSAssistanceData           40
1377
2
#define maxGANSSAssistanceData         40
1378
1379
1380
/*--- Cyclic dependencies ---*/
1381
1382
/* PrivateExtension/extType -> PrivateExtension/extType */
1383
static unsigned dissect_rrlp_T_extType(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
1384
1385
1386
1387
1388
static unsigned
1389
77
dissect_rrlp_OBJECT_IDENTIFIER(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1390
77
  offset = dissect_per_object_identifier(tvb, offset, actx, tree, hf_index, NULL);
1391
1392
77
  return offset;
1393
77
}
1394
1395
1396
1397
static unsigned
1398
28
dissect_rrlp_T_extType(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1399
  // PrivateExtension/extType -> PrivateExtension/extType
1400
28
  increment_dissection_depth_by_n(actx->pinfo, 1);
1401
28
  offset = dissect_per_open_type(tvb, offset, actx, tree, hf_index, NULL);
1402
1403
28
  decrement_dissection_depth_by_n(actx->pinfo, 1);
1404
28
  return offset;
1405
28
}
1406
1407
1408
static const per_sequence_t PrivateExtension_sequence[] = {
1409
  { &hf_rrlp_extId          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OBJECT_IDENTIFIER },
1410
  { &hf_rrlp_extType        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_T_extType },
1411
  { NULL, 0, 0, NULL }
1412
};
1413
1414
static unsigned
1415
77
dissect_rrlp_PrivateExtension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1416
77
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1417
77
                                   ett_rrlp_PrivateExtension, PrivateExtension_sequence);
1418
1419
77
  return offset;
1420
77
}
1421
1422
1423
static const per_sequence_t PrivateExtensionList_sequence_of[1] = {
1424
  { &hf_rrlp_PrivateExtensionList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_PrivateExtension },
1425
};
1426
1427
static unsigned
1428
32
dissect_rrlp_PrivateExtensionList(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1429
32
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
1430
32
                                                  ett_rrlp_PrivateExtensionList, PrivateExtensionList_sequence_of,
1431
32
                                                  1, maxNumOfPrivateExtensions, false);
1432
1433
32
  return offset;
1434
32
}
1435
1436
1437
static const per_sequence_t PCS_Extensions_sequence[] = {
1438
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
1439
};
1440
1441
static unsigned
1442
24
dissect_rrlp_PCS_Extensions(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1443
24
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1444
24
                                   ett_rrlp_PCS_Extensions, PCS_Extensions_sequence);
1445
1446
24
  return offset;
1447
24
}
1448
1449
1450
static const per_sequence_t ExtensionContainer_sequence[] = {
1451
  { &hf_rrlp_privateExtensionList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_PrivateExtensionList },
1452
  { &hf_rrlp_pcs_Extensions , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_PCS_Extensions },
1453
  { NULL, 0, 0, NULL }
1454
};
1455
1456
static unsigned
1457
96
dissect_rrlp_ExtensionContainer(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1458
96
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1459
96
                                   ett_rrlp_ExtensionContainer, ExtensionContainer_sequence);
1460
1461
96
  return offset;
1462
96
}
1463
1464
1465
1466
static unsigned
1467
303
dissect_rrlp_Ext_GeographicalInformation(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1468
1469
303
tvbuff_t *parameter_tvb = NULL;
1470
1471
303
    offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
1472
303
                                       1, maxExt_GeographicalInformation, false, &parameter_tvb);
1473
1474
1475
303
  if(parameter_tvb)
1476
298
  dissect_geographical_description(parameter_tvb, actx->pinfo, tree);
1477
1478
303
  return offset;
1479
303
}
1480
1481
1482
1483
static unsigned
1484
21
dissect_rrlp_VelocityEstimate(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1485
21
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
1486
21
                                       4, 7, false, NULL);
1487
1488
21
  return offset;
1489
21
}
1490
1491
1492
1493
static unsigned
1494
2.83k
dissect_rrlp_INTEGER_0_7(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1495
2.83k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1496
2.83k
                                                            0U, 7U, NULL, false);
1497
1498
2.83k
  return offset;
1499
2.83k
}
1500
1501
1502
1503
static unsigned
1504
80
dissect_rrlp_Accuracy(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1505
80
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1506
80
                                                            0U, 127U, NULL, false);
1507
1508
80
  return offset;
1509
80
}
1510
1511
1512
static const per_sequence_t AccuracyOpt_sequence[] = {
1513
  { &hf_rrlp_accuracy       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Accuracy },
1514
  { NULL, 0, 0, NULL }
1515
};
1516
1517
static unsigned
1518
24
dissect_rrlp_AccuracyOpt(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1519
24
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1520
24
                                   ett_rrlp_AccuracyOpt, AccuracyOpt_sequence);
1521
1522
24
  return offset;
1523
24
}
1524
1525
1526
static const value_string rrlp_MethodType_vals[] = {
1527
  {   0, "msAssisted" },
1528
  {   1, "msBased" },
1529
  {   2, "msBasedPref" },
1530
  {   3, "msAssistedPref" },
1531
  { 0, NULL }
1532
};
1533
1534
static const per_choice_t MethodType_choice[] = {
1535
  {   0, &hf_rrlp_msAssisted     , ASN1_NO_EXTENSIONS     , dissect_rrlp_AccuracyOpt },
1536
  {   1, &hf_rrlp_msBased        , ASN1_NO_EXTENSIONS     , dissect_rrlp_Accuracy },
1537
  {   2, &hf_rrlp_msBasedPref    , ASN1_NO_EXTENSIONS     , dissect_rrlp_Accuracy },
1538
  {   3, &hf_rrlp_msAssistedPref , ASN1_NO_EXTENSIONS     , dissect_rrlp_Accuracy },
1539
  { 0, NULL, 0, NULL }
1540
};
1541
1542
static unsigned
1543
104
dissect_rrlp_MethodType(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1544
104
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1545
104
                                 ett_rrlp_MethodType, MethodType_choice,
1546
104
                                 NULL);
1547
1548
104
  return offset;
1549
104
}
1550
1551
1552
static const value_string rrlp_PositionMethod_vals[] = {
1553
  {   0, "eotd" },
1554
  {   1, "gps" },
1555
  {   2, "gpsOrEOTD" },
1556
  { 0, NULL }
1557
};
1558
1559
1560
static unsigned
1561
104
dissect_rrlp_PositionMethod(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1562
104
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1563
104
                                     3, NULL, false, 0, NULL);
1564
1565
104
  return offset;
1566
104
}
1567
1568
1569
1570
static unsigned
1571
104
dissect_rrlp_MeasureResponseTime(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1572
104
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1573
104
                                                            0U, 7U, NULL, false);
1574
1575
104
  return offset;
1576
104
}
1577
1578
1579
static const value_string rrlp_UseMultipleSets_vals[] = {
1580
  {   0, "multipleSets" },
1581
  {   1, "oneSet" },
1582
  { 0, NULL }
1583
};
1584
1585
1586
static unsigned
1587
104
dissect_rrlp_UseMultipleSets(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1588
104
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1589
104
                                     2, NULL, false, 0, NULL);
1590
1591
104
  return offset;
1592
104
}
1593
1594
1595
static const value_string rrlp_EnvironmentCharacter_vals[] = {
1596
  {   0, "badArea" },
1597
  {   1, "notBadArea" },
1598
  {   2, "mixedArea" },
1599
  { 0, NULL }
1600
};
1601
1602
1603
static unsigned
1604
62
dissect_rrlp_EnvironmentCharacter(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1605
62
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1606
62
                                     3, NULL, true, 0, NULL);
1607
1608
62
  return offset;
1609
62
}
1610
1611
1612
static const per_sequence_t PositionInstruct_sequence[] = {
1613
  { &hf_rrlp_methodType     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MethodType },
1614
  { &hf_rrlp_positionMethod , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_PositionMethod },
1615
  { &hf_rrlp_measureResponseTime, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MeasureResponseTime },
1616
  { &hf_rrlp_useMultipleSets, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_UseMultipleSets },
1617
  { &hf_rrlp_environmentCharacter, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_EnvironmentCharacter },
1618
  { NULL, 0, 0, NULL }
1619
};
1620
1621
static unsigned
1622
104
dissect_rrlp_PositionInstruct(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1623
104
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1624
104
                                   ett_rrlp_PositionInstruct, PositionInstruct_sequence);
1625
1626
104
  return offset;
1627
104
}
1628
1629
1630
1631
static unsigned
1632
836
dissect_rrlp_BCCHCarrier(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1633
836
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1634
836
                                                            0U, 1023U, NULL, false);
1635
1636
836
  return offset;
1637
836
}
1638
1639
1640
1641
static unsigned
1642
1.37k
dissect_rrlp_BSIC(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1643
1.37k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1644
1.37k
                                                            0U, 63U, NULL, false);
1645
1646
1.37k
  return offset;
1647
1.37k
}
1648
1649
1650
static const value_string rrlp_TimeSlotScheme_vals[] = {
1651
  {   0, "equalLength" },
1652
  {   1, "variousLength" },
1653
  { 0, NULL }
1654
};
1655
1656
1657
static unsigned
1658
1.06k
dissect_rrlp_TimeSlotScheme(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1659
1.06k
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1660
1.06k
                                     2, NULL, false, 0, NULL);
1661
1662
1.06k
  return offset;
1663
1.06k
}
1664
1665
1666
1667
static unsigned
1668
37
dissect_rrlp_BTSPosition(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1669
37
  offset = dissect_rrlp_Ext_GeographicalInformation(tvb, offset, actx, tree, hf_index);
1670
1671
37
  return offset;
1672
37
}
1673
1674
1675
static const per_sequence_t ReferenceAssistData_sequence[] = {
1676
  { &hf_rrlp_bcchCarrier    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier },
1677
  { &hf_rrlp_bsic           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC },
1678
  { &hf_rrlp_timeSlotScheme , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlotScheme },
1679
  { &hf_rrlp_btsPosition    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_BTSPosition },
1680
  { NULL, 0, 0, NULL }
1681
};
1682
1683
static unsigned
1684
98
dissect_rrlp_ReferenceAssistData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1685
98
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1686
98
                                   ett_rrlp_ReferenceAssistData, ReferenceAssistData_sequence);
1687
1688
98
  return offset;
1689
98
}
1690
1691
1692
1693
static unsigned
1694
1.02k
dissect_rrlp_MultiFrameOffset(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1695
1.02k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1696
1.02k
                                                            0U, 51U, NULL, false);
1697
1698
1.02k
  return offset;
1699
1.02k
}
1700
1701
1702
1703
static unsigned
1704
969
dissect_rrlp_RoughRTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1705
969
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1706
969
                                                            0U, 1250U, NULL, false);
1707
1708
969
  return offset;
1709
969
}
1710
1711
1712
1713
static unsigned
1714
470
dissect_rrlp_FineRTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1715
470
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1716
470
                                                            0U, 255U, NULL, false);
1717
1718
470
  return offset;
1719
470
}
1720
1721
1722
1723
static unsigned
1724
936
dissect_rrlp_RelDistance(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1725
936
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1726
936
                                                            -200000, 200000U, NULL, false);
1727
1728
936
  return offset;
1729
936
}
1730
1731
1732
1733
static unsigned
1734
309
dissect_rrlp_RelativeAlt(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1735
309
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1736
309
                                                            -4000, 4000U, NULL, false);
1737
1738
309
  return offset;
1739
309
}
1740
1741
1742
static const per_sequence_t ReferenceWGS84_sequence[] = {
1743
  { &hf_rrlp_relativeNorth  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_RelDistance },
1744
  { &hf_rrlp_relativeEast   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_RelDistance },
1745
  { &hf_rrlp_relativeAlt    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_RelativeAlt },
1746
  { NULL, 0, 0, NULL }
1747
};
1748
1749
static unsigned
1750
470
dissect_rrlp_ReferenceWGS84(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1751
470
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1752
470
                                   ett_rrlp_ReferenceWGS84, ReferenceWGS84_sequence);
1753
1754
470
  return offset;
1755
470
}
1756
1757
1758
static const per_sequence_t CalcAssistanceBTS_sequence[] = {
1759
  { &hf_rrlp_fineRTD        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_FineRTD },
1760
  { &hf_rrlp_referenceWGS84 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ReferenceWGS84 },
1761
  { NULL, 0, 0, NULL }
1762
};
1763
1764
static unsigned
1765
470
dissect_rrlp_CalcAssistanceBTS(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1766
470
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1767
470
                                   ett_rrlp_CalcAssistanceBTS, CalcAssistanceBTS_sequence);
1768
1769
470
  return offset;
1770
470
}
1771
1772
1773
static const per_sequence_t MsrAssistBTS_sequence[] = {
1774
  { &hf_rrlp_bcchCarrier    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier },
1775
  { &hf_rrlp_bsic           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC },
1776
  { &hf_rrlp_multiFrameOffset, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MultiFrameOffset },
1777
  { &hf_rrlp_timeSlotScheme , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlotScheme },
1778
  { &hf_rrlp_roughRTD       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_RoughRTD },
1779
  { &hf_rrlp_calcAssistanceBTS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CalcAssistanceBTS },
1780
  { NULL, 0, 0, NULL }
1781
};
1782
1783
static unsigned
1784
370
dissect_rrlp_MsrAssistBTS(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1785
370
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1786
370
                                   ett_rrlp_MsrAssistBTS, MsrAssistBTS_sequence);
1787
1788
370
  return offset;
1789
370
}
1790
1791
1792
static const per_sequence_t SeqOfMsrAssistBTS_sequence_of[1] = {
1793
  { &hf_rrlp_SeqOfMsrAssistBTS_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MsrAssistBTS },
1794
};
1795
1796
static unsigned
1797
84
dissect_rrlp_SeqOfMsrAssistBTS(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1798
84
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
1799
84
                                                  ett_rrlp_SeqOfMsrAssistBTS, SeqOfMsrAssistBTS_sequence_of,
1800
84
                                                  1, 15, false);
1801
1802
84
  return offset;
1803
84
}
1804
1805
1806
static const per_sequence_t MsrAssistData_sequence[] = {
1807
  { &hf_rrlp_msrAssistList  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfMsrAssistBTS },
1808
  { NULL, 0, 0, NULL }
1809
};
1810
1811
static unsigned
1812
84
dissect_rrlp_MsrAssistData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1813
84
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1814
84
                                   ett_rrlp_MsrAssistData, MsrAssistData_sequence);
1815
1816
84
  return offset;
1817
84
}
1818
1819
1820
1821
static unsigned
1822
1.99k
dissect_rrlp_NULL(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1823
1.99k
  offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
1824
1825
1.99k
  return offset;
1826
1.99k
}
1827
1828
1829
static const per_sequence_t AssistBTSData_sequence[] = {
1830
  { &hf_rrlp_bsic           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC },
1831
  { &hf_rrlp_multiFrameOffset, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MultiFrameOffset },
1832
  { &hf_rrlp_timeSlotScheme , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlotScheme },
1833
  { &hf_rrlp_roughRTD       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_RoughRTD },
1834
  { &hf_rrlp_calcAssistanceBTS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CalcAssistanceBTS },
1835
  { NULL, 0, 0, NULL }
1836
};
1837
1838
static unsigned
1839
605
dissect_rrlp_AssistBTSData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1840
605
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1841
605
                                   ett_rrlp_AssistBTSData, AssistBTSData_sequence);
1842
1843
605
  return offset;
1844
605
}
1845
1846
1847
static const value_string rrlp_SystemInfoAssistBTS_vals[] = {
1848
  {   0, "notPresent" },
1849
  {   1, "present" },
1850
  { 0, NULL }
1851
};
1852
1853
static const per_choice_t SystemInfoAssistBTS_choice[] = {
1854
  {   0, &hf_rrlp_notPresent     , ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
1855
  {   1, &hf_rrlp_present        , ASN1_NO_EXTENSIONS     , dissect_rrlp_AssistBTSData },
1856
  { 0, NULL, 0, NULL }
1857
};
1858
1859
static unsigned
1860
1.98k
dissect_rrlp_SystemInfoAssistBTS(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1861
1.98k
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1862
1.98k
                                 ett_rrlp_SystemInfoAssistBTS, SystemInfoAssistBTS_choice,
1863
1.98k
                                 NULL);
1864
1865
1.98k
  return offset;
1866
1.98k
}
1867
1868
1869
static const per_sequence_t SeqOfSystemInfoAssistBTS_sequence_of[1] = {
1870
  { &hf_rrlp_SeqOfSystemInfoAssistBTS_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SystemInfoAssistBTS },
1871
};
1872
1873
static unsigned
1874
150
dissect_rrlp_SeqOfSystemInfoAssistBTS(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1875
150
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
1876
150
                                                  ett_rrlp_SeqOfSystemInfoAssistBTS, SeqOfSystemInfoAssistBTS_sequence_of,
1877
150
                                                  1, 32, false);
1878
1879
150
  return offset;
1880
150
}
1881
1882
1883
static const per_sequence_t SystemInfoAssistData_sequence[] = {
1884
  { &hf_rrlp_systemInfoAssistList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfSystemInfoAssistBTS },
1885
  { NULL, 0, 0, NULL }
1886
};
1887
1888
static unsigned
1889
150
dissect_rrlp_SystemInfoAssistData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1890
150
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1891
150
                                   ett_rrlp_SystemInfoAssistData, SystemInfoAssistData_sequence);
1892
1893
150
  return offset;
1894
150
}
1895
1896
1897
1898
static unsigned
1899
93
dissect_rrlp_GPSTOW23b(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1900
93
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1901
93
                                                            0U, 7559999U, NULL, false);
1902
1903
93
  return offset;
1904
93
}
1905
1906
1907
1908
static unsigned
1909
107
dissect_rrlp_GPSWeek(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1910
107
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1911
107
                                                            0U, 1023U, NULL, false);
1912
1913
107
  return offset;
1914
107
}
1915
1916
1917
static const per_sequence_t GPSTime_sequence[] = {
1918
  { &hf_rrlp_gpsTOW23b      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTOW23b },
1919
  { &hf_rrlp_gpsWeek        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSWeek },
1920
  { NULL, 0, 0, NULL }
1921
};
1922
1923
static unsigned
1924
66
dissect_rrlp_GPSTime(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1925
66
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1926
66
                                   ett_rrlp_GPSTime, GPSTime_sequence);
1927
1928
66
  return offset;
1929
66
}
1930
1931
1932
1933
static unsigned
1934
199
dissect_rrlp_FrameNumber(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1935
199
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1936
199
                                                            0U, 2097151U, NULL, false);
1937
1938
199
  return offset;
1939
199
}
1940
1941
1942
1943
static unsigned
1944
197
dissect_rrlp_TimeSlot(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1945
197
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1946
197
                                                            0U, 7U, NULL, false);
1947
1948
197
  return offset;
1949
197
}
1950
1951
1952
1953
static unsigned
1954
196
dissect_rrlp_BitNumber(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1955
196
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1956
196
                                                            0U, 156U, NULL, false);
1957
1958
196
  return offset;
1959
196
}
1960
1961
1962
static const per_sequence_t GSMTime_sequence[] = {
1963
  { &hf_rrlp_bcchCarrier    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier },
1964
  { &hf_rrlp_bsic           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC },
1965
  { &hf_rrlp_frameNumber    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_FrameNumber },
1966
  { &hf_rrlp_timeSlot       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlot },
1967
  { &hf_rrlp_bitNumber      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BitNumber },
1968
  { NULL, 0, 0, NULL }
1969
};
1970
1971
static unsigned
1972
43
dissect_rrlp_GSMTime(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1973
43
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1974
43
                                   ett_rrlp_GSMTime, GSMTime_sequence);
1975
1976
43
  return offset;
1977
43
}
1978
1979
1980
1981
static unsigned
1982
1.20k
dissect_rrlp_SatelliteID(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1983
1.20k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1984
1.20k
                                                            0U, 63U, NULL, false);
1985
1986
1.20k
  return offset;
1987
1.20k
}
1988
1989
1990
1991
static unsigned
1992
181
dissect_rrlp_TLMWord(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1993
181
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1994
181
                                                            0U, 16383U, NULL, false);
1995
1996
181
  return offset;
1997
181
}
1998
1999
2000
2001
static unsigned
2002
178
dissect_rrlp_AntiSpoofFlag(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2003
178
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2004
178
                                                            0U, 1U, NULL, false);
2005
2006
178
  return offset;
2007
178
}
2008
2009
2010
2011
static unsigned
2012
178
dissect_rrlp_AlertFlag(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2013
178
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2014
178
                                                            0U, 1U, NULL, false);
2015
2016
178
  return offset;
2017
178
}
2018
2019
2020
2021
static unsigned
2022
178
dissect_rrlp_TLMReservedBits(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2023
178
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2024
178
                                                            0U, 3U, NULL, false);
2025
2026
178
  return offset;
2027
178
}
2028
2029
2030
static const per_sequence_t GPSTOWAssistElement_sequence[] = {
2031
  { &hf_rrlp_satelliteID    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
2032
  { &hf_rrlp_tlmWord        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TLMWord },
2033
  { &hf_rrlp_antiSpoof      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_AntiSpoofFlag },
2034
  { &hf_rrlp_alert          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_AlertFlag },
2035
  { &hf_rrlp_tlmRsvdBits    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TLMReservedBits },
2036
  { NULL, 0, 0, NULL }
2037
};
2038
2039
static unsigned
2040
185
dissect_rrlp_GPSTOWAssistElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2041
185
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2042
185
                                   ett_rrlp_GPSTOWAssistElement, GPSTOWAssistElement_sequence);
2043
2044
185
  return offset;
2045
185
}
2046
2047
2048
static const per_sequence_t GPSTOWAssist_sequence_of[1] = {
2049
  { &hf_rrlp_GPSTOWAssist_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTOWAssistElement },
2050
};
2051
2052
static unsigned
2053
28
dissect_rrlp_GPSTOWAssist(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2054
28
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2055
28
                                                  ett_rrlp_GPSTOWAssist, GPSTOWAssist_sequence_of,
2056
28
                                                  1, 12, false);
2057
2058
28
  return offset;
2059
28
}
2060
2061
2062
static const per_sequence_t ReferenceTime_sequence[] = {
2063
  { &hf_rrlp_gpsTime        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTime },
2064
  { &hf_rrlp_gsmTime        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GSMTime },
2065
  { &hf_rrlp_gpsTowAssist   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GPSTOWAssist },
2066
  { NULL, 0, 0, NULL }
2067
};
2068
2069
static unsigned
2070
66
dissect_rrlp_ReferenceTime(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2071
66
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2072
66
                                   ett_rrlp_ReferenceTime, ReferenceTime_sequence);
2073
2074
66
  return offset;
2075
66
}
2076
2077
2078
static const per_sequence_t RefLocation_sequence[] = {
2079
  { &hf_rrlp_threeDLocation , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_Ext_GeographicalInformation },
2080
  { NULL, 0, 0, NULL }
2081
};
2082
2083
static unsigned
2084
48
dissect_rrlp_RefLocation(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2085
48
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2086
48
                                   ett_rrlp_RefLocation, RefLocation_sequence);
2087
2088
48
  return offset;
2089
48
}
2090
2091
2092
2093
static unsigned
2094
91
dissect_rrlp_INTEGER_0_604799(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2095
91
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2096
91
                                                            0U, 604799U, NULL, false);
2097
2098
91
  return offset;
2099
91
}
2100
2101
2102
2103
static unsigned
2104
198
dissect_rrlp_INTEGER_0_239(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2105
198
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2106
198
                                                            0U, 239U, NULL, false);
2107
2108
198
  return offset;
2109
198
}
2110
2111
2112
2113
static unsigned
2114
1.17k
dissect_rrlp_INTEGER_0_3(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2115
1.17k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2116
1.17k
                                                            0U, 3U, NULL, false);
2117
2118
1.17k
  return offset;
2119
1.17k
}
2120
2121
2122
2123
static unsigned
2124
707
dissect_rrlp_INTEGER_M2047_2047(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2125
707
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2126
707
                                                            -2047, 2047U, NULL, false);
2127
2128
707
  return offset;
2129
707
}
2130
2131
2132
2133
static unsigned
2134
1.06k
dissect_rrlp_INTEGER_M127_127(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2135
1.06k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2136
1.06k
                                                            -127, 127U, NULL, false);
2137
2138
1.06k
  return offset;
2139
1.06k
}
2140
2141
2142
2143
static unsigned
2144
366
dissect_rrlp_INTEGER_M7_7(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2145
366
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2146
366
                                                            -7, 7U, NULL, false);
2147
2148
366
  return offset;
2149
366
}
2150
2151
2152
static const per_sequence_t SatElement_sequence[] = {
2153
  { &hf_rrlp_satelliteID    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
2154
  { &hf_rrlp_iode           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_239 },
2155
  { &hf_rrlp_udre           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
2156
  { &hf_rrlp_pseudoRangeCor , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2047_2047 },
2157
  { &hf_rrlp_rangeRateCor   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M127_127 },
2158
  { &hf_rrlp_deltaPseudoRangeCor2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M127_127 },
2159
  { &hf_rrlp_deltaRangeRateCor2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M7_7 },
2160
  { &hf_rrlp_deltaPseudoRangeCor3, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M127_127 },
2161
  { &hf_rrlp_deltaRangeRateCor3, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M7_7 },
2162
  { NULL, 0, 0, NULL }
2163
};
2164
2165
static unsigned
2166
199
dissect_rrlp_SatElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2167
199
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2168
199
                                   ett_rrlp_SatElement, SatElement_sequence);
2169
2170
199
  return offset;
2171
199
}
2172
2173
2174
static const per_sequence_t SeqOfSatElement_sequence_of[1] = {
2175
  { &hf_rrlp_SeqOfSatElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatElement },
2176
};
2177
2178
static unsigned
2179
45
dissect_rrlp_SeqOfSatElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2180
45
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2181
45
                                                  ett_rrlp_SeqOfSatElement, SeqOfSatElement_sequence_of,
2182
45
                                                  1, 16, false);
2183
2184
45
  return offset;
2185
45
}
2186
2187
2188
static const per_sequence_t DGPSCorrections_sequence[] = {
2189
  { &hf_rrlp_gpsTOW_02      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_604799 },
2190
  { &hf_rrlp_status         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
2191
  { &hf_rrlp_satList        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfSatElement },
2192
  { NULL, 0, 0, NULL }
2193
};
2194
2195
static unsigned
2196
48
dissect_rrlp_DGPSCorrections(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2197
48
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2198
48
                                   ett_rrlp_DGPSCorrections, DGPSCorrections_sequence);
2199
2200
48
  return offset;
2201
48
}
2202
2203
2204
2205
static unsigned
2206
372
dissect_rrlp_INTEGER_0_15(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2207
372
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2208
372
                                                            0U, 15U, NULL, false);
2209
2210
372
  return offset;
2211
372
}
2212
2213
2214
2215
static unsigned
2216
1.63k
dissect_rrlp_INTEGER_0_63(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2217
1.63k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2218
1.63k
                                                            0U, 63U, NULL, false);
2219
2220
1.63k
  return offset;
2221
1.63k
}
2222
2223
2224
2225
static unsigned
2226
981
dissect_rrlp_INTEGER_0_1023(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2227
981
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2228
981
                                                            0U, 1023U, NULL, false);
2229
2230
981
  return offset;
2231
981
}
2232
2233
2234
2235
static unsigned
2236
260
dissect_rrlp_INTEGER_0_1(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2237
260
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2238
260
                                                            0U, 1U, NULL, false);
2239
2240
260
  return offset;
2241
260
}
2242
2243
2244
2245
static unsigned
2246
56
dissect_rrlp_INTEGER_0_8388607(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2247
56
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2248
56
                                                            0U, 8388607U, NULL, false);
2249
2250
56
  return offset;
2251
56
}
2252
2253
2254
2255
static unsigned
2256
290
dissect_rrlp_INTEGER_0_16777215(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2257
290
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2258
290
                                                            0U, 16777215U, NULL, false);
2259
2260
290
  return offset;
2261
290
}
2262
2263
2264
2265
static unsigned
2266
797
dissect_rrlp_INTEGER_0_65535(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2267
797
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2268
797
                                                            0U, 65535U, NULL, false);
2269
2270
797
  return offset;
2271
797
}
2272
2273
2274
static const per_sequence_t EphemerisSubframe1Reserved_sequence[] = {
2275
  { &hf_rrlp_reserved1      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_8388607 },
2276
  { &hf_rrlp_reserved2      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 },
2277
  { &hf_rrlp_reserved3      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 },
2278
  { &hf_rrlp_reserved4      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
2279
  { NULL, 0, 0, NULL }
2280
};
2281
2282
static unsigned
2283
56
dissect_rrlp_EphemerisSubframe1Reserved(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2284
56
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2285
56
                                   ett_rrlp_EphemerisSubframe1Reserved, EphemerisSubframe1Reserved_sequence);
2286
2287
56
  return offset;
2288
56
}
2289
2290
2291
2292
static unsigned
2293
718
dissect_rrlp_INTEGER_M128_127(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2294
718
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2295
718
                                                            -128, 127U, NULL, false);
2296
2297
718
  return offset;
2298
718
}
2299
2300
2301
2302
static unsigned
2303
216
dissect_rrlp_INTEGER_0_37799(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2304
216
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2305
216
                                                            0U, 37799U, NULL, false);
2306
2307
216
  return offset;
2308
216
}
2309
2310
2311
2312
static unsigned
2313
3.41k
dissect_rrlp_INTEGER_M32768_32767(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2314
3.41k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2315
3.41k
                                                            -32768, 32767U, NULL, false);
2316
2317
3.41k
  return offset;
2318
3.41k
}
2319
2320
2321
2322
static unsigned
2323
136
dissect_rrlp_INTEGER_M2097152_2097151(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2324
136
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2325
136
                                                            -2097152, 2097151U, NULL, false);
2326
2327
136
  return offset;
2328
136
}
2329
2330
2331
2332
static unsigned
2333
1.28k
dissect_rrlp_INTEGER_M2147483648_2147483647(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2334
1.28k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2335
1.28k
                                                            INT32_MIN, 2147483647U, NULL, false);
2336
2337
1.28k
  return offset;
2338
1.28k
}
2339
2340
2341
2342
static unsigned
2343
600
dissect_rrlp_INTEGER_0_4294967295(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2344
600
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2345
600
                                                            0U, 4294967295U, NULL, false);
2346
2347
600
  return offset;
2348
600
}
2349
2350
2351
2352
static unsigned
2353
786
dissect_rrlp_INTEGER_0_31(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2354
786
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2355
786
                                                            0U, 31U, NULL, false);
2356
2357
786
  return offset;
2358
786
}
2359
2360
2361
2362
static unsigned
2363
929
dissect_rrlp_INTEGER_M8388608_8388607(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2364
929
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2365
929
                                                            -8388608, 8388607U, NULL, false);
2366
2367
929
  return offset;
2368
929
}
2369
2370
2371
2372
static unsigned
2373
301
dissect_rrlp_INTEGER_M8192_8191(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2374
301
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2375
301
                                                            -8192, 8191U, NULL, false);
2376
2377
301
  return offset;
2378
301
}
2379
2380
2381
static const per_sequence_t UncompressedEphemeris_sequence[] = {
2382
  { &hf_rrlp_ephemCodeOnL2  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
2383
  { &hf_rrlp_ephemURA       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
2384
  { &hf_rrlp_ephemSVhealth  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
2385
  { &hf_rrlp_ephemIODC      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1023 },
2386
  { &hf_rrlp_ephemL2Pflag   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
2387
  { &hf_rrlp_ephemSF1Rsvd   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_EphemerisSubframe1Reserved },
2388
  { &hf_rrlp_ephemTgd       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2389
  { &hf_rrlp_ephemToc       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 },
2390
  { &hf_rrlp_ephemAF2       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2391
  { &hf_rrlp_ephemAF1       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2392
  { &hf_rrlp_ephemAF0       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 },
2393
  { &hf_rrlp_ephemCrs       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2394
  { &hf_rrlp_ephemDeltaN    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2395
  { &hf_rrlp_ephemM0        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
2396
  { &hf_rrlp_ephemCuc       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2397
  { &hf_rrlp_ephemE         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
2398
  { &hf_rrlp_ephemCus       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2399
  { &hf_rrlp_ephemAPowerHalf, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
2400
  { &hf_rrlp_ephemToe       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 },
2401
  { &hf_rrlp_ephemFitFlag   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
2402
  { &hf_rrlp_ephemAODA      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
2403
  { &hf_rrlp_ephemCic       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2404
  { &hf_rrlp_ephemOmegaA0   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
2405
  { &hf_rrlp_ephemCis       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2406
  { &hf_rrlp_ephemI0        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
2407
  { &hf_rrlp_ephemCrc       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2408
  { &hf_rrlp_ephemW         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
2409
  { &hf_rrlp_ephemOmegaADot , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
2410
  { &hf_rrlp_ephemIDot      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 },
2411
  { NULL, 0, 0, NULL }
2412
};
2413
2414
static unsigned
2415
56
dissect_rrlp_UncompressedEphemeris(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2416
56
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2417
56
                                   ett_rrlp_UncompressedEphemeris, UncompressedEphemeris_sequence);
2418
2419
56
  return offset;
2420
56
}
2421
2422
2423
static const value_string rrlp_SatStatus_vals[] = {
2424
  {   0, "newSatelliteAndModelUC" },
2425
  {   1, "oldSatelliteAndModel" },
2426
  {   2, "newNaviModelUC" },
2427
  { 0, NULL }
2428
};
2429
2430
static const per_choice_t SatStatus_choice[] = {
2431
  {   0, &hf_rrlp_newSatelliteAndModelUC, ASN1_EXTENSION_ROOT    , dissect_rrlp_UncompressedEphemeris },
2432
  {   1, &hf_rrlp_oldSatelliteAndModel, ASN1_EXTENSION_ROOT    , dissect_rrlp_NULL },
2433
  {   2, &hf_rrlp_newNaviModelUC , ASN1_EXTENSION_ROOT    , dissect_rrlp_UncompressedEphemeris },
2434
  { 0, NULL, 0, NULL }
2435
};
2436
2437
static unsigned
2438
92
dissect_rrlp_SatStatus(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2439
92
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2440
92
                                 ett_rrlp_SatStatus, SatStatus_choice,
2441
92
                                 NULL);
2442
2443
92
  return offset;
2444
92
}
2445
2446
2447
static const per_sequence_t NavModelElement_sequence[] = {
2448
  { &hf_rrlp_satelliteID    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
2449
  { &hf_rrlp_satStatus      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatStatus },
2450
  { NULL, 0, 0, NULL }
2451
};
2452
2453
static unsigned
2454
94
dissect_rrlp_NavModelElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2455
94
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2456
94
                                   ett_rrlp_NavModelElement, NavModelElement_sequence);
2457
2458
94
  return offset;
2459
94
}
2460
2461
2462
static const per_sequence_t SeqOfNavModelElement_sequence_of[1] = {
2463
  { &hf_rrlp_SeqOfNavModelElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_NavModelElement },
2464
};
2465
2466
static unsigned
2467
35
dissect_rrlp_SeqOfNavModelElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2468
35
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2469
35
                                                  ett_rrlp_SeqOfNavModelElement, SeqOfNavModelElement_sequence_of,
2470
35
                                                  1, 16, false);
2471
2472
35
  return offset;
2473
35
}
2474
2475
2476
static const per_sequence_t NavigationModel_sequence[] = {
2477
  { &hf_rrlp_navModelList   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfNavModelElement },
2478
  { NULL, 0, 0, NULL }
2479
};
2480
2481
static unsigned
2482
35
dissect_rrlp_NavigationModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2483
35
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2484
35
                                   ett_rrlp_NavigationModel, NavigationModel_sequence);
2485
2486
35
  return offset;
2487
35
}
2488
2489
2490
static const per_sequence_t IonosphericModel_sequence[] = {
2491
  { &hf_rrlp_alfa0          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2492
  { &hf_rrlp_alfa1          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2493
  { &hf_rrlp_alfa2          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2494
  { &hf_rrlp_alfa3          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2495
  { &hf_rrlp_beta0          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2496
  { &hf_rrlp_beta1          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2497
  { &hf_rrlp_beta2          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2498
  { &hf_rrlp_beta3          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2499
  { NULL, 0, 0, NULL }
2500
};
2501
2502
static unsigned
2503
21
dissect_rrlp_IonosphericModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2504
21
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2505
21
                                   ett_rrlp_IonosphericModel, IonosphericModel_sequence);
2506
2507
21
  return offset;
2508
21
}
2509
2510
2511
2512
static unsigned
2513
850
dissect_rrlp_INTEGER_0_255(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2514
850
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2515
850
                                                            0U, 255U, NULL, false);
2516
2517
850
  return offset;
2518
850
}
2519
2520
2521
static const per_sequence_t UTCModel_sequence[] = {
2522
  { &hf_rrlp_utcA1          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
2523
  { &hf_rrlp_utcA0          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
2524
  { &hf_rrlp_utcTot         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
2525
  { &hf_rrlp_utcWNt         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
2526
  { &hf_rrlp_utcDeltaTls    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2527
  { &hf_rrlp_utcWNlsf       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
2528
  { &hf_rrlp_utcDN          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2529
  { &hf_rrlp_utcDeltaTlsf   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
2530
  { NULL, 0, 0, NULL }
2531
};
2532
2533
static unsigned
2534
30
dissect_rrlp_UTCModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2535
30
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2536
30
                                   ett_rrlp_UTCModel, UTCModel_sequence);
2537
2538
30
  return offset;
2539
30
}
2540
2541
2542
2543
static unsigned
2544
610
dissect_rrlp_INTEGER_M1024_1023(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2545
610
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2546
610
                                                            -1024, 1023U, NULL, false);
2547
2548
610
  return offset;
2549
610
}
2550
2551
2552
static const per_sequence_t AlmanacElement_sequence[] = {
2553
  { &hf_rrlp_satelliteID    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
2554
  { &hf_rrlp_almanacE       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
2555
  { &hf_rrlp_alamanacToa    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
2556
  { &hf_rrlp_almanacKsii    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2557
  { &hf_rrlp_almanacOmegaDot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
2558
  { &hf_rrlp_almanacSVhealth, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
2559
  { &hf_rrlp_almanacAPowerHalf, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 },
2560
  { &hf_rrlp_almanacOmega0  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
2561
  { &hf_rrlp_almanacW       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
2562
  { &hf_rrlp_almanacM0      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
2563
  { &hf_rrlp_almanacAF0     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
2564
  { &hf_rrlp_almanacAF1     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
2565
  { NULL, 0, 0, NULL }
2566
};
2567
2568
static unsigned
2569
178
dissect_rrlp_AlmanacElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2570
178
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2571
178
                                   ett_rrlp_AlmanacElement, AlmanacElement_sequence);
2572
2573
178
  return offset;
2574
178
}
2575
2576
2577
static const per_sequence_t SeqOfAlmanacElement_sequence_of[1] = {
2578
  { &hf_rrlp_SeqOfAlmanacElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_AlmanacElement },
2579
};
2580
2581
static unsigned
2582
33
dissect_rrlp_SeqOfAlmanacElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2583
33
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2584
33
                                                  ett_rrlp_SeqOfAlmanacElement, SeqOfAlmanacElement_sequence_of,
2585
33
                                                  1, 64, false);
2586
2587
33
  return offset;
2588
33
}
2589
2590
2591
static const per_sequence_t Almanac_sequence[] = {
2592
  { &hf_rrlp_alamanacWNa    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
2593
  { &hf_rrlp_almanacList    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfAlmanacElement },
2594
  { NULL, 0, 0, NULL }
2595
};
2596
2597
static unsigned
2598
33
dissect_rrlp_Almanac(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2599
33
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2600
33
                                   ett_rrlp_Almanac, Almanac_sequence);
2601
2602
33
  return offset;
2603
33
}
2604
2605
2606
static const per_sequence_t TimeRelation_sequence[] = {
2607
  { &hf_rrlp_gpsTOW_03      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTOW23b },
2608
  { &hf_rrlp_gsmTime        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GSMTime },
2609
  { NULL, 0, 0, NULL }
2610
};
2611
2612
static unsigned
2613
27
dissect_rrlp_TimeRelation(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2614
27
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2615
27
                                   ett_rrlp_TimeRelation, TimeRelation_sequence);
2616
2617
27
  return offset;
2618
27
}
2619
2620
2621
2622
static unsigned
2623
302
dissect_rrlp_INTEGER_M2048_2047(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2624
302
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2625
302
                                                            -2048, 2047U, NULL, false);
2626
2627
302
  return offset;
2628
302
}
2629
2630
2631
static const per_sequence_t AddionalDopplerFields_sequence[] = {
2632
  { &hf_rrlp_doppler1       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
2633
  { &hf_rrlp_dopplerUncertainty, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
2634
  { NULL, 0, 0, NULL }
2635
};
2636
2637
static unsigned
2638
105
dissect_rrlp_AddionalDopplerFields(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2639
105
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2640
105
                                   ett_rrlp_AddionalDopplerFields, AddionalDopplerFields_sequence);
2641
2642
105
  return offset;
2643
105
}
2644
2645
2646
2647
static unsigned
2648
511
dissect_rrlp_INTEGER_0_1022(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2649
511
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2650
511
                                                            0U, 1022U, NULL, false);
2651
2652
511
  return offset;
2653
511
}
2654
2655
2656
2657
static unsigned
2658
180
dissect_rrlp_INTEGER_0_19(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2659
180
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2660
180
                                                            0U, 19U, NULL, false);
2661
2662
180
  return offset;
2663
180
}
2664
2665
2666
static const per_sequence_t AddionalAngleFields_sequence[] = {
2667
  { &hf_rrlp_azimuth        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
2668
  { &hf_rrlp_elevation      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
2669
  { NULL, 0, 0, NULL }
2670
};
2671
2672
static unsigned
2673
117
dissect_rrlp_AddionalAngleFields(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2674
117
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2675
117
                                   ett_rrlp_AddionalAngleFields, AddionalAngleFields_sequence);
2676
2677
117
  return offset;
2678
117
}
2679
2680
2681
static const per_sequence_t AcquisElement_sequence[] = {
2682
  { &hf_rrlp_svid           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
2683
  { &hf_rrlp_doppler0       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2048_2047 },
2684
  { &hf_rrlp_addionalDoppler, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_AddionalDopplerFields },
2685
  { &hf_rrlp_codePhase      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1022 },
2686
  { &hf_rrlp_intCodePhase   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_19 },
2687
  { &hf_rrlp_gpsBitNumber   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
2688
  { &hf_rrlp_codePhaseSearchWindow, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
2689
  { &hf_rrlp_addionalAngle  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_AddionalAngleFields },
2690
  { NULL, 0, 0, NULL }
2691
};
2692
2693
static unsigned
2694
185
dissect_rrlp_AcquisElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2695
185
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2696
185
                                   ett_rrlp_AcquisElement, AcquisElement_sequence);
2697
2698
185
  return offset;
2699
185
}
2700
2701
2702
static const per_sequence_t SeqOfAcquisElement_sequence_of[1] = {
2703
  { &hf_rrlp_SeqOfAcquisElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_AcquisElement },
2704
};
2705
2706
static unsigned
2707
26
dissect_rrlp_SeqOfAcquisElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2708
26
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2709
26
                                                  ett_rrlp_SeqOfAcquisElement, SeqOfAcquisElement_sequence_of,
2710
26
                                                  1, 16, false);
2711
2712
26
  return offset;
2713
26
}
2714
2715
2716
static const per_sequence_t AcquisAssist_sequence[] = {
2717
  { &hf_rrlp_timeRelation   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeRelation },
2718
  { &hf_rrlp_acquisList     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfAcquisElement },
2719
  { NULL, 0, 0, NULL }
2720
};
2721
2722
static unsigned
2723
27
dissect_rrlp_AcquisAssist(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2724
27
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2725
27
                                   ett_rrlp_AcquisAssist, AcquisAssist_sequence);
2726
2727
27
  return offset;
2728
27
}
2729
2730
2731
static const per_sequence_t SeqOf_BadSatelliteSet_sequence_of[1] = {
2732
  { &hf_rrlp_SeqOf_BadSatelliteSet_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
2733
};
2734
2735
static unsigned
2736
22
dissect_rrlp_SeqOf_BadSatelliteSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2737
22
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2738
22
                                                  ett_rrlp_SeqOf_BadSatelliteSet, SeqOf_BadSatelliteSet_sequence_of,
2739
22
                                                  1, 16, false);
2740
2741
22
  return offset;
2742
22
}
2743
2744
2745
static const per_sequence_t ControlHeader_sequence[] = {
2746
  { &hf_rrlp_referenceTime  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_ReferenceTime },
2747
  { &hf_rrlp_refLocation    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_RefLocation },
2748
  { &hf_rrlp_dgpsCorrections, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_DGPSCorrections },
2749
  { &hf_rrlp_navigationModel, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_NavigationModel },
2750
  { &hf_rrlp_ionosphericModel, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_IonosphericModel },
2751
  { &hf_rrlp_utcModel       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_UTCModel },
2752
  { &hf_rrlp_almanac        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Almanac },
2753
  { &hf_rrlp_acquisAssist   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_AcquisAssist },
2754
  { &hf_rrlp_realTimeIntegrity, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SeqOf_BadSatelliteSet },
2755
  { NULL, 0, 0, NULL }
2756
};
2757
2758
static unsigned
2759
164
dissect_rrlp_ControlHeader(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2760
164
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2761
164
                                   ett_rrlp_ControlHeader, ControlHeader_sequence);
2762
2763
164
  return offset;
2764
164
}
2765
2766
2767
static const per_sequence_t GPS_AssistData_sequence[] = {
2768
  { &hf_rrlp_controlHeader  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ControlHeader },
2769
  { NULL, 0, 0, NULL }
2770
};
2771
2772
static unsigned
2773
164
dissect_rrlp_GPS_AssistData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2774
164
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2775
164
                                   ett_rrlp_GPS_AssistData, GPS_AssistData_sequence);
2776
2777
164
  return offset;
2778
164
}
2779
2780
2781
2782
static unsigned
2783
449
dissect_rrlp_ExpectedOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2784
449
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2785
449
                                                            0U, 1250U, NULL, false);
2786
2787
449
  return offset;
2788
449
}
2789
2790
2791
2792
static unsigned
2793
442
dissect_rrlp_ExpOTDUncertainty(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2794
442
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2795
442
                                                            0U, 7U, NULL, false);
2796
2797
442
  return offset;
2798
442
}
2799
2800
2801
static const per_sequence_t MsrAssistBTS_R98_ExpOTD_sequence[] = {
2802
  { &hf_rrlp_expectedOTD    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ExpectedOTD },
2803
  { &hf_rrlp_expOTDUncertainty, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ExpOTDUncertainty },
2804
  { NULL, 0, 0, NULL }
2805
};
2806
2807
static unsigned
2808
252
dissect_rrlp_MsrAssistBTS_R98_ExpOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2809
252
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2810
252
                                   ett_rrlp_MsrAssistBTS_R98_ExpOTD, MsrAssistBTS_R98_ExpOTD_sequence);
2811
2812
252
  return offset;
2813
252
}
2814
2815
2816
static const per_sequence_t SeqOfMsrAssistBTS_R98_ExpOTD_sequence_of[1] = {
2817
  { &hf_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MsrAssistBTS_R98_ExpOTD },
2818
};
2819
2820
static unsigned
2821
27
dissect_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2822
27
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2823
27
                                                  ett_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD, SeqOfMsrAssistBTS_R98_ExpOTD_sequence_of,
2824
27
                                                  1, 15, false);
2825
2826
27
  return offset;
2827
27
}
2828
2829
2830
static const per_sequence_t MsrAssistData_R98_ExpOTD_sequence[] = {
2831
  { &hf_rrlp_msrAssistList_R98_ExpOTD, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD },
2832
  { NULL, 0, 0, NULL }
2833
};
2834
2835
static unsigned
2836
27
dissect_rrlp_MsrAssistData_R98_ExpOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2837
27
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2838
27
                                   ett_rrlp_MsrAssistData_R98_ExpOTD, MsrAssistData_R98_ExpOTD_sequence);
2839
2840
27
  return offset;
2841
27
}
2842
2843
2844
static const per_sequence_t AssistBTSData_R98_ExpOTD_sequence[] = {
2845
  { &hf_rrlp_expectedOTD    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ExpectedOTD },
2846
  { &hf_rrlp_expOTDuncertainty, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ExpOTDUncertainty },
2847
  { NULL, 0, 0, NULL }
2848
};
2849
2850
static unsigned
2851
197
dissect_rrlp_AssistBTSData_R98_ExpOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2852
197
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2853
197
                                   ett_rrlp_AssistBTSData_R98_ExpOTD, AssistBTSData_R98_ExpOTD_sequence);
2854
2855
197
  return offset;
2856
197
}
2857
2858
2859
static const value_string rrlp_SystemInfoAssistBTS_R98_ExpOTD_vals[] = {
2860
  {   0, "notPresent" },
2861
  {   1, "present" },
2862
  { 0, NULL }
2863
};
2864
2865
static const per_choice_t SystemInfoAssistBTS_R98_ExpOTD_choice[] = {
2866
  {   0, &hf_rrlp_notPresent     , ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
2867
  {   1, &hf_rrlp_present_01     , ASN1_NO_EXTENSIONS     , dissect_rrlp_AssistBTSData_R98_ExpOTD },
2868
  { 0, NULL, 0, NULL }
2869
};
2870
2871
static unsigned
2872
503
dissect_rrlp_SystemInfoAssistBTS_R98_ExpOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2873
503
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2874
503
                                 ett_rrlp_SystemInfoAssistBTS_R98_ExpOTD, SystemInfoAssistBTS_R98_ExpOTD_choice,
2875
503
                                 NULL);
2876
2877
503
  return offset;
2878
503
}
2879
2880
2881
static const per_sequence_t SeqOfSystemInfoAssistBTS_R98_ExpOTD_sequence_of[1] = {
2882
  { &hf_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SystemInfoAssistBTS_R98_ExpOTD },
2883
};
2884
2885
static unsigned
2886
26
dissect_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2887
26
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2888
26
                                                  ett_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD, SeqOfSystemInfoAssistBTS_R98_ExpOTD_sequence_of,
2889
26
                                                  1, 32, false);
2890
2891
26
  return offset;
2892
26
}
2893
2894
2895
static const per_sequence_t SystemInfoAssistData_R98_ExpOTD_sequence[] = {
2896
  { &hf_rrlp_systemInfoAssistListR98_ExpOTD, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD },
2897
  { NULL, 0, 0, NULL }
2898
};
2899
2900
static unsigned
2901
26
dissect_rrlp_SystemInfoAssistData_R98_ExpOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2902
26
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2903
26
                                   ett_rrlp_SystemInfoAssistData_R98_ExpOTD, SystemInfoAssistData_R98_ExpOTD_sequence);
2904
2905
26
  return offset;
2906
26
}
2907
2908
2909
static const per_sequence_t Rel98_Ext_ExpOTD_sequence[] = {
2910
  { &hf_rrlp_msrAssistData_R98_ExpOTD, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_MsrAssistData_R98_ExpOTD },
2911
  { &hf_rrlp_systemInfoAssistData_R98_ExpOTD, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SystemInfoAssistData_R98_ExpOTD },
2912
  { NULL, 0, 0, NULL }
2913
};
2914
2915
static unsigned
2916
34
dissect_rrlp_Rel98_Ext_ExpOTD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2917
34
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2918
34
                                   ett_rrlp_Rel98_Ext_ExpOTD, Rel98_Ext_ExpOTD_sequence);
2919
2920
34
  return offset;
2921
34
}
2922
2923
2924
2925
static unsigned
2926
4
dissect_rrlp_GPSReferenceTimeUncertainty(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2927
4
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2928
4
                                                            0U, 127U, NULL, false);
2929
2930
4
  return offset;
2931
4
}
2932
2933
2934
static const per_sequence_t Rel98_MsrPosition_Req_Extension_sequence[] = {
2935
  { &hf_rrlp_rel98_Ext_ExpOTD, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_Rel98_Ext_ExpOTD },
2936
  { &hf_rrlp_gpsTimeAssistanceMeasurementRequest, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_NULL },
2937
  { &hf_rrlp_gpsReferenceTimeUncertainty, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GPSReferenceTimeUncertainty },
2938
  { NULL, 0, 0, NULL }
2939
};
2940
2941
static unsigned
2942
12
dissect_rrlp_Rel98_MsrPosition_Req_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2943
12
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2944
12
                                   ett_rrlp_Rel98_MsrPosition_Req_Extension, Rel98_MsrPosition_Req_Extension_sequence);
2945
2946
12
  return offset;
2947
12
}
2948
2949
2950
2951
static unsigned
2952
44
dissect_rrlp_INTEGER_0_262143(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2953
44
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2954
44
                                                            0U, 262143U, NULL, false);
2955
2956
44
  return offset;
2957
44
}
2958
2959
2960
static const per_sequence_t Extended_reference_sequence[] = {
2961
  { &hf_rrlp_smlc_code      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
2962
  { &hf_rrlp_transaction_ID , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_262143 },
2963
  { NULL, 0, 0, NULL }
2964
};
2965
2966
static unsigned
2967
45
dissect_rrlp_Extended_reference(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2968
45
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2969
45
                                   ett_rrlp_Extended_reference, Extended_reference_sequence);
2970
2971
45
  return offset;
2972
45
}
2973
2974
2975
static const per_sequence_t Rel5_MsrPosition_Req_Extension_sequence[] = {
2976
  { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_Extended_reference },
2977
  { NULL, 0, 0, NULL }
2978
};
2979
2980
static unsigned
2981
4
dissect_rrlp_Rel5_MsrPosition_Req_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2982
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2983
4
                                   ett_rrlp_Rel5_MsrPosition_Req_Extension, Rel5_MsrPosition_Req_Extension_sequence);
2984
2985
4
  return offset;
2986
4
}
2987
2988
2989
static int * const GANSSPositioningMethod_bits[] = {
2990
  &hf_rrlp_GANSSPositioningMethod_gps,
2991
  &hf_rrlp_GANSSPositioningMethod_galileo,
2992
  &hf_rrlp_GANSSPositioningMethod_sbas,
2993
  &hf_rrlp_GANSSPositioningMethod_modernizedGPS,
2994
  &hf_rrlp_GANSSPositioningMethod_qzss,
2995
  &hf_rrlp_GANSSPositioningMethod_glonass,
2996
  &hf_rrlp_GANSSPositioningMethod_bd,
2997
  NULL
2998
};
2999
3000
static unsigned
3001
3
dissect_rrlp_GANSSPositioningMethod(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3002
3
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
3003
3
                                     2, 16, false, GANSSPositioningMethod_bits, 7, NULL, NULL);
3004
3005
3
  return offset;
3006
3
}
3007
3008
3009
3010
static unsigned
3011
274
dissect_rrlp_INTEGER_0_8191(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3012
274
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3013
274
                                                            0U, 8191U, NULL, false);
3014
3015
274
  return offset;
3016
274
}
3017
3018
3019
3020
static unsigned
3021
273
dissect_rrlp_GANSSTOD(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3022
273
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3023
273
                                                            0U, 86399U, NULL, false);
3024
3025
273
  return offset;
3026
273
}
3027
3028
3029
3030
static unsigned
3031
61
dissect_rrlp_GANSSTODUncertainty(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3032
61
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3033
61
                                                            0U, 127U, NULL, false);
3034
3035
61
  return offset;
3036
61
}
3037
3038
3039
static const per_sequence_t GANSSRefTimeInfo_sequence[] = {
3040
  { &hf_rrlp_ganssDay       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_8191 },
3041
  { &hf_rrlp_ganssTOD       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSTOD },
3042
  { &hf_rrlp_ganssTODUncertainty, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GANSSTODUncertainty },
3043
  { &hf_rrlp_ganssTimeID    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
3044
  { NULL, 0, 0, NULL }
3045
};
3046
3047
static unsigned
3048
163
dissect_rrlp_GANSSRefTimeInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3049
163
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3050
163
                                   ett_rrlp_GANSSRefTimeInfo, GANSSRefTimeInfo_sequence);
3051
3052
163
  return offset;
3053
163
}
3054
3055
3056
3057
static unsigned
3058
79
dissect_rrlp_FrameDrift(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3059
79
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3060
79
                                                            -64, 63U, NULL, false);
3061
3062
79
  return offset;
3063
79
}
3064
3065
3066
static const per_sequence_t GANSSTOD_GSMTimeAssociation_sequence[] = {
3067
  { &hf_rrlp_bcchCarrier    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier },
3068
  { &hf_rrlp_bsic           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC },
3069
  { &hf_rrlp_frameNumber    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_FrameNumber },
3070
  { &hf_rrlp_timeSlot       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TimeSlot },
3071
  { &hf_rrlp_bitNumber      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BitNumber },
3072
  { &hf_rrlp_frameDrift     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_FrameDrift },
3073
  { NULL, 0, 0, NULL }
3074
};
3075
3076
static unsigned
3077
156
dissect_rrlp_GANSSTOD_GSMTimeAssociation(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3078
156
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3079
156
                                   ett_rrlp_GANSSTOD_GSMTimeAssociation, GANSSTOD_GSMTimeAssociation_sequence);
3080
3081
156
  return offset;
3082
156
}
3083
3084
3085
static const per_sequence_t GANSSReferenceTime_sequence[] = {
3086
  { &hf_rrlp_ganssRefTimeInfo, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSRefTimeInfo },
3087
  { &hf_rrlp_ganssTOD_GSMTimeAssociation, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GANSSTOD_GSMTimeAssociation },
3088
  { NULL, 0, 0, NULL }
3089
};
3090
3091
static unsigned
3092
163
dissect_rrlp_GANSSReferenceTime(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3093
163
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3094
163
                                   ett_rrlp_GANSSReferenceTime, GANSSReferenceTime_sequence);
3095
3096
163
  return offset;
3097
163
}
3098
3099
3100
static const per_sequence_t GANSSRefLocation_sequence[] = {
3101
  { &hf_rrlp_threeDLocation , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_Ext_GeographicalInformation },
3102
  { NULL, 0, 0, NULL }
3103
};
3104
3105
static unsigned
3106
163
dissect_rrlp_GANSSRefLocation(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3107
163
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3108
163
                                   ett_rrlp_GANSSRefLocation, GANSSRefLocation_sequence);
3109
3110
163
  return offset;
3111
163
}
3112
3113
3114
3115
static unsigned
3116
136
dissect_rrlp_INTEGER_0_2047(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3117
136
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3118
136
                                                            0U, 2047U, NULL, false);
3119
3120
136
  return offset;
3121
136
}
3122
3123
3124
static const per_sequence_t GANSSIonosphereModel_sequence[] = {
3125
  { &hf_rrlp_ai0            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2047 },
3126
  { &hf_rrlp_ai1            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
3127
  { &hf_rrlp_ai2            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 },
3128
  { NULL, 0, 0, NULL }
3129
};
3130
3131
static unsigned
3132
7
dissect_rrlp_GANSSIonosphereModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3133
7
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3134
7
                                   ett_rrlp_GANSSIonosphereModel, GANSSIonosphereModel_sequence);
3135
3136
7
  return offset;
3137
7
}
3138
3139
3140
static const per_sequence_t GANSSIonoStormFlags_sequence[] = {
3141
  { &hf_rrlp_ionoStormFlag1 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
3142
  { &hf_rrlp_ionoStormFlag2 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
3143
  { &hf_rrlp_ionoStormFlag3 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
3144
  { &hf_rrlp_ionoStormFlag4 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
3145
  { &hf_rrlp_ionoStormFlag5 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
3146
  { NULL, 0, 0, NULL }
3147
};
3148
3149
static unsigned
3150
2
dissect_rrlp_GANSSIonoStormFlags(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3151
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3152
2
                                   ett_rrlp_GANSSIonoStormFlags, GANSSIonoStormFlags_sequence);
3153
3154
2
  return offset;
3155
2
}
3156
3157
3158
static const per_sequence_t GANSSIonosphericModel_sequence[] = {
3159
  { &hf_rrlp_ganssIonoModel , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSIonosphereModel },
3160
  { &hf_rrlp_ganssIonoStormFlags, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSIonoStormFlags },
3161
  { NULL, 0, 0, NULL }
3162
};
3163
3164
static unsigned
3165
7
dissect_rrlp_GANSSIonosphericModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3166
7
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3167
7
                                   ett_rrlp_GANSSIonosphericModel, GANSSIonosphericModel_sequence);
3168
3169
7
  return offset;
3170
7
}
3171
3172
3173
3174
static unsigned
3175
35
dissect_rrlp_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3176
35
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
3177
35
                                     2, 2, false, NULL, 0, NULL, NULL);
3178
3179
35
  return offset;
3180
35
}
3181
3182
3183
static const per_sequence_t GANSSAddIonosphericModel_sequence[] = {
3184
  { &hf_rrlp_dataID         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_2 },
3185
  { &hf_rrlp_ionoModel      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_IonosphericModel },
3186
  { NULL, 0, 0, NULL }
3187
};
3188
3189
static unsigned
3190
2
dissect_rrlp_GANSSAddIonosphericModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3191
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3192
2
                                   ett_rrlp_GANSSAddIonosphericModel, GANSSAddIonosphericModel_sequence);
3193
3194
2
  return offset;
3195
2
}
3196
3197
3198
3199
static unsigned
3200
186
dissect_rrlp_INTEGER_M1048576_1048575(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3201
186
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3202
186
                                                            -1048576, 1048575U, NULL, false);
3203
3204
186
  return offset;
3205
186
}
3206
3207
3208
3209
static unsigned
3210
13
dissect_rrlp_INTEGER_M16384_16383(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3211
13
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3212
13
                                                            -16384, 16383U, NULL, false);
3213
3214
13
  return offset;
3215
13
}
3216
3217
3218
3219
static unsigned
3220
173
dissect_rrlp_INTEGER_M1073741824_1073741823(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3221
173
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3222
173
                                                            -1073741824, 1073741823U, NULL, false);
3223
3224
173
  return offset;
3225
173
}
3226
3227
3228
3229
static unsigned
3230
3
dissect_rrlp_INTEGER_M262144_262143(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3231
3
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3232
3
                                                            -262144, 262143U, NULL, false);
3233
3234
3
  return offset;
3235
3
}
3236
3237
3238
static const per_sequence_t GANSSEarthOrientParam_sequence[] = {
3239
  { &hf_rrlp_teop           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
3240
  { &hf_rrlp_pmX            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 },
3241
  { &hf_rrlp_pmXdot         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 },
3242
  { &hf_rrlp_pmY            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 },
3243
  { &hf_rrlp_pmYdot         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 },
3244
  { &hf_rrlp_deltaUT1       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1073741824_1073741823 },
3245
  { &hf_rrlp_deltaUT1dot    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M262144_262143 },
3246
  { NULL, 0, 0, NULL }
3247
};
3248
3249
static unsigned
3250
4
dissect_rrlp_GANSSEarthOrientParam(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3251
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3252
4
                                   ett_rrlp_GANSSEarthOrientParam, GANSSEarthOrientParam_sequence);
3253
3254
4
  return offset;
3255
4
}
3256
3257
3258
static const per_sequence_t GANSSReferenceTime_R10_Ext_sequence[] = {
3259
  { &hf_rrlp_ganssDayCycleNumber, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
3260
  { NULL, 0, 0, NULL }
3261
};
3262
3263
static unsigned
3264
2
dissect_rrlp_GANSSReferenceTime_R10_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3265
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3266
2
                                   ett_rrlp_GANSSReferenceTime_R10_Ext, GANSSReferenceTime_R10_Ext_sequence);
3267
3268
2
  return offset;
3269
2
}
3270
3271
3272
static const per_sequence_t GANSSCommonAssistData_sequence[] = {
3273
  { &hf_rrlp_ganssReferenceTime, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSReferenceTime },
3274
  { &hf_rrlp_ganssRefLocation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSRefLocation },
3275
  { &hf_rrlp_ganssIonosphericModel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSIonosphericModel },
3276
  { &hf_rrlp_ganssAddIonosphericModel, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSAddIonosphericModel },
3277
  { &hf_rrlp_ganssEarthOrientParam, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSEarthOrientParam },
3278
  { &hf_rrlp_ganssReferenceTime_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSReferenceTime_R10_Ext },
3279
  { NULL, 0, 0, NULL }
3280
};
3281
3282
static unsigned
3283
190
dissect_rrlp_GANSSCommonAssistData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3284
190
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3285
190
                                   ett_rrlp_GANSSCommonAssistData, GANSSCommonAssistData_sequence);
3286
3287
190
  return offset;
3288
190
}
3289
3290
3291
3292
static unsigned
3293
328
dissect_rrlp_TA0(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3294
328
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3295
328
                                                            INT32_MIN, 2147483647U, NULL, false);
3296
3297
328
  return offset;
3298
328
}
3299
3300
3301
3302
static unsigned
3303
141
dissect_rrlp_TA1(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3304
141
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3305
141
                                                            -8388608, 8388607U, NULL, false);
3306
3307
141
  return offset;
3308
141
}
3309
3310
3311
3312
static unsigned
3313
138
dissect_rrlp_TA2(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3314
138
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3315
138
                                                            -64, 63U, NULL, false);
3316
3317
138
  return offset;
3318
138
}
3319
3320
3321
static const per_sequence_t GANSSTimeModelElement_sequence[] = {
3322
  { &hf_rrlp_ganssTimeModelRefTime, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
3323
  { &hf_rrlp_tA0            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_TA0 },
3324
  { &hf_rrlp_tA1            , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_TA1 },
3325
  { &hf_rrlp_tA2            , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_TA2 },
3326
  { &hf_rrlp_gnssTOID       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
3327
  { &hf_rrlp_weekNumber     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_8191 },
3328
  { NULL, 0, 0, NULL }
3329
};
3330
3331
static unsigned
3332
329
dissect_rrlp_GANSSTimeModelElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3333
329
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3334
329
                                   ett_rrlp_GANSSTimeModelElement, GANSSTimeModelElement_sequence);
3335
3336
329
  return offset;
3337
329
}
3338
3339
3340
static const per_sequence_t SeqOfGANSSTimeModel_sequence_of[1] = {
3341
  { &hf_rrlp_SeqOfGANSSTimeModel_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSTimeModelElement },
3342
};
3343
3344
static unsigned
3345
94
dissect_rrlp_SeqOfGANSSTimeModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3346
94
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3347
94
                                                  ett_rrlp_SeqOfGANSSTimeModel, SeqOfGANSSTimeModel_sequence_of,
3348
94
                                                  1, 7, false);
3349
3350
94
  return offset;
3351
94
}
3352
3353
3354
3355
static unsigned
3356
81
dissect_rrlp_INTEGER_0_119(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3357
81
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3358
81
                                                            0U, 119U, NULL, false);
3359
3360
81
  return offset;
3361
81
}
3362
3363
3364
3365
static unsigned
3366
537
dissect_rrlp_GANSSSignalID(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3367
537
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3368
537
                                                            0U, 7U, NULL, false);
3369
3370
537
  return offset;
3371
537
}
3372
3373
3374
3375
static unsigned
3376
2.31k
dissect_rrlp_SVID(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3377
2.31k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3378
2.31k
                                                            0U, 63U, NULL, false);
3379
3380
2.31k
  return offset;
3381
2.31k
}
3382
3383
3384
static const per_sequence_t DGANSSSgnElement_sequence[] = {
3385
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
3386
  { &hf_rrlp_iod            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1023 },
3387
  { &hf_rrlp_udre           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
3388
  { &hf_rrlp_pseudoRangeCor , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2047_2047 },
3389
  { &hf_rrlp_rangeRateCor   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M127_127 },
3390
  { NULL, 0, 0, NULL }
3391
};
3392
3393
static unsigned
3394
516
dissect_rrlp_DGANSSSgnElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3395
516
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3396
516
                                   ett_rrlp_DGANSSSgnElement, DGANSSSgnElement_sequence);
3397
3398
516
  return offset;
3399
516
}
3400
3401
3402
static const per_sequence_t SeqOfDGANSSSgnElement_sequence_of[1] = {
3403
  { &hf_rrlp_SeqOfDGANSSSgnElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_DGANSSSgnElement },
3404
};
3405
3406
static unsigned
3407
124
dissect_rrlp_SeqOfDGANSSSgnElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3408
124
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3409
124
                                                  ett_rrlp_SeqOfDGANSSSgnElement, SeqOfDGANSSSgnElement_sequence_of,
3410
124
                                                  1, 16, false);
3411
3412
124
  return offset;
3413
124
}
3414
3415
3416
static const per_sequence_t SgnTypeElement_sequence[] = {
3417
  { &hf_rrlp_ganssSignalID  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID },
3418
  { &hf_rrlp_ganssStatusHealth, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
3419
  { &hf_rrlp_dganssSgnList  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfDGANSSSgnElement },
3420
  { NULL, 0, 0, NULL }
3421
};
3422
3423
static unsigned
3424
124
dissect_rrlp_SgnTypeElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3425
124
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3426
124
                                   ett_rrlp_SgnTypeElement, SgnTypeElement_sequence);
3427
3428
124
  return offset;
3429
124
}
3430
3431
3432
static const per_sequence_t SeqOfSgnTypeElement_sequence_of[1] = {
3433
  { &hf_rrlp_SeqOfSgnTypeElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SgnTypeElement },
3434
};
3435
3436
static unsigned
3437
80
dissect_rrlp_SeqOfSgnTypeElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3438
80
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3439
80
                                                  ett_rrlp_SeqOfSgnTypeElement, SeqOfSgnTypeElement_sequence_of,
3440
80
                                                  1, 3, false);
3441
3442
80
  return offset;
3443
80
}
3444
3445
3446
static const per_sequence_t GANSSDiffCorrections_sequence[] = {
3447
  { &hf_rrlp_dganssRefTime  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_119 },
3448
  { &hf_rrlp_sgnTypeList    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfSgnTypeElement },
3449
  { NULL, 0, 0, NULL }
3450
};
3451
3452
static unsigned
3453
81
dissect_rrlp_GANSSDiffCorrections(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3454
81
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3455
81
                                   ett_rrlp_GANSSDiffCorrections, GANSSDiffCorrections_sequence);
3456
3457
81
  return offset;
3458
81
}
3459
3460
3461
3462
static unsigned
3463
189
dissect_rrlp_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3464
189
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
3465
189
                                     5, 5, false, NULL, 0, NULL, NULL);
3466
3467
189
  return offset;
3468
189
}
3469
3470
3471
3472
static unsigned
3473
318
dissect_rrlp_INTEGER_0_16383(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3474
318
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3475
318
                                                            0U, 16383U, NULL, false);
3476
3477
318
  return offset;
3478
318
}
3479
3480
3481
3482
static unsigned
3483
170
dissect_rrlp_INTEGER_M32_31(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3484
170
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3485
170
                                                            -32, 31U, NULL, false);
3486
3487
170
  return offset;
3488
170
}
3489
3490
3491
3492
static unsigned
3493
73
dissect_rrlp_INTEGER_M512_511(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3494
73
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3495
73
                                                            -512, 511U, NULL, false);
3496
3497
73
  return offset;
3498
73
}
3499
3500
3501
static const per_sequence_t StandardClockModelElement_sequence[] = {
3502
  { &hf_rrlp_stanClockToc   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16383 },
3503
  { &hf_rrlp_stanClockAF2   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32_31 },
3504
  { &hf_rrlp_stanClockAF1   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 },
3505
  { &hf_rrlp_stanClockAF0   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1073741824_1073741823 },
3506
  { &hf_rrlp_stanClockTgd   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M512_511 },
3507
  { &hf_rrlp_stanModelID    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_1 },
3508
  { NULL, 0, 0, NULL }
3509
};
3510
3511
static unsigned
3512
171
dissect_rrlp_StandardClockModelElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3513
171
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3514
171
                                   ett_rrlp_StandardClockModelElement, StandardClockModelElement_sequence);
3515
3516
171
  return offset;
3517
171
}
3518
3519
3520
static const per_sequence_t SeqOfStandardClockModelElement_sequence_of[1] = {
3521
  { &hf_rrlp_SeqOfStandardClockModelElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_StandardClockModelElement },
3522
};
3523
3524
static unsigned
3525
159
dissect_rrlp_SeqOfStandardClockModelElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3526
159
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3527
159
                                                  ett_rrlp_SeqOfStandardClockModelElement, SeqOfStandardClockModelElement_sequence_of,
3528
159
                                                  1, 2, false);
3529
3530
159
  return offset;
3531
159
}
3532
3533
3534
static const per_sequence_t NAVclockModel_sequence[] = {
3535
  { &hf_rrlp_navToc         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 },
3536
  { &hf_rrlp_navaf2         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
3537
  { &hf_rrlp_navaf1         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3538
  { &hf_rrlp_navaf0         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 },
3539
  { &hf_rrlp_navTgd         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
3540
  { NULL, 0, 0, NULL }
3541
};
3542
3543
static unsigned
3544
4
dissect_rrlp_NAVclockModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3545
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3546
4
                                   ett_rrlp_NAVclockModel, NAVclockModel_sequence);
3547
3548
4
  return offset;
3549
4
}
3550
3551
3552
3553
static unsigned
3554
17
dissect_rrlp_INTEGER_0_2015(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3555
17
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3556
17
                                                            0U, 2015U, NULL, false);
3557
3558
17
  return offset;
3559
17
}
3560
3561
3562
3563
static unsigned
3564
380
dissect_rrlp_INTEGER_M16_15(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3565
380
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3566
380
                                                            -16, 15U, NULL, false);
3567
3568
380
  return offset;
3569
380
}
3570
3571
3572
3573
static unsigned
3574
4
dissect_rrlp_INTEGER_M524288_524287(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3575
4
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3576
4
                                                            -524288, 524287U, NULL, false);
3577
3578
4
  return offset;
3579
4
}
3580
3581
3582
3583
static unsigned
3584
13
dissect_rrlp_INTEGER_M33554432_33554431(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3585
13
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3586
13
                                                            -33554432, 33554431U, NULL, false);
3587
3588
13
  return offset;
3589
13
}
3590
3591
3592
3593
static unsigned
3594
254
dissect_rrlp_INTEGER_M4096_4095(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3595
254
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3596
254
                                                            -4096, 4095U, NULL, false);
3597
3598
254
  return offset;
3599
254
}
3600
3601
3602
static const per_sequence_t CNAVclockModel_sequence[] = {
3603
  { &hf_rrlp_cnavToc        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2015 },
3604
  { &hf_rrlp_cnavTop        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2015 },
3605
  { &hf_rrlp_cnavURA0       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
3606
  { &hf_rrlp_cnavURA1       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
3607
  { &hf_rrlp_cnavURA2       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
3608
  { &hf_rrlp_cnavAf2        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 },
3609
  { &hf_rrlp_cnavAf1        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M524288_524287 },
3610
  { &hf_rrlp_cnavAf0        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M33554432_33554431 },
3611
  { &hf_rrlp_cnavTgd        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4096_4095 },
3612
  { &hf_rrlp_cnavISCl1cp    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M4096_4095 },
3613
  { &hf_rrlp_cnavISCl1cd    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M4096_4095 },
3614
  { &hf_rrlp_cnavISCl1ca    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M4096_4095 },
3615
  { &hf_rrlp_cnavISCl2c     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M4096_4095 },
3616
  { &hf_rrlp_cnavISCl5i5    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M4096_4095 },
3617
  { &hf_rrlp_cnavISCl5q5    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M4096_4095 },
3618
  { NULL, 0, 0, NULL }
3619
};
3620
3621
static unsigned
3622
4
dissect_rrlp_CNAVclockModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3623
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3624
4
                                   ett_rrlp_CNAVclockModel, CNAVclockModel_sequence);
3625
3626
4
  return offset;
3627
4
}
3628
3629
3630
static const per_sequence_t GLONASSclockModel_sequence[] = {
3631
  { &hf_rrlp_gloTau         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 },
3632
  { &hf_rrlp_gloGamma       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
3633
  { &hf_rrlp_gloDeltaTau    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M16_15 },
3634
  { NULL, 0, 0, NULL }
3635
};
3636
3637
static unsigned
3638
3
dissect_rrlp_GLONASSclockModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3639
3
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3640
3
                                   ett_rrlp_GLONASSclockModel, GLONASSclockModel_sequence);
3641
3642
3
  return offset;
3643
3
}
3644
3645
3646
3647
static unsigned
3648
2
dissect_rrlp_INTEGER_0_5399(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3649
2
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3650
2
                                                            0U, 5399U, NULL, false);
3651
3652
2
  return offset;
3653
2
}
3654
3655
3656
static const per_sequence_t SBASclockModel_sequence[] = {
3657
  { &hf_rrlp_sbasTo         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_5399 },
3658
  { &hf_rrlp_sbasAgfo       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2048_2047 },
3659
  { &hf_rrlp_sbasAgf1       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
3660
  { NULL, 0, 0, NULL }
3661
};
3662
3663
static unsigned
3664
2
dissect_rrlp_SBASclockModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3665
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3666
2
                                   ett_rrlp_SBASclockModel, SBASclockModel_sequence);
3667
3668
2
  return offset;
3669
2
}
3670
3671
3672
3673
static unsigned
3674
6
dissect_rrlp_INTEGER_0_131071(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3675
6
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3676
6
                                                            0U, 131071U, NULL, false);
3677
3678
6
  return offset;
3679
6
}
3680
3681
3682
static const per_sequence_t BDSClockModel_r12_sequence[] = {
3683
  { &hf_rrlp_bdsAODC_r12    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
3684
  { &hf_rrlp_bdsToc_r12     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_131071 },
3685
  { &hf_rrlp_bdsA0_r12      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3686
  { &hf_rrlp_bdsA1_r12      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 },
3687
  { &hf_rrlp_bdsA2_r12      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
3688
  { &hf_rrlp_bdsTgd1_r12    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 },
3689
  { NULL, 0, 0, NULL }
3690
};
3691
3692
static unsigned
3693
1
dissect_rrlp_BDSClockModel_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3694
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3695
1
                                   ett_rrlp_BDSClockModel_r12, BDSClockModel_r12_sequence);
3696
3697
1
  return offset;
3698
1
}
3699
3700
3701
static const value_string rrlp_GANSSClockModel_vals[] = {
3702
  {   0, "standardClockModelList" },
3703
  {   1, "navClockModel" },
3704
  {   2, "cnavClockModel" },
3705
  {   3, "glonassClockModel" },
3706
  {   4, "sbasClockModel" },
3707
  {   5, "bdsClockModel-r12" },
3708
  { 0, NULL }
3709
};
3710
3711
static const per_choice_t GANSSClockModel_choice[] = {
3712
  {   0, &hf_rrlp_standardClockModelList, ASN1_EXTENSION_ROOT    , dissect_rrlp_SeqOfStandardClockModelElement },
3713
  {   1, &hf_rrlp_navClockModel  , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NAVclockModel },
3714
  {   2, &hf_rrlp_cnavClockModel , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_CNAVclockModel },
3715
  {   3, &hf_rrlp_glonassClockModel, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_GLONASSclockModel },
3716
  {   4, &hf_rrlp_sbasClockModel , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_SBASclockModel },
3717
  {   5, &hf_rrlp_bdsClockModel_r12, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_BDSClockModel_r12 },
3718
  { 0, NULL, 0, NULL }
3719
};
3720
3721
static unsigned
3722
209
dissect_rrlp_GANSSClockModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3723
209
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3724
209
                                 ett_rrlp_GANSSClockModel, GANSSClockModel_choice,
3725
209
                                 NULL);
3726
3727
209
  return offset;
3728
209
}
3729
3730
3731
static const per_sequence_t NavModel_KeplerianSet_sequence[] = {
3732
  { &hf_rrlp_keplerToe      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16383 },
3733
  { &hf_rrlp_keplerW        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3734
  { &hf_rrlp_keplerDeltaN   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3735
  { &hf_rrlp_keplerM0       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3736
  { &hf_rrlp_keplerOmegaDot , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3737
  { &hf_rrlp_keplerE        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
3738
  { &hf_rrlp_keplerIDot     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 },
3739
  { &hf_rrlp_keplerAPowerHalf, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
3740
  { &hf_rrlp_keplerI0       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3741
  { &hf_rrlp_keplerOmega0   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3742
  { &hf_rrlp_keplerCrs      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3743
  { &hf_rrlp_keplerCis      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3744
  { &hf_rrlp_keplerCus      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3745
  { &hf_rrlp_keplerCrc      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3746
  { &hf_rrlp_keplerCic      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3747
  { &hf_rrlp_keplerCuc      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3748
  { NULL, 0, 0, NULL }
3749
};
3750
3751
static unsigned
3752
147
dissect_rrlp_NavModel_KeplerianSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3753
147
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3754
147
                                   ett_rrlp_NavModel_KeplerianSet, NavModel_KeplerianSet_sequence);
3755
3756
147
  return offset;
3757
147
}
3758
3759
3760
static const per_sequence_t NavModel_NAVKeplerianSet_sequence[] = {
3761
  { &hf_rrlp_navURA         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
3762
  { &hf_rrlp_navFitFlag     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
3763
  { &hf_rrlp_navToe         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 },
3764
  { &hf_rrlp_navOmega       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3765
  { &hf_rrlp_navDeltaN      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3766
  { &hf_rrlp_navM0          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3767
  { &hf_rrlp_navOmegaADot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3768
  { &hf_rrlp_navE           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
3769
  { &hf_rrlp_navIDot        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 },
3770
  { &hf_rrlp_navAPowerHalf  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
3771
  { &hf_rrlp_navI0          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3772
  { &hf_rrlp_navOmegaA0     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3773
  { &hf_rrlp_navCrs         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3774
  { &hf_rrlp_navCis         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3775
  { &hf_rrlp_navCus         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3776
  { &hf_rrlp_navCrc         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3777
  { &hf_rrlp_navCic         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3778
  { &hf_rrlp_navCuc         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3779
  { NULL, 0, 0, NULL }
3780
};
3781
3782
static unsigned
3783
4
dissect_rrlp_NavModel_NAVKeplerianSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3784
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3785
4
                                   ett_rrlp_NavModel_NAVKeplerianSet, NavModel_NAVKeplerianSet_sequence);
3786
3787
4
  return offset;
3788
4
}
3789
3790
3791
3792
static unsigned
3793
10
dissect_rrlp_INTEGER_M16777216_16777215(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3794
10
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3795
10
                                                            -16777216, 16777215U, NULL, false);
3796
3797
10
  return offset;
3798
10
}
3799
3800
3801
3802
static unsigned
3803
18
dissect_rrlp_INTEGER_M65536_65535(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3804
18
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3805
18
                                                            -65536, 65535U, NULL, false);
3806
3807
18
  return offset;
3808
18
}
3809
3810
3811
3812
static unsigned
3813
9
dissect_rrlp_INTEGER_M4194304_4194303(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3814
9
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3815
9
                                                            -4194304, 4194303U, NULL, false);
3816
3817
9
  return offset;
3818
9
}
3819
3820
3821
3822
static unsigned
3823
29
dissect_rrlp_INTEGER_M4294967296_4294967295(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3824
29
  offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index,
3825
29
                                                            INT64_C(-4294967296), 4294967295U, NULL, false);
3826
3827
29
  return offset;
3828
29
}
3829
3830
3831
3832
static unsigned
3833
8
dissect_rrlp_INTEGER_0_8589934591(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3834
8
  offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index,
3835
8
                                                            0U, UINT64_C(8589934591), NULL, false);
3836
3837
8
  return offset;
3838
8
}
3839
3840
3841
static const per_sequence_t NavModel_CNAVKeplerianSet_sequence[] = {
3842
  { &hf_rrlp_cnavTop        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2015 },
3843
  { &hf_rrlp_cnavURAindex   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
3844
  { &hf_rrlp_cnavDeltaA     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M33554432_33554431 },
3845
  { &hf_rrlp_cnavAdot       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16777216_16777215 },
3846
  { &hf_rrlp_cnavDeltaNo    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 },
3847
  { &hf_rrlp_cnavDeltaNoDot , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4194304_4194303 },
3848
  { &hf_rrlp_cnavMo         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4294967296_4294967295 },
3849
  { &hf_rrlp_cnavE          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_8589934591 },
3850
  { &hf_rrlp_cnavOmega      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4294967296_4294967295 },
3851
  { &hf_rrlp_cnavOMEGA0     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4294967296_4294967295 },
3852
  { &hf_rrlp_cnavDeltaOmegaDot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 },
3853
  { &hf_rrlp_cnavIo         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4294967296_4294967295 },
3854
  { &hf_rrlp_cnavIoDot      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 },
3855
  { &hf_rrlp_cnavCis        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3856
  { &hf_rrlp_cnavCic        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3857
  { &hf_rrlp_cnavCrs        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3858
  { &hf_rrlp_cnavCrc        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3859
  { &hf_rrlp_cnavCus        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 },
3860
  { &hf_rrlp_cnavCuc        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 },
3861
  { NULL, 0, 0, NULL }
3862
};
3863
3864
static unsigned
3865
9
dissect_rrlp_NavModel_CNAVKeplerianSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3866
9
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3867
9
                                   ett_rrlp_NavModel_CNAVKeplerianSet, NavModel_CNAVKeplerianSet_sequence);
3868
3869
9
  return offset;
3870
9
}
3871
3872
3873
3874
static unsigned
3875
187
dissect_rrlp_BOOLEAN(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3876
187
  offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
3877
3878
187
  return offset;
3879
187
}
3880
3881
3882
3883
static unsigned
3884
6
dissect_rrlp_INTEGER_M67108864_67108863(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3885
6
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3886
6
                                                            -67108864, 67108863U, NULL, false);
3887
3888
6
  return offset;
3889
6
}
3890
3891
3892
static const per_sequence_t NavModel_GLONASSecef_sequence[] = {
3893
  { &hf_rrlp_gloEn          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
3894
  { &hf_rrlp_gloP1          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_2 },
3895
  { &hf_rrlp_gloP2          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
3896
  { &hf_rrlp_gloM           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
3897
  { &hf_rrlp_gloX           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M67108864_67108863 },
3898
  { &hf_rrlp_gloXdot        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3899
  { &hf_rrlp_gloXdotdot     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
3900
  { &hf_rrlp_gloY           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M67108864_67108863 },
3901
  { &hf_rrlp_gloYdot        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3902
  { &hf_rrlp_gloYdotdot     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
3903
  { &hf_rrlp_gloZ           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M67108864_67108863 },
3904
  { &hf_rrlp_gloZdot        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3905
  { &hf_rrlp_gloZdotdot     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
3906
  { NULL, 0, 0, NULL }
3907
};
3908
3909
static unsigned
3910
3
dissect_rrlp_NavModel_GLONASSecef(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3911
3
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3912
3
                                   ett_rrlp_NavModel_GLONASSecef, NavModel_GLONASSecef_sequence);
3913
3914
3
  return offset;
3915
3
}
3916
3917
3918
3919
static unsigned
3920
126
dissect_rrlp_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3921
126
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
3922
126
                                     4, 4, false, NULL, 0, NULL, NULL);
3923
3924
126
  return offset;
3925
126
}
3926
3927
3928
3929
static unsigned
3930
2
dissect_rrlp_INTEGER_M536870912_536870911(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3931
2
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3932
2
                                                            -536870912, 536870911U, NULL, false);
3933
3934
2
  return offset;
3935
2
}
3936
3937
3938
3939
static unsigned
3940
8
dissect_rrlp_INTEGER_M131072_131071(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3941
8
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3942
8
                                                            -131072, 131071U, NULL, false);
3943
3944
8
  return offset;
3945
8
}
3946
3947
3948
static const per_sequence_t NavModel_SBASecef_sequence[] = {
3949
  { &hf_rrlp_sbasTo         , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_5399 },
3950
  { &hf_rrlp_sbasAccuracy   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_4 },
3951
  { &hf_rrlp_sbasXg         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M536870912_536870911 },
3952
  { &hf_rrlp_sbasYg         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M536870912_536870911 },
3953
  { &hf_rrlp_sbasZg         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16777216_16777215 },
3954
  { &hf_rrlp_sbasXgDot      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 },
3955
  { &hf_rrlp_sbasYgDot      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 },
3956
  { &hf_rrlp_sbasZgDot      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 },
3957
  { &hf_rrlp_sbasXgDotDot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 },
3958
  { &hf_rrlp_sbagYgDotDot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 },
3959
  { &hf_rrlp_sbasZgDotDot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 },
3960
  { NULL, 0, 0, NULL }
3961
};
3962
3963
static unsigned
3964
1
dissect_rrlp_NavModel_SBASecef(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3965
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3966
1
                                   ett_rrlp_NavModel_SBASecef, NavModel_SBASecef_sequence);
3967
3968
1
  return offset;
3969
1
}
3970
3971
3972
static const per_sequence_t NavModel_BDSKeplerianSet_r12_sequence[] = {
3973
  { &hf_rrlp_bdsAODE_r12    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
3974
  { &hf_rrlp_bdsURAI_r12    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
3975
  { &hf_rrlp_bdsToe_r12     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_131071 },
3976
  { &hf_rrlp_bdsAPowerHalf_r12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
3977
  { &hf_rrlp_bdsE_r12       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
3978
  { &hf_rrlp_bdsW_r12       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3979
  { &hf_rrlp_bdsDeltaN_r12  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
3980
  { &hf_rrlp_bdsM0_r12      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3981
  { &hf_rrlp_bdsOmega0_r12  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3982
  { &hf_rrlp_bdsOmegaDot_r12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
3983
  { &hf_rrlp_bdsI0_r12      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
3984
  { &hf_rrlp_bdsIDot_r12    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 },
3985
  { &hf_rrlp_bdsCuc_r12     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 },
3986
  { &hf_rrlp_bdsCus_r12     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 },
3987
  { &hf_rrlp_bdsCrc_r12     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 },
3988
  { &hf_rrlp_bdsCrs_r12     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 },
3989
  { &hf_rrlp_bdsCic_r12     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 },
3990
  { &hf_rrlp_bdsCis_r12     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 },
3991
  { NULL, 0, 0, NULL }
3992
};
3993
3994
static unsigned
3995
1
dissect_rrlp_NavModel_BDSKeplerianSet_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3996
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3997
1
                                   ett_rrlp_NavModel_BDSKeplerianSet_r12, NavModel_BDSKeplerianSet_r12_sequence);
3998
3999
1
  return offset;
4000
1
}
4001
4002
4003
static const value_string rrlp_GANSSOrbitModel_vals[] = {
4004
  {   0, "keplerianSet" },
4005
  {   1, "navKeplerianSet" },
4006
  {   2, "cnavKeplerianSet" },
4007
  {   3, "glonassECEF" },
4008
  {   4, "sbasECEF" },
4009
  {   5, "bdsKeplerianSet-r12" },
4010
  { 0, NULL }
4011
};
4012
4013
static const per_choice_t GANSSOrbitModel_choice[] = {
4014
  {   0, &hf_rrlp_keplerianSet   , ASN1_EXTENSION_ROOT    , dissect_rrlp_NavModel_KeplerianSet },
4015
  {   1, &hf_rrlp_navKeplerianSet, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_NAVKeplerianSet },
4016
  {   2, &hf_rrlp_cnavKeplerianSet, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_CNAVKeplerianSet },
4017
  {   3, &hf_rrlp_glonassECEF    , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_GLONASSecef },
4018
  {   4, &hf_rrlp_sbasECEF       , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_SBASecef },
4019
  {   5, &hf_rrlp_bdsKeplerianSet_r12, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_NavModel_BDSKeplerianSet_r12 },
4020
  { 0, NULL, 0, NULL }
4021
};
4022
4023
static unsigned
4024
176
dissect_rrlp_GANSSOrbitModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4025
176
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4026
176
                                 ett_rrlp_GANSSOrbitModel, GANSSOrbitModel_choice,
4027
176
                                 NULL);
4028
4029
176
  return offset;
4030
176
}
4031
4032
4033
4034
static unsigned
4035
3
dissect_rrlp_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4036
3
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4037
3
                                     1, 1, false, NULL, 0, NULL, NULL);
4038
4039
3
  return offset;
4040
3
}
4041
4042
4043
static const per_sequence_t GANSSSatelliteElement_sequence[] = {
4044
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4045
  { &hf_rrlp_svHealth       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_5 },
4046
  { &hf_rrlp_iod            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1023 },
4047
  { &hf_rrlp_ganssClockModel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSClockModel },
4048
  { &hf_rrlp_ganssOrbitModel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSOrbitModel },
4049
  { &hf_rrlp_svHealthMSB    , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_BIT_STRING_SIZE_1 },
4050
  { &hf_rrlp_iodMSB         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_1 },
4051
  { &hf_rrlp_svHealthExt    , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_BIT_STRING_SIZE_4 },
4052
  { NULL, 0, 0, NULL }
4053
};
4054
4055
static unsigned
4056
192
dissect_rrlp_GANSSSatelliteElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4057
192
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4058
192
                                   ett_rrlp_GANSSSatelliteElement, GANSSSatelliteElement_sequence);
4059
4060
192
  return offset;
4061
192
}
4062
4063
4064
static const per_sequence_t SeqOfGANSSSatelliteElement_sequence_of[1] = {
4065
  { &hf_rrlp_SeqOfGANSSSatelliteElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSatelliteElement },
4066
};
4067
4068
static unsigned
4069
75
dissect_rrlp_SeqOfGANSSSatelliteElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4070
75
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4071
75
                                                  ett_rrlp_SeqOfGANSSSatelliteElement, SeqOfGANSSSatelliteElement_sequence_of,
4072
75
                                                  1, 32, false);
4073
4074
75
  return offset;
4075
75
}
4076
4077
4078
static const per_sequence_t GANSSNavModel_sequence[] = {
4079
  { &hf_rrlp_nonBroadcastIndFlag, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
4080
  { &hf_rrlp_ganssSatelliteList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSSSatelliteElement },
4081
  { NULL, 0, 0, NULL }
4082
};
4083
4084
static unsigned
4085
75
dissect_rrlp_GANSSNavModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4086
75
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4087
75
                                   ett_rrlp_GANSSNavModel, GANSSNavModel_sequence);
4088
4089
75
  return offset;
4090
75
}
4091
4092
4093
static int * const GANSSSignals_bits[] = {
4094
  &hf_rrlp_GANSSSignals_signal1,
4095
  &hf_rrlp_GANSSSignals_signal2,
4096
  &hf_rrlp_GANSSSignals_signal3,
4097
  &hf_rrlp_GANSSSignals_signal4,
4098
  &hf_rrlp_GANSSSignals_signal5,
4099
  &hf_rrlp_GANSSSignals_signal6,
4100
  &hf_rrlp_GANSSSignals_signal7,
4101
  &hf_rrlp_GANSSSignals_signal8,
4102
  NULL
4103
};
4104
4105
static unsigned
4106
295
dissect_rrlp_GANSSSignals(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4107
295
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4108
295
                                     1, 8, false, GANSSSignals_bits, 8, NULL, NULL);
4109
4110
295
  return offset;
4111
295
}
4112
4113
4114
static const per_sequence_t BadSignalElement_sequence[] = {
4115
  { &hf_rrlp_badSVID        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4116
  { &hf_rrlp_badSignalID    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GANSSSignals },
4117
  { NULL, 0, 0, NULL }
4118
};
4119
4120
static unsigned
4121
448
dissect_rrlp_BadSignalElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4122
448
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4123
448
                                   ett_rrlp_BadSignalElement, BadSignalElement_sequence);
4124
4125
448
  return offset;
4126
448
}
4127
4128
4129
static const per_sequence_t SeqOfBadSignalElement_sequence_of[1] = {
4130
  { &hf_rrlp_SeqOfBadSignalElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BadSignalElement },
4131
};
4132
4133
static unsigned
4134
87
dissect_rrlp_SeqOfBadSignalElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4135
87
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4136
87
                                                  ett_rrlp_SeqOfBadSignalElement, SeqOfBadSignalElement_sequence_of,
4137
87
                                                  1, 16, false);
4138
4139
87
  return offset;
4140
87
}
4141
4142
4143
static const per_sequence_t GANSSRealTimeIntegrity_sequence[] = {
4144
  { &hf_rrlp_ganssBadSignalList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfBadSignalElement },
4145
  { NULL, 0, 0, NULL }
4146
};
4147
4148
static unsigned
4149
88
dissect_rrlp_GANSSRealTimeIntegrity(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4150
88
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4151
88
                                   ett_rrlp_GANSSRealTimeIntegrity, GANSSRealTimeIntegrity_sequence);
4152
4153
88
  return offset;
4154
88
}
4155
4156
4157
4158
static unsigned
4159
72
dissect_rrlp_INTEGER_0_59(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4160
72
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4161
72
                                                            0U, 59U, NULL, false);
4162
4163
72
  return offset;
4164
72
}
4165
4166
4167
4168
static unsigned
4169
16.2k
dissect_rrlp_GANSSDataBit(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4170
16.2k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4171
16.2k
                                                            0U, 1U, NULL, false);
4172
4173
16.2k
  return offset;
4174
16.2k
}
4175
4176
4177
static const per_sequence_t SeqOf_GANSSDataBits_sequence_of[1] = {
4178
  { &hf_rrlp_SeqOf_GANSSDataBits_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSDataBit },
4179
};
4180
4181
static unsigned
4182
246
dissect_rrlp_SeqOf_GANSSDataBits(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4183
246
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4184
246
                                                  ett_rrlp_SeqOf_GANSSDataBits, SeqOf_GANSSDataBits_sequence_of,
4185
246
                                                  1, 1024, false);
4186
4187
246
  return offset;
4188
246
}
4189
4190
4191
static const per_sequence_t GANSSDataBitsSgnElement_sequence[] = {
4192
  { &hf_rrlp_ganssSignalType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID },
4193
  { &hf_rrlp_ganssDataBits  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOf_GANSSDataBits },
4194
  { NULL, 0, 0, NULL }
4195
};
4196
4197
static unsigned
4198
246
dissect_rrlp_GANSSDataBitsSgnElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4199
246
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4200
246
                                   ett_rrlp_GANSSDataBitsSgnElement, GANSSDataBitsSgnElement_sequence);
4201
4202
246
  return offset;
4203
246
}
4204
4205
4206
static const per_sequence_t Seq_OfGANSSDataBitsSgn_sequence_of[1] = {
4207
  { &hf_rrlp_Seq_OfGANSSDataBitsSgn_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSDataBitsSgnElement },
4208
};
4209
4210
static unsigned
4211
183
dissect_rrlp_Seq_OfGANSSDataBitsSgn(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4212
183
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4213
183
                                                  ett_rrlp_Seq_OfGANSSDataBitsSgn, Seq_OfGANSSDataBitsSgn_sequence_of,
4214
183
                                                  1, 8, false);
4215
4216
183
  return offset;
4217
183
}
4218
4219
4220
static const per_sequence_t GanssDataBitsElement_sequence[] = {
4221
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4222
  { &hf_rrlp_ganssDataBitsSgnList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_Seq_OfGANSSDataBitsSgn },
4223
  { NULL, 0, 0, NULL }
4224
};
4225
4226
static unsigned
4227
183
dissect_rrlp_GanssDataBitsElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4228
183
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4229
183
                                   ett_rrlp_GanssDataBitsElement, GanssDataBitsElement_sequence);
4230
4231
183
  return offset;
4232
183
}
4233
4234
4235
static const per_sequence_t SeqOfGanssDataBitsElement_sequence_of[1] = {
4236
  { &hf_rrlp_SeqOfGanssDataBitsElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GanssDataBitsElement },
4237
};
4238
4239
static unsigned
4240
72
dissect_rrlp_SeqOfGanssDataBitsElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4241
72
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4242
72
                                                  ett_rrlp_SeqOfGanssDataBitsElement, SeqOfGanssDataBitsElement_sequence_of,
4243
72
                                                  1, 32, false);
4244
4245
72
  return offset;
4246
72
}
4247
4248
4249
static const per_sequence_t GANSSDataBitAssist_sequence[] = {
4250
  { &hf_rrlp_ganssTOD_01    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_59 },
4251
  { &hf_rrlp_ganssDataBitsSatList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGanssDataBitsElement },
4252
  { NULL, 0, 0, NULL }
4253
};
4254
4255
static unsigned
4256
72
dissect_rrlp_GANSSDataBitAssist(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4257
72
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4258
72
                                   ett_rrlp_GANSSDataBitAssist, GANSSDataBitAssist_sequence);
4259
4260
72
  return offset;
4261
72
}
4262
4263
4264
4265
static unsigned
4266
23
dissect_rrlp_INTEGER_0_4(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4267
23
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4268
23
                                                            0U, 4U, NULL, false);
4269
4270
23
  return offset;
4271
23
}
4272
4273
4274
static const per_sequence_t AdditionalDopplerFields_sequence[] = {
4275
  { &hf_rrlp_doppler1       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
4276
  { &hf_rrlp_dopplerUncertainty_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4 },
4277
  { NULL, 0, 0, NULL }
4278
};
4279
4280
static unsigned
4281
23
dissect_rrlp_AdditionalDopplerFields(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4282
23
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4283
23
                                   ett_rrlp_AdditionalDopplerFields, AdditionalDopplerFields_sequence);
4284
4285
23
  return offset;
4286
23
}
4287
4288
4289
4290
static unsigned
4291
351
dissect_rrlp_INTEGER_0_127(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4292
351
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4293
351
                                                            0U, 127U, NULL, false);
4294
4295
351
  return offset;
4296
351
}
4297
4298
4299
static const per_sequence_t GANSSRefMeasurementElement_sequence[] = {
4300
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4301
  { &hf_rrlp_doppler0       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2048_2047 },
4302
  { &hf_rrlp_additionalDoppler, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_AdditionalDopplerFields },
4303
  { &hf_rrlp_codePhase      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1022 },
4304
  { &hf_rrlp_intCodePhase_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_127 },
4305
  { &hf_rrlp_codePhaseSearchWindow_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
4306
  { &hf_rrlp_additionalAngle, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_AddionalAngleFields },
4307
  { &hf_rrlp_codePhase1023  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_BOOLEAN },
4308
  { NULL, 0, 0, NULL }
4309
};
4310
4311
static unsigned
4312
117
dissect_rrlp_GANSSRefMeasurementElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4313
117
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4314
117
                                   ett_rrlp_GANSSRefMeasurementElement, GANSSRefMeasurementElement_sequence);
4315
4316
117
  return offset;
4317
117
}
4318
4319
4320
static const per_sequence_t SeqOfGANSSRefMeasurementElement_sequence_of[1] = {
4321
  { &hf_rrlp_SeqOfGANSSRefMeasurementElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSRefMeasurementElement },
4322
};
4323
4324
static unsigned
4325
59
dissect_rrlp_SeqOfGANSSRefMeasurementElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4326
59
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4327
59
                                                  ett_rrlp_SeqOfGANSSRefMeasurementElement, SeqOfGANSSRefMeasurementElement_sequence_of,
4328
59
                                                  1, 16, false);
4329
4330
59
  return offset;
4331
59
}
4332
4333
4334
static const per_sequence_t GANSSRefMeasurementAssist_sequence[] = {
4335
  { &hf_rrlp_ganssSignalID  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID },
4336
  { &hf_rrlp_ganssRefMeasAssistList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSSRefMeasurementElement },
4337
  { NULL, 0, 0, NULL }
4338
};
4339
4340
static unsigned
4341
59
dissect_rrlp_GANSSRefMeasurementAssist(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4342
59
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4343
59
                                   ett_rrlp_GANSSRefMeasurementAssist, GANSSRefMeasurementAssist_sequence);
4344
4345
59
  return offset;
4346
59
}
4347
4348
4349
static const per_sequence_t Almanac_KeplerianSet_sequence[] = {
4350
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4351
  { &hf_rrlp_kepAlmanacE    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2047 },
4352
  { &hf_rrlp_kepAlmanacDeltaI, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4353
  { &hf_rrlp_kepAlmanacOmegaDot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4354
  { &hf_rrlp_kepSVStatusINAV, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_4 },
4355
  { &hf_rrlp_kepSVStatusFNAV, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_BIT_STRING_SIZE_2 },
4356
  { &hf_rrlp_kepAlmanacAPowerHalf, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4096_4095 },
4357
  { &hf_rrlp_kepAlmanacOmega0, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4358
  { &hf_rrlp_kepAlmanacW    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4359
  { &hf_rrlp_kepAlmanacM0   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4360
  { &hf_rrlp_kepAlmanacAF0  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4361
  { &hf_rrlp_kepAlmanacAF1  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4096_4095 },
4362
  { NULL, 0, 0, NULL }
4363
};
4364
4365
static unsigned
4366
126
dissect_rrlp_Almanac_KeplerianSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4367
126
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4368
126
                                   ett_rrlp_Almanac_KeplerianSet, Almanac_KeplerianSet_sequence);
4369
4370
126
  return offset;
4371
126
}
4372
4373
4374
static const per_sequence_t Almanac_NAVKeplerianSet_sequence[] = {
4375
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4376
  { &hf_rrlp_navAlmE        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
4377
  { &hf_rrlp_navAlmDeltaI   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4378
  { &hf_rrlp_navAlmOMEGADOT , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4379
  { &hf_rrlp_navAlmSVHealth , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
4380
  { &hf_rrlp_navAlmSqrtA    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 },
4381
  { &hf_rrlp_navAlmOMEGAo   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
4382
  { &hf_rrlp_navAlmOmega    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
4383
  { &hf_rrlp_navAlmMo       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
4384
  { &hf_rrlp_navAlmaf0      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4385
  { &hf_rrlp_navAlmaf1      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4386
  { NULL, 0, 0, NULL }
4387
};
4388
4389
static unsigned
4390
10
dissect_rrlp_Almanac_NAVKeplerianSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4391
10
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4392
10
                                   ett_rrlp_Almanac_NAVKeplerianSet, Almanac_NAVKeplerianSet_sequence);
4393
4394
10
  return offset;
4395
10
}
4396
4397
4398
4399
static unsigned
4400
4
dissect_rrlp_INTEGER_M64_63(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4401
4
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4402
4
                                                            -64, 63U, NULL, false);
4403
4404
4
  return offset;
4405
4
}
4406
4407
4408
static const per_sequence_t Almanac_ReducedKeplerianSet_sequence[] = {
4409
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4410
  { &hf_rrlp_redAlmDeltaA   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
4411
  { &hf_rrlp_redAlmOmega0   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M64_63 },
4412
  { &hf_rrlp_redAlmPhi0     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M64_63 },
4413
  { &hf_rrlp_redAlmL1Health , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
4414
  { &hf_rrlp_redAlmL2Health , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
4415
  { &hf_rrlp_redAlmL5Health , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
4416
  { NULL, 0, 0, NULL }
4417
};
4418
4419
static unsigned
4420
2
dissect_rrlp_Almanac_ReducedKeplerianSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4421
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4422
2
                                   ett_rrlp_Almanac_ReducedKeplerianSet, Almanac_ReducedKeplerianSet_sequence);
4423
4424
2
  return offset;
4425
2
}
4426
4427
4428
static const per_sequence_t Almanac_MidiAlmanacSet_sequence[] = {
4429
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4430
  { &hf_rrlp_midiAlmE       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2047 },
4431
  { &hf_rrlp_midiAlmDeltaI  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4432
  { &hf_rrlp_midiAlmOmegaDot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4433
  { &hf_rrlp_midiAlmSqrtA   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_131071 },
4434
  { &hf_rrlp_midiAlmOmega0  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4435
  { &hf_rrlp_midiAlmOmega   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4436
  { &hf_rrlp_midiAlmMo      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4437
  { &hf_rrlp_midiAlmaf0     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4438
  { &hf_rrlp_midiAlmaf1     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 },
4439
  { &hf_rrlp_midiAlmL1Health, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
4440
  { &hf_rrlp_midiAlmL2Health, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
4441
  { &hf_rrlp_midiAlmL5Health, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
4442
  { NULL, 0, 0, NULL }
4443
};
4444
4445
static unsigned
4446
4
dissect_rrlp_Almanac_MidiAlmanacSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4447
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4448
4
                                   ett_rrlp_Almanac_MidiAlmanacSet, Almanac_MidiAlmanacSet_sequence);
4449
4450
4
  return offset;
4451
4
}
4452
4453
4454
4455
static unsigned
4456
10
dissect_rrlp_INTEGER_1_1461(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4457
10
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4458
10
                                                            1U, 1461U, NULL, false);
4459
4460
10
  return offset;
4461
10
}
4462
4463
4464
4465
static unsigned
4466
26
dissect_rrlp_INTEGER_1_24(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4467
26
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4468
26
                                                            1U, 24U, NULL, false);
4469
4470
26
  return offset;
4471
26
}
4472
4473
4474
4475
static unsigned
4476
435
dissect_rrlp_INTEGER_0_2097151(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4477
435
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4478
435
                                                            0U, 2097151U, NULL, false);
4479
4480
435
  return offset;
4481
435
}
4482
4483
4484
4485
static unsigned
4486
1
dissect_rrlp_INTEGER_0_32767(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4487
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4488
1
                                                            0U, 32767U, NULL, false);
4489
4490
1
  return offset;
4491
1
}
4492
4493
4494
static const per_sequence_t Almanac_GlonassAlmanacSet_sequence[] = {
4495
  { &hf_rrlp_gloAlmNA       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_1461 },
4496
  { &hf_rrlp_gloAlmnA       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_24 },
4497
  { &hf_rrlp_gloAlmHA       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
4498
  { &hf_rrlp_gloAlmLambdaA  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1048576_1048575 },
4499
  { &hf_rrlp_gloAlmtlambdaA , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2097151 },
4500
  { &hf_rrlp_gloAlmDeltaIa  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M131072_131071 },
4501
  { &hf_rrlp_gloAlmDeltaTA  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 },
4502
  { &hf_rrlp_gloAlmDeltaTdotA, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M64_63 },
4503
  { &hf_rrlp_gloAlmEpsilonA , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_32767 },
4504
  { &hf_rrlp_gloAlmOmegaA   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4505
  { &hf_rrlp_gloAlmTauA     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M512_511 },
4506
  { &hf_rrlp_gloAlmCA       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1 },
4507
  { &hf_rrlp_gloAlmMA       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_BIT_STRING_SIZE_2 },
4508
  { NULL, 0, 0, NULL }
4509
};
4510
4511
static unsigned
4512
2
dissect_rrlp_Almanac_GlonassAlmanacSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4513
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4514
2
                                   ett_rrlp_Almanac_GlonassAlmanacSet, Almanac_GlonassAlmanacSet_sequence);
4515
4516
2
  return offset;
4517
2
}
4518
4519
4520
4521
static unsigned
4522
1
dissect_rrlp_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4523
1
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4524
1
                                     8, 8, false, NULL, 0, NULL, NULL);
4525
4526
1
  return offset;
4527
1
}
4528
4529
4530
4531
static unsigned
4532
1
dissect_rrlp_INTEGER_M256_255(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4533
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4534
1
                                                            -256, 255U, NULL, false);
4535
4536
1
  return offset;
4537
1
}
4538
4539
4540
4541
static unsigned
4542
2
dissect_rrlp_INTEGER_M4_3(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4543
2
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4544
2
                                                            -4, 3U, NULL, false);
4545
4546
2
  return offset;
4547
2
}
4548
4549
4550
4551
static unsigned
4552
1
dissect_rrlp_INTEGER_M8_7(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4553
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4554
1
                                                            -8, 7U, NULL, false);
4555
4556
1
  return offset;
4557
1
}
4558
4559
4560
static const per_sequence_t Almanac_ECEFsbasAlmanacSet_sequence[] = {
4561
  { &hf_rrlp_sbasAlmDataID  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
4562
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4563
  { &hf_rrlp_sbasAlmHealth  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_8 },
4564
  { &hf_rrlp_sbasAlmXg      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 },
4565
  { &hf_rrlp_sbasAlmYg      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16384_16383 },
4566
  { &hf_rrlp_sbasAlmZg      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M256_255 },
4567
  { &hf_rrlp_sbasAlmXgdot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4_3 },
4568
  { &hf_rrlp_sbasAlmYgDot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4_3 },
4569
  { &hf_rrlp_sbasAlmZgDot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8_7 },
4570
  { &hf_rrlp_sbasAlmTo      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2047 },
4571
  { NULL, 0, 0, NULL }
4572
};
4573
4574
static unsigned
4575
1
dissect_rrlp_Almanac_ECEFsbasAlmanacSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4576
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4577
1
                                   ett_rrlp_Almanac_ECEFsbasAlmanacSet, Almanac_ECEFsbasAlmanacSet_sequence);
4578
4579
1
  return offset;
4580
1
}
4581
4582
4583
4584
static unsigned
4585
1
dissect_rrlp_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4586
1
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4587
1
                                     9, 9, false, NULL, 0, NULL, NULL);
4588
4589
1
  return offset;
4590
1
}
4591
4592
4593
static const per_sequence_t Almanac_BDSAlmanacSet_r12_sequence[] = {
4594
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4595
  { &hf_rrlp_bdsAlmToa_r12  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_255 },
4596
  { &hf_rrlp_bdsAlmSqrtA_r12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_16777215 },
4597
  { &hf_rrlp_bdsAlmE_r12    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_131071 },
4598
  { &hf_rrlp_bdsAlmW_r12    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
4599
  { &hf_rrlp_bdsAlmM0_r12   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
4600
  { &hf_rrlp_bdsAlmOmega0_r12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
4601
  { &hf_rrlp_bdsAlmOmegaDot_r12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M65536_65535 },
4602
  { &hf_rrlp_bdsAlmDeltaI_r12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4603
  { &hf_rrlp_bdsAlmA0_r12   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4604
  { &hf_rrlp_bdsAlmA1_r12   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M1024_1023 },
4605
  { &hf_rrlp_bdsSvHealth_r12, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_BIT_STRING_SIZE_9 },
4606
  { NULL, 0, 0, NULL }
4607
};
4608
4609
static unsigned
4610
2
dissect_rrlp_Almanac_BDSAlmanacSet_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4611
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4612
2
                                   ett_rrlp_Almanac_BDSAlmanacSet_r12, Almanac_BDSAlmanacSet_r12_sequence);
4613
4614
2
  return offset;
4615
2
}
4616
4617
4618
static const value_string rrlp_GANSSAlmanacElement_vals[] = {
4619
  {   0, "keplerianAlmanacSet" },
4620
  {   1, "keplerianNAVAlmanac" },
4621
  {   2, "keplerianReducedAlmanac" },
4622
  {   3, "keplerianMidiAlmanac" },
4623
  {   4, "keplerianGLONASS" },
4624
  {   5, "ecefSBASAlmanac" },
4625
  {   6, "keplerianBDSAlmanac-r12" },
4626
  { 0, NULL }
4627
};
4628
4629
static const per_choice_t GANSSAlmanacElement_choice[] = {
4630
  {   0, &hf_rrlp_keplerianAlmanacSet, ASN1_EXTENSION_ROOT    , dissect_rrlp_Almanac_KeplerianSet },
4631
  {   1, &hf_rrlp_keplerianNAVAlmanac, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_NAVKeplerianSet },
4632
  {   2, &hf_rrlp_keplerianReducedAlmanac, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_ReducedKeplerianSet },
4633
  {   3, &hf_rrlp_keplerianMidiAlmanac, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_MidiAlmanacSet },
4634
  {   4, &hf_rrlp_keplerianGLONASS, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_GlonassAlmanacSet },
4635
  {   5, &hf_rrlp_ecefSBASAlmanac, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_ECEFsbasAlmanacSet },
4636
  {   6, &hf_rrlp_keplerianBDSAlmanac_r12, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_Almanac_BDSAlmanacSet_r12 },
4637
  { 0, NULL, 0, NULL }
4638
};
4639
4640
static unsigned
4641
166
dissect_rrlp_GANSSAlmanacElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4642
166
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4643
166
                                 ett_rrlp_GANSSAlmanacElement, GANSSAlmanacElement_choice,
4644
166
                                 NULL);
4645
4646
166
  return offset;
4647
166
}
4648
4649
4650
static const per_sequence_t SeqOfGANSSAlmanacElement_sequence_of[1] = {
4651
  { &hf_rrlp_SeqOfGANSSAlmanacElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSAlmanacElement },
4652
};
4653
4654
static unsigned
4655
46
dissect_rrlp_SeqOfGANSSAlmanacElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4656
46
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4657
46
                                                  ett_rrlp_SeqOfGANSSAlmanacElement, SeqOfGANSSAlmanacElement_sequence_of,
4658
46
                                                  1, 36, false);
4659
4660
46
  return offset;
4661
46
}
4662
4663
4664
static const per_sequence_t GANSSAlmanacModel_sequence[] = {
4665
  { &hf_rrlp_weekNumber_01  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
4666
  { &hf_rrlp_toa            , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_255 },
4667
  { &hf_rrlp_ioda           , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_3 },
4668
  { &hf_rrlp_ganssAlmanacList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSSAlmanacElement },
4669
  { NULL, 0, 0, NULL }
4670
};
4671
4672
static unsigned
4673
46
dissect_rrlp_GANSSAlmanacModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4674
46
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4675
46
                                   ett_rrlp_GANSSAlmanacModel, GANSSAlmanacModel_sequence);
4676
4677
46
  return offset;
4678
46
}
4679
4680
4681
static const per_sequence_t GANSSUTCModel_sequence[] = {
4682
  { &hf_rrlp_ganssUtcA1     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
4683
  { &hf_rrlp_ganssUtcA0     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
4684
  { &hf_rrlp_ganssUtcTot    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
4685
  { &hf_rrlp_ganssUtcWNt    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
4686
  { &hf_rrlp_ganssUtcDeltaTls, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
4687
  { &hf_rrlp_ganssUtcWNlsf  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
4688
  { &hf_rrlp_ganssUtcDN     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
4689
  { &hf_rrlp_ganssUtcDeltaTlsf, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
4690
  { NULL, 0, 0, NULL }
4691
};
4692
4693
static unsigned
4694
57
dissect_rrlp_GANSSUTCModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4695
57
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4696
57
                                   ett_rrlp_GANSSUTCModel, GANSSUTCModel_sequence);
4697
4698
57
  return offset;
4699
57
}
4700
4701
4702
static const per_sequence_t GANSSEphemerisExtensionTime_sequence[] = {
4703
  { &hf_rrlp_ganssEphExtDay , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_8191 },
4704
  { &hf_rrlp_ganssEphExtTOD , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSTOD },
4705
  { NULL, 0, 0, NULL }
4706
};
4707
4708
static unsigned
4709
112
dissect_rrlp_GANSSEphemerisExtensionTime(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4710
112
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4711
112
                                   ett_rrlp_GANSSEphemerisExtensionTime, GANSSEphemerisExtensionTime_sequence);
4712
4713
112
  return offset;
4714
112
}
4715
4716
4717
4718
static unsigned
4719
56
dissect_rrlp_INTEGER_1_8(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4720
56
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4721
56
                                                            1U, 8U, NULL, false);
4722
4723
56
  return offset;
4724
56
}
4725
4726
4727
4728
static unsigned
4729
32
dissect_rrlp_INTEGER_1_512(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4730
32
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4731
32
                                                            1U, 512U, NULL, false);
4732
4733
32
  return offset;
4734
32
}
4735
4736
4737
static const per_sequence_t GANSSEphemerisExtensionHeader_sequence[] = {
4738
  { &hf_rrlp_timeAtEstimation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSEphemerisExtensionTime },
4739
  { &hf_rrlp_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_8 },
4740
  { &hf_rrlp_ephemerisExtensionDuration, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_512 },
4741
  { NULL, 0, 0, NULL }
4742
};
4743
4744
static unsigned
4745
15
dissect_rrlp_GANSSEphemerisExtensionHeader(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4746
15
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4747
15
                                   ett_rrlp_GANSSEphemerisExtensionHeader, GANSSEphemerisExtensionHeader_sequence);
4748
4749
15
  return offset;
4750
15
}
4751
4752
4753
static const per_sequence_t ReferenceNavModel_sequence[] = {
4754
  { &hf_rrlp_keplerToe_01   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_37799 },
4755
  { &hf_rrlp_keplerW        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
4756
  { &hf_rrlp_keplerDeltaN   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4757
  { &hf_rrlp_keplerM0       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
4758
  { &hf_rrlp_keplerOmegaDot , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
4759
  { &hf_rrlp_keplerE        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
4760
  { &hf_rrlp_keplerIDot     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8192_8191 },
4761
  { &hf_rrlp_keplerAPowerHalf, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_4294967295 },
4762
  { &hf_rrlp_keplerI0       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
4763
  { &hf_rrlp_keplerOmega0   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
4764
  { &hf_rrlp_keplerCrs      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4765
  { &hf_rrlp_keplerCis      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4766
  { &hf_rrlp_keplerCus      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4767
  { &hf_rrlp_keplerCrc      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4768
  { &hf_rrlp_keplerCic      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4769
  { &hf_rrlp_keplerCuc      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
4770
  { NULL, 0, 0, NULL }
4771
};
4772
4773
static unsigned
4774
113
dissect_rrlp_ReferenceNavModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4775
113
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4776
113
                                   ett_rrlp_ReferenceNavModel, ReferenceNavModel_sequence);
4777
4778
113
  return offset;
4779
113
}
4780
4781
4782
static const per_sequence_t GANSSReferenceOrbit_sequence[] = {
4783
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
4784
  { &hf_rrlp_ganssOrbitModel_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_ReferenceNavModel },
4785
  { &hf_rrlp_ganssClockModel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSClockModel },
4786
  { NULL, 0, 0, NULL }
4787
};
4788
4789
static unsigned
4790
26
dissect_rrlp_GANSSReferenceOrbit(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4791
26
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4792
26
                                   ett_rrlp_GANSSReferenceOrbit, GANSSReferenceOrbit_sequence);
4793
4794
26
  return offset;
4795
26
}
4796
4797
4798
static const per_sequence_t SeqOfGANSSRefOrbit_sequence_of[1] = {
4799
  { &hf_rrlp_SeqOfGANSSRefOrbit_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSReferenceOrbit },
4800
};
4801
4802
static unsigned
4803
14
dissect_rrlp_SeqOfGANSSRefOrbit(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4804
14
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4805
14
                                                  ett_rrlp_SeqOfGANSSRefOrbit, SeqOfGANSSRefOrbit_sequence_of,
4806
14
                                                  1, 32, false);
4807
4808
14
  return offset;
4809
14
}
4810
4811
4812
4813
static unsigned
4814
152
dissect_rrlp_INTEGER_1_32(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4815
152
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4816
152
                                                            1U, 32U, NULL, false);
4817
4818
152
  return offset;
4819
152
}
4820
4821
4822
4823
static unsigned
4824
174
dissect_rrlp_INTEGER_1_16(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4825
174
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4826
174
                                                            1U, 16U, NULL, false);
4827
4828
174
  return offset;
4829
174
}
4830
4831
4832
4833
static unsigned
4834
25
dissect_rrlp_INTEGER_1_14(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4835
25
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4836
25
                                                            1U, 14U, NULL, false);
4837
4838
25
  return offset;
4839
25
}
4840
4841
4842
4843
static unsigned
4844
26
dissect_rrlp_INTEGER_1_10(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4845
26
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4846
26
                                                            1U, 10U, NULL, false);
4847
4848
26
  return offset;
4849
26
}
4850
4851
4852
static const per_sequence_t GANSSEphemerisDeltaBitSizes_sequence[] = {
4853
  { &hf_rrlp_bitsize_delta_omega, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
4854
  { &hf_rrlp_bitsize_delta_deltaN, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
4855
  { &hf_rrlp_bitsize_delta_m0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
4856
  { &hf_rrlp_bitsize_delta_omegadot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_24 },
4857
  { &hf_rrlp_bitsize_delta_e, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
4858
  { &hf_rrlp_bitsize_delta_idot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_14 },
4859
  { &hf_rrlp_bitsize_delta_sqrtA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
4860
  { &hf_rrlp_bitsize_delta_i0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
4861
  { &hf_rrlp_bitsize_delta_omega0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
4862
  { &hf_rrlp_bitsize_delta_crs, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
4863
  { &hf_rrlp_bitsize_delta_cis, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
4864
  { &hf_rrlp_bitsize_delta_cus, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
4865
  { &hf_rrlp_bitsize_delta_crc, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
4866
  { &hf_rrlp_bitsize_delta_cic, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
4867
  { &hf_rrlp_bitsize_delta_cuc, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
4868
  { &hf_rrlp_bitsize_delta_tgd1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_10 },
4869
  { &hf_rrlp_bitsize_delta_tgd2, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_10 },
4870
  { NULL, 0, 0, NULL }
4871
};
4872
4873
static unsigned
4874
11
dissect_rrlp_GANSSEphemerisDeltaBitSizes(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4875
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4876
11
                                   ett_rrlp_GANSSEphemerisDeltaBitSizes, GANSSEphemerisDeltaBitSizes_sequence);
4877
4878
11
  return offset;
4879
11
}
4880
4881
4882
static const per_sequence_t GANSSEphemerisDeltaScales_sequence[] = {
4883
  { &hf_rrlp_scale_delta_omega, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4884
  { &hf_rrlp_scale_delta_deltaN, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4885
  { &hf_rrlp_scale_delta_m0 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4886
  { &hf_rrlp_scale_delta_omegadot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4887
  { &hf_rrlp_scale_delta_e  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4888
  { &hf_rrlp_scale_delta_idot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4889
  { &hf_rrlp_scale_delta_sqrtA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4890
  { &hf_rrlp_scale_delta_i0 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4891
  { &hf_rrlp_scale_delta_omega0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4892
  { &hf_rrlp_scale_delta_crs, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4893
  { &hf_rrlp_scale_delta_cis, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4894
  { &hf_rrlp_scale_delta_cus, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4895
  { &hf_rrlp_scale_delta_crc, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4896
  { &hf_rrlp_scale_delta_cic, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4897
  { &hf_rrlp_scale_delta_cuc, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4898
  { &hf_rrlp_scale_delta_tgd1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4899
  { &hf_rrlp_scale_delta_tgd2, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
4900
  { NULL, 0, 0, NULL }
4901
};
4902
4903
static unsigned
4904
12
dissect_rrlp_GANSSEphemerisDeltaScales(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4905
12
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4906
12
                                   ett_rrlp_GANSSEphemerisDeltaScales, GANSSEphemerisDeltaScales_sequence);
4907
4908
12
  return offset;
4909
12
}
4910
4911
4912
static const per_sequence_t GANSSDeltaEpochHeader_sequence[] = {
4913
  { &hf_rrlp_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_1_8 },
4914
  { &hf_rrlp_ephemerisDeltaSizes, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSEphemerisDeltaBitSizes },
4915
  { &hf_rrlp_ephemerisDeltaScales, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSEphemerisDeltaScales },
4916
  { NULL, 0, 0, NULL }
4917
};
4918
4919
static unsigned
4920
30
dissect_rrlp_GANSSDeltaEpochHeader(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4921
30
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4922
30
                                   ett_rrlp_GANSSDeltaEpochHeader, GANSSDeltaEpochHeader_sequence);
4923
4924
30
  return offset;
4925
30
}
4926
4927
4928
4929
static unsigned
4930
345
dissect_rrlp_OCTET_STRING_SIZE_1_49(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4931
345
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
4932
345
                                       1, 49, false, NULL);
4933
4934
345
  return offset;
4935
345
}
4936
4937
4938
static const per_sequence_t GANSSDeltaElementList_sequence_of[1] = {
4939
  { &hf_rrlp_GANSSDeltaElementList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OCTET_STRING_SIZE_1_49 },
4940
};
4941
4942
static unsigned
4943
274
dissect_rrlp_GANSSDeltaElementList(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4944
274
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4945
274
                                                  ett_rrlp_GANSSDeltaElementList, GANSSDeltaElementList_sequence_of,
4946
274
                                                  1, 32, false);
4947
4948
274
  return offset;
4949
274
}
4950
4951
4952
static const per_sequence_t GANSSEphemerisDeltaEpoch_sequence[] = {
4953
  { &hf_rrlp_ganssDeltaEpochHeader, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSDeltaEpochHeader },
4954
  { &hf_rrlp_ganssDeltaElementList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSDeltaElementList },
4955
  { NULL, 0, 0, NULL }
4956
};
4957
4958
static unsigned
4959
284
dissect_rrlp_GANSSEphemerisDeltaEpoch(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4960
284
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4961
284
                                   ett_rrlp_GANSSEphemerisDeltaEpoch, GANSSEphemerisDeltaEpoch_sequence);
4962
4963
284
  return offset;
4964
284
}
4965
4966
4967
static const per_sequence_t GANSSEphemerisDeltaMatrix_sequence_of[1] = {
4968
  { &hf_rrlp_GANSSEphemerisDeltaMatrix_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSEphemerisDeltaEpoch },
4969
};
4970
4971
static unsigned
4972
25
dissect_rrlp_GANSSEphemerisDeltaMatrix(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4973
25
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4974
25
                                                  ett_rrlp_GANSSEphemerisDeltaMatrix, GANSSEphemerisDeltaMatrix_sequence_of,
4975
25
                                                  1, 128, false);
4976
4977
25
  return offset;
4978
25
}
4979
4980
4981
static const per_sequence_t GANSSEphemerisExtension_sequence[] = {
4982
  { &hf_rrlp_ganssEphemerisHeader, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSEphemerisExtensionHeader },
4983
  { &hf_rrlp_ganssReferenceSet, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_SeqOfGANSSRefOrbit },
4984
  { &hf_rrlp_ganssephemerisDeltasMatrix, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSEphemerisDeltaMatrix },
4985
  { NULL, 0, 0, NULL }
4986
};
4987
4988
static unsigned
4989
70
dissect_rrlp_GANSSEphemerisExtension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4990
70
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4991
70
                                   ett_rrlp_GANSSEphemerisExtension, GANSSEphemerisExtension_sequence);
4992
4993
70
  return offset;
4994
70
}
4995
4996
4997
4998
static unsigned
4999
89
dissect_rrlp_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5000
89
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
5001
89
                                     64, 64, false, NULL, 0, NULL, NULL);
5002
5003
89
  return offset;
5004
89
}
5005
5006
5007
static const per_sequence_t GANSSSatEventsInfo_sequence[] = {
5008
  { &hf_rrlp_eventOccured   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_64 },
5009
  { &hf_rrlp_futureEventNoted, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_64 },
5010
  { NULL, 0, 0, NULL }
5011
};
5012
5013
static unsigned
5014
46
dissect_rrlp_GANSSSatEventsInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5015
46
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5016
46
                                   ett_rrlp_GANSSSatEventsInfo, GANSSSatEventsInfo_sequence);
5017
5018
46
  return offset;
5019
46
}
5020
5021
5022
static const per_sequence_t GANSSEphemerisExtensionCheck_sequence[] = {
5023
  { &hf_rrlp_ganssBeginTime , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSEphemerisExtensionTime },
5024
  { &hf_rrlp_ganssEndTime   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSEphemerisExtensionTime },
5025
  { &hf_rrlp_ganssSatEventsInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSatEventsInfo },
5026
  { NULL, 0, 0, NULL }
5027
};
5028
5029
static unsigned
5030
49
dissect_rrlp_GANSSEphemerisExtensionCheck(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5031
49
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5032
49
                                   ett_rrlp_GANSSEphemerisExtensionCheck, GANSSEphemerisExtensionCheck_sequence);
5033
5034
49
  return offset;
5035
49
}
5036
5037
5038
static const per_sequence_t UTCmodelSet2_sequence[] = {
5039
  { &hf_rrlp_utcA0_01       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
5040
  { &hf_rrlp_utcA1_01       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4096_4095 },
5041
  { &hf_rrlp_utcA2          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M64_63 },
5042
  { &hf_rrlp_utcDeltaTls    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5043
  { &hf_rrlp_utcTot_01      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
5044
  { &hf_rrlp_utcWNot        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_8191 },
5045
  { &hf_rrlp_utcWNlsf       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
5046
  { &hf_rrlp_utcDN_bit_str  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_4 },
5047
  { &hf_rrlp_utcDeltaTlsf   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5048
  { NULL, 0, 0, NULL }
5049
};
5050
5051
static unsigned
5052
2
dissect_rrlp_UTCmodelSet2(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5053
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5054
2
                                   ett_rrlp_UTCmodelSet2, UTCmodelSet2_sequence);
5055
5056
2
  return offset;
5057
2
}
5058
5059
5060
static const per_sequence_t UTCmodelSet3_sequence[] = {
5061
  { &hf_rrlp_nA             , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_1461 },
5062
  { &hf_rrlp_tauC           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
5063
  { &hf_rrlp_b1             , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M1024_1023 },
5064
  { &hf_rrlp_b2             , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M512_511 },
5065
  { &hf_rrlp_kp             , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_BIT_STRING_SIZE_2 },
5066
  { NULL, 0, 0, NULL }
5067
};
5068
5069
static unsigned
5070
8
dissect_rrlp_UTCmodelSet3(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5071
8
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5072
8
                                   ett_rrlp_UTCmodelSet3, UTCmodelSet3_sequence);
5073
5074
8
  return offset;
5075
8
}
5076
5077
5078
static const per_sequence_t UTCmodelSet4_sequence[] = {
5079
  { &hf_rrlp_utcA1wnt       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
5080
  { &hf_rrlp_utcA0wnt       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
5081
  { &hf_rrlp_utcTot         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
5082
  { &hf_rrlp_utcWNt         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
5083
  { &hf_rrlp_utcDeltaTls    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5084
  { &hf_rrlp_utcWNlsf       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
5085
  { &hf_rrlp_utcDN          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5086
  { &hf_rrlp_utcDeltaTlsf   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5087
  { &hf_rrlp_utcStandardID  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
5088
  { NULL, 0, 0, NULL }
5089
};
5090
5091
static unsigned
5092
5
dissect_rrlp_UTCmodelSet4(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5093
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5094
5
                                   ett_rrlp_UTCmodelSet4, UTCmodelSet4_sequence);
5095
5096
5
  return offset;
5097
5
}
5098
5099
5100
static const per_sequence_t UTCmodelSet5_r12_sequence[] = {
5101
  { &hf_rrlp_utcA0_r12      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2147483648_2147483647 },
5102
  { &hf_rrlp_utcA1_r12      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M8388608_8388607 },
5103
  { &hf_rrlp_utcDeltaTls_r12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5104
  { &hf_rrlp_utcWNlsf_r12   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
5105
  { &hf_rrlp_utcDN_r12      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_255 },
5106
  { &hf_rrlp_utcDeltaTlsf_r12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5107
  { NULL, 0, 0, NULL }
5108
};
5109
5110
static unsigned
5111
1
dissect_rrlp_UTCmodelSet5_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5112
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5113
1
                                   ett_rrlp_UTCmodelSet5_r12, UTCmodelSet5_r12_sequence);
5114
5115
1
  return offset;
5116
1
}
5117
5118
5119
static const value_string rrlp_GANSSAddUTCModel_vals[] = {
5120
  {   0, "utcModel2" },
5121
  {   1, "utcModel3" },
5122
  {   2, "utcModel4" },
5123
  {   3, "utcModel5-r12" },
5124
  { 0, NULL }
5125
};
5126
5127
static const per_choice_t GANSSAddUTCModel_choice[] = {
5128
  {   0, &hf_rrlp_utcModel2      , ASN1_EXTENSION_ROOT    , dissect_rrlp_UTCmodelSet2 },
5129
  {   1, &hf_rrlp_utcModel3      , ASN1_EXTENSION_ROOT    , dissect_rrlp_UTCmodelSet3 },
5130
  {   2, &hf_rrlp_utcModel4      , ASN1_EXTENSION_ROOT    , dissect_rrlp_UTCmodelSet4 },
5131
  {   3, &hf_rrlp_utcModel5_r12  , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_UTCmodelSet5_r12 },
5132
  { 0, NULL, 0, NULL }
5133
};
5134
5135
static unsigned
5136
16
dissect_rrlp_GANSSAddUTCModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5137
16
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5138
16
                                 ett_rrlp_GANSSAddUTCModel, GANSSAddUTCModel_choice,
5139
16
                                 NULL);
5140
5141
16
  return offset;
5142
16
}
5143
5144
5145
static const per_sequence_t GANSS_ID1_element_sequence[] = {
5146
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
5147
  { &hf_rrlp_signalsAvailable, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignals },
5148
  { NULL, 0, 0, NULL }
5149
};
5150
5151
static unsigned
5152
82
dissect_rrlp_GANSS_ID1_element(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5153
82
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5154
82
                                   ett_rrlp_GANSS_ID1_element, GANSS_ID1_element_sequence);
5155
5156
82
  return offset;
5157
82
}
5158
5159
5160
static const per_sequence_t GANSS_ID1_sequence_of[1] = {
5161
  { &hf_rrlp_GANSS_ID1_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_ID1_element },
5162
};
5163
5164
static unsigned
5165
8
dissect_rrlp_GANSS_ID1(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5166
8
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5167
8
                                                  ett_rrlp_GANSS_ID1, GANSS_ID1_sequence_of,
5168
8
                                                  1, 64, false);
5169
5170
8
  return offset;
5171
8
}
5172
5173
5174
5175
static unsigned
5176
64
dissect_rrlp_INTEGER_M7_13(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5177
64
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5178
64
                                                            -7, 13U, NULL, false);
5179
5180
64
  return offset;
5181
64
}
5182
5183
5184
static const per_sequence_t GANSS_ID3_element_sequence[] = {
5185
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
5186
  { &hf_rrlp_signalsAvailable, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignals },
5187
  { &hf_rrlp_channelNumber  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M7_13 },
5188
  { NULL, 0, 0, NULL }
5189
};
5190
5191
static unsigned
5192
64
dissect_rrlp_GANSS_ID3_element(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5193
64
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5194
64
                                   ett_rrlp_GANSS_ID3_element, GANSS_ID3_element_sequence);
5195
5196
64
  return offset;
5197
64
}
5198
5199
5200
static const per_sequence_t GANSS_ID3_sequence_of[1] = {
5201
  { &hf_rrlp_GANSS_ID3_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_ID3_element },
5202
};
5203
5204
static unsigned
5205
4
dissect_rrlp_GANSS_ID3(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5206
4
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5207
4
                                                  ett_rrlp_GANSS_ID3, GANSS_ID3_sequence_of,
5208
4
                                                  1, 64, false);
5209
5210
4
  return offset;
5211
4
}
5212
5213
5214
static const value_string rrlp_GANSSAuxiliaryInformation_vals[] = {
5215
  {   0, "ganssID1" },
5216
  {   1, "ganssID3" },
5217
  { 0, NULL }
5218
};
5219
5220
static const per_choice_t GANSSAuxiliaryInformation_choice[] = {
5221
  {   0, &hf_rrlp_ganssID1       , ASN1_EXTENSION_ROOT    , dissect_rrlp_GANSS_ID1 },
5222
  {   1, &hf_rrlp_ganssID3       , ASN1_EXTENSION_ROOT    , dissect_rrlp_GANSS_ID3 },
5223
  { 0, NULL, 0, NULL }
5224
};
5225
5226
static unsigned
5227
14
dissect_rrlp_GANSSAuxiliaryInformation(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5228
14
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5229
14
                                 ett_rrlp_GANSSAuxiliaryInformation, GANSSAuxiliaryInformation_choice,
5230
14
                                 NULL);
5231
5232
14
  return offset;
5233
14
}
5234
5235
5236
static const per_sequence_t DGANSSExtensionSgnElement_sequence[] = {
5237
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
5238
  { &hf_rrlp_udreGrowthRate , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
5239
  { &hf_rrlp_udreValidityTime, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
5240
  { NULL, 0, 0, NULL }
5241
};
5242
5243
static unsigned
5244
11
dissect_rrlp_DGANSSExtensionSgnElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5245
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5246
11
                                   ett_rrlp_DGANSSExtensionSgnElement, DGANSSExtensionSgnElement_sequence);
5247
5248
11
  return offset;
5249
11
}
5250
5251
5252
static const per_sequence_t SeqOfDGANSSExtensionSgnElement_sequence_of[1] = {
5253
  { &hf_rrlp_SeqOfDGANSSExtensionSgnElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_DGANSSExtensionSgnElement },
5254
};
5255
5256
static unsigned
5257
5
dissect_rrlp_SeqOfDGANSSExtensionSgnElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5258
5
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5259
5
                                                  ett_rrlp_SeqOfDGANSSExtensionSgnElement, SeqOfDGANSSExtensionSgnElement_sequence_of,
5260
5
                                                  1, 16, false);
5261
5262
5
  return offset;
5263
5
}
5264
5265
5266
static const per_sequence_t DGANSSExtensionSgnTypeElement_sequence[] = {
5267
  { &hf_rrlp_ganssSignalID  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID },
5268
  { &hf_rrlp_dganssExtensionSgnList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfDGANSSExtensionSgnElement },
5269
  { NULL, 0, 0, NULL }
5270
};
5271
5272
static unsigned
5273
5
dissect_rrlp_DGANSSExtensionSgnTypeElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5274
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5275
5
                                   ett_rrlp_DGANSSExtensionSgnTypeElement, DGANSSExtensionSgnTypeElement_sequence);
5276
5277
5
  return offset;
5278
5
}
5279
5280
5281
static const per_sequence_t GANSSDiffCorrectionsValidityPeriod_sequence_of[1] = {
5282
  { &hf_rrlp_GANSSDiffCorrectionsValidityPeriod_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_DGANSSExtensionSgnTypeElement },
5283
};
5284
5285
static unsigned
5286
4
dissect_rrlp_GANSSDiffCorrectionsValidityPeriod(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5287
4
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5288
4
                                                  ett_rrlp_GANSSDiffCorrectionsValidityPeriod, GANSSDiffCorrectionsValidityPeriod_sequence_of,
5289
4
                                                  1, 3, false);
5290
5291
4
  return offset;
5292
4
}
5293
5294
5295
static const per_sequence_t GANSSTimeModelElement_R10_Ext_sequence[] = {
5296
  { &hf_rrlp_gnssTOID       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
5297
  { &hf_rrlp_deltaT         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5298
  { NULL, 0, 0, NULL }
5299
};
5300
5301
static unsigned
5302
14
dissect_rrlp_GANSSTimeModelElement_R10_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5303
14
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5304
14
                                   ett_rrlp_GANSSTimeModelElement_R10_Ext, GANSSTimeModelElement_R10_Ext_sequence);
5305
5306
14
  return offset;
5307
14
}
5308
5309
5310
static const per_sequence_t SeqOfGANSSTimeModel_R10_Ext_sequence_of[1] = {
5311
  { &hf_rrlp_SeqOfGANSSTimeModel_R10_Ext_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSTimeModelElement_R10_Ext },
5312
};
5313
5314
static unsigned
5315
6
dissect_rrlp_SeqOfGANSSTimeModel_R10_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5316
6
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5317
6
                                                  ett_rrlp_SeqOfGANSSTimeModel_R10_Ext, SeqOfGANSSTimeModel_R10_Ext_sequence_of,
5318
6
                                                  1, 7, false);
5319
5320
6
  return offset;
5321
6
}
5322
5323
5324
static const per_sequence_t GANSSRefMeasurement_R10_Ext_Element_sequence[] = {
5325
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
5326
  { &hf_rrlp_azimuthLSB     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
5327
  { &hf_rrlp_elevationLSB   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
5328
  { NULL, 0, 0, NULL }
5329
};
5330
5331
static unsigned
5332
2
dissect_rrlp_GANSSRefMeasurement_R10_Ext_Element(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5333
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5334
2
                                   ett_rrlp_GANSSRefMeasurement_R10_Ext_Element, GANSSRefMeasurement_R10_Ext_Element_sequence);
5335
5336
2
  return offset;
5337
2
}
5338
5339
5340
static const per_sequence_t GANSSRefMeasurementAssist_R10_Ext_sequence_of[1] = {
5341
  { &hf_rrlp_GANSSRefMeasurementAssist_R10_Ext_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSRefMeasurement_R10_Ext_Element },
5342
};
5343
5344
static unsigned
5345
2
dissect_rrlp_GANSSRefMeasurementAssist_R10_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5346
2
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5347
2
                                                  ett_rrlp_GANSSRefMeasurementAssist_R10_Ext, GANSSRefMeasurementAssist_R10_Ext_sequence_of,
5348
2
                                                  1, 16, false);
5349
5350
2
  return offset;
5351
2
}
5352
5353
5354
static const per_sequence_t GANSSAlmanacModel_R10_Ext_sequence[] = {
5355
  { &hf_rrlp_completeAlmanacProvided, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
5356
  { NULL, 0, 0, NULL }
5357
};
5358
5359
static unsigned
5360
5
dissect_rrlp_GANSSAlmanacModel_R10_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5361
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5362
5
                                   ett_rrlp_GANSSAlmanacModel_R10_Ext, GANSSAlmanacModel_R10_Ext_sequence);
5363
5364
5
  return offset;
5365
5
}
5366
5367
5368
5369
static unsigned
5370
1
dissect_rrlp_INTEGER_256_1023(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5371
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5372
1
                                                            256U, 1023U, NULL, false);
5373
5374
1
  return offset;
5375
1
}
5376
5377
5378
5379
static unsigned
5380
1
dissect_rrlp_INTEGER_4_15(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5381
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5382
1
                                                            4U, 15U, NULL, false);
5383
5384
1
  return offset;
5385
1
}
5386
5387
5388
static const per_sequence_t GANSSAlmanacModel_R12_Ext_sequence[] = {
5389
  { &hf_rrlp_toa_ext        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_256_1023 },
5390
  { &hf_rrlp_ioda_ext       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_4_15 },
5391
  { NULL, 0, 0, NULL }
5392
};
5393
5394
static unsigned
5395
3
dissect_rrlp_GANSSAlmanacModel_R12_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5396
3
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5397
3
                                   ett_rrlp_GANSSAlmanacModel_R12_Ext, GANSSAlmanacModel_R12_Ext_sequence);
5398
5399
3
  return offset;
5400
3
}
5401
5402
5403
5404
static unsigned
5405
3
dissect_rrlp_INTEGER_0_100(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5406
3
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5407
3
                                                            0U, 100U, NULL, false);
5408
5409
3
  return offset;
5410
3
}
5411
5412
5413
static const value_string rrlp_T_dopplerUncertaintyExt_vals[] = {
5414
  {   0, "d60" },
5415
  {   1, "d80" },
5416
  {   2, "d100" },
5417
  {   3, "d120" },
5418
  {   4, "noInformation" },
5419
  { 0, NULL }
5420
};
5421
5422
5423
static unsigned
5424
1
dissect_rrlp_T_dopplerUncertaintyExt(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5425
1
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
5426
1
                                     5, NULL, true, 0, NULL);
5427
5428
1
  return offset;
5429
1
}
5430
5431
5432
static const per_sequence_t GANSSRefMeasurement_R12_Ext_Element_sequence[] = {
5433
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
5434
  { &hf_rrlp_dopplerUncertaintyExt, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_T_dopplerUncertaintyExt },
5435
  { NULL, 0, 0, NULL }
5436
};
5437
5438
static unsigned
5439
1
dissect_rrlp_GANSSRefMeasurement_R12_Ext_Element(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5440
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5441
1
                                   ett_rrlp_GANSSRefMeasurement_R12_Ext_Element, GANSSRefMeasurement_R12_Ext_Element_sequence);
5442
5443
1
  return offset;
5444
1
}
5445
5446
5447
static const per_sequence_t SeqOfGANSSRefMeasurementElement_R12_sequence_of[1] = {
5448
  { &hf_rrlp_SeqOfGANSSRefMeasurementElement_R12_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSRefMeasurement_R12_Ext_Element },
5449
};
5450
5451
static unsigned
5452
1
dissect_rrlp_SeqOfGANSSRefMeasurementElement_R12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5453
1
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5454
1
                                                  ett_rrlp_SeqOfGANSSRefMeasurementElement_R12, SeqOfGANSSRefMeasurementElement_R12_sequence_of,
5455
1
                                                  1, 16, false);
5456
5457
1
  return offset;
5458
1
}
5459
5460
5461
static const per_sequence_t GANSSRefMeasurementAssist_R12_Ext_sequence[] = {
5462
  { &hf_rrlp_ganssSignalID  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID },
5463
  { &hf_rrlp_confidence     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_100 },
5464
  { &hf_rrlp_ganssRefMeasAssistList_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SeqOfGANSSRefMeasurementElement_R12 },
5465
  { NULL, 0, 0, NULL }
5466
};
5467
5468
static unsigned
5469
1
dissect_rrlp_GANSSRefMeasurementAssist_R12_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5470
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5471
1
                                   ett_rrlp_GANSSRefMeasurementAssist_R12_Ext, GANSSRefMeasurementAssist_R12_Ext_sequence);
5472
5473
1
  return offset;
5474
1
}
5475
5476
5477
5478
static unsigned
5479
0
dissect_rrlp_INTEGER_0_3599(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5480
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5481
0
                                                            0U, 3599U, NULL, false);
5482
5483
0
  return offset;
5484
0
}
5485
5486
5487
static const per_sequence_t DBDS_CorrectionElement_r12_sequence[] = {
5488
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
5489
  { &hf_rrlp_bds_UDREI_r12  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
5490
  { &hf_rrlp_bds_RURAI_r12  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
5491
  { &hf_rrlp_bds_ECC_DeltaT_r12, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M4096_4095 },
5492
  { NULL, 0, 0, NULL }
5493
};
5494
5495
static unsigned
5496
0
dissect_rrlp_DBDS_CorrectionElement_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5497
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5498
0
                                   ett_rrlp_DBDS_CorrectionElement_r12, DBDS_CorrectionElement_r12_sequence);
5499
5500
0
  return offset;
5501
0
}
5502
5503
5504
static const per_sequence_t DBDS_CorrectionList_r12_sequence_of[1] = {
5505
  { &hf_rrlp_DBDS_CorrectionList_r12_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_DBDS_CorrectionElement_r12 },
5506
};
5507
5508
static unsigned
5509
0
dissect_rrlp_DBDS_CorrectionList_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5510
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5511
0
                                                  ett_rrlp_DBDS_CorrectionList_r12, DBDS_CorrectionList_r12_sequence_of,
5512
0
                                                  1, 64, false);
5513
5514
0
  return offset;
5515
0
}
5516
5517
5518
static const per_sequence_t BDS_SgnTypeElement_r12_sequence[] = {
5519
  { &hf_rrlp_ganssSignalID  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSSignalID },
5520
  { &hf_rrlp_dbds_CorrectionList_r12, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_DBDS_CorrectionList_r12 },
5521
  { NULL, 0, 0, NULL }
5522
};
5523
5524
static unsigned
5525
0
dissect_rrlp_BDS_SgnTypeElement_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5526
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5527
0
                                   ett_rrlp_BDS_SgnTypeElement_r12, BDS_SgnTypeElement_r12_sequence);
5528
5529
0
  return offset;
5530
0
}
5531
5532
5533
static const per_sequence_t BDS_SgnTypeList_r12_sequence_of[1] = {
5534
  { &hf_rrlp_BDS_SgnTypeList_r12_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BDS_SgnTypeElement_r12 },
5535
};
5536
5537
static unsigned
5538
0
dissect_rrlp_BDS_SgnTypeList_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5539
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5540
0
                                                  ett_rrlp_BDS_SgnTypeList_r12, BDS_SgnTypeList_r12_sequence_of,
5541
0
                                                  1, 3, false);
5542
5543
0
  return offset;
5544
0
}
5545
5546
5547
static const per_sequence_t BDS_DiffCorrections_r12_sequence[] = {
5548
  { &hf_rrlp_dbds_RefTime_r12, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3599 },
5549
  { &hf_rrlp_bds_SgnTypeList_r12, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_BDS_SgnTypeList_r12 },
5550
  { NULL, 0, 0, NULL }
5551
};
5552
5553
static unsigned
5554
0
dissect_rrlp_BDS_DiffCorrections_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5555
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5556
0
                                   ett_rrlp_BDS_DiffCorrections_r12, BDS_DiffCorrections_r12_sequence);
5557
5558
0
  return offset;
5559
0
}
5560
5561
5562
5563
static unsigned
5564
0
dissect_rrlp_INTEGER_1_320(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5565
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5566
0
                                                            1U, 320U, NULL, false);
5567
5568
0
  return offset;
5569
0
}
5570
5571
5572
5573
static unsigned
5574
52
dissect_rrlp_INTEGER_0_511(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5575
52
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5576
52
                                                            0U, 511U, NULL, false);
5577
5578
52
  return offset;
5579
52
}
5580
5581
5582
static const per_sequence_t GridIonElement_r12_sequence[] = {
5583
  { &hf_rrlp_igp_ID_r12     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_320 },
5584
  { &hf_rrlp_dt_r12         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_511 },
5585
  { &hf_rrlp_givei_r12      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
5586
  { NULL, 0, 0, NULL }
5587
};
5588
5589
static unsigned
5590
0
dissect_rrlp_GridIonElement_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5591
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5592
0
                                   ett_rrlp_GridIonElement_r12, GridIonElement_r12_sequence);
5593
5594
0
  return offset;
5595
0
}
5596
5597
5598
static const per_sequence_t GridIonList_r12_sequence_of[1] = {
5599
  { &hf_rrlp_GridIonList_r12_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GridIonElement_r12 },
5600
};
5601
5602
static unsigned
5603
0
dissect_rrlp_GridIonList_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5604
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5605
0
                                                  ett_rrlp_GridIonList_r12, GridIonList_r12_sequence_of,
5606
0
                                                  1, 320, false);
5607
5608
0
  return offset;
5609
0
}
5610
5611
5612
static const per_sequence_t BDS_GridModelParameter_r12_sequence[] = {
5613
  { &hf_rrlp_bds_RefTime_r12, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3599 },
5614
  { &hf_rrlp_gridIonList_r12, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GridIonList_r12 },
5615
  { NULL, 0, 0, NULL }
5616
};
5617
5618
static unsigned
5619
0
dissect_rrlp_BDS_GridModelParameter_r12(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5620
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5621
0
                                   ett_rrlp_BDS_GridModelParameter_r12, BDS_GridModelParameter_r12_sequence);
5622
5623
0
  return offset;
5624
0
}
5625
5626
5627
static const per_sequence_t GANSSGenericAssistDataElement_sequence[] = {
5628
  { &hf_rrlp_ganssID        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
5629
  { &hf_rrlp_ganssTimeModel , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_SeqOfGANSSTimeModel },
5630
  { &hf_rrlp_ganssDiffCorrections, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSDiffCorrections },
5631
  { &hf_rrlp_ganssNavigationModel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSNavModel },
5632
  { &hf_rrlp_ganssRealTimeIntegrity, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSRealTimeIntegrity },
5633
  { &hf_rrlp_ganssDataBitAssist, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSDataBitAssist },
5634
  { &hf_rrlp_ganssRefMeasurementAssist, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSRefMeasurementAssist },
5635
  { &hf_rrlp_ganssAlmanacModel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSAlmanacModel },
5636
  { &hf_rrlp_ganssUTCModel  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSUTCModel },
5637
  { &hf_rrlp_ganssEphemerisExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSEphemerisExtension },
5638
  { &hf_rrlp_ganssEphemerisExtCheck, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSEphemerisExtensionCheck },
5639
  { &hf_rrlp_sbasID_int     , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
5640
  { &hf_rrlp_ganssAddUTCModel, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSAddUTCModel },
5641
  { &hf_rrlp_ganssAuxiliaryInfo, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSAuxiliaryInformation },
5642
  { &hf_rrlp_ganssDiffCorrectionsValidityPeriod, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSDiffCorrectionsValidityPeriod },
5643
  { &hf_rrlp_ganssTimeModel_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_SeqOfGANSSTimeModel_R10_Ext },
5644
  { &hf_rrlp_ganssRefMeasurementAssist_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSRefMeasurementAssist_R10_Ext },
5645
  { &hf_rrlp_ganssAlmanacModel_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSAlmanacModel_R10_Ext },
5646
  { &hf_rrlp_ganssAlmanacModel_R12_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSAlmanacModel_R12_Ext },
5647
  { &hf_rrlp_ganssRefMeasurementAssist_R12_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSRefMeasurementAssist_R12_Ext },
5648
  { &hf_rrlp_bdsDifferentialCorrections_r12, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_BDS_DiffCorrections_r12 },
5649
  { &hf_rrlp_bdsGridModel_r12, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_BDS_GridModelParameter_r12 },
5650
  { NULL, 0, 0, NULL }
5651
};
5652
5653
static unsigned
5654
373
dissect_rrlp_GANSSGenericAssistDataElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5655
373
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5656
373
                                   ett_rrlp_GANSSGenericAssistDataElement, GANSSGenericAssistDataElement_sequence);
5657
5658
373
  return offset;
5659
373
}
5660
5661
5662
static const per_sequence_t SeqOfGANSSGenericAssistDataElement_sequence_of[1] = {
5663
  { &hf_rrlp_SeqOfGANSSGenericAssistDataElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSGenericAssistDataElement },
5664
};
5665
5666
static unsigned
5667
221
dissect_rrlp_SeqOfGANSSGenericAssistDataElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5668
221
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5669
221
                                                  ett_rrlp_SeqOfGANSSGenericAssistDataElement, SeqOfGANSSGenericAssistDataElement_sequence_of,
5670
221
                                                  1, 8, false);
5671
5672
221
  return offset;
5673
221
}
5674
5675
5676
static const per_sequence_t GANSS_ControlHeader_sequence[] = {
5677
  { &hf_rrlp_ganssCommonAssistData, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GANSSCommonAssistData },
5678
  { &hf_rrlp_ganssGenericAssistDataList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SeqOfGANSSGenericAssistDataElement },
5679
  { NULL, 0, 0, NULL }
5680
};
5681
5682
static unsigned
5683
257
dissect_rrlp_GANSS_ControlHeader(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5684
257
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5685
257
                                   ett_rrlp_GANSS_ControlHeader, GANSS_ControlHeader_sequence);
5686
5687
257
  return offset;
5688
257
}
5689
5690
5691
static const per_sequence_t GANSS_AssistData_sequence[] = {
5692
  { &hf_rrlp_ganss_controlHeader, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_ControlHeader },
5693
  { NULL, 0, 0, NULL }
5694
};
5695
5696
static unsigned
5697
257
dissect_rrlp_GANSS_AssistData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5698
257
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5699
257
                                   ett_rrlp_GANSS_AssistData, GANSS_AssistData_sequence);
5700
5701
257
  return offset;
5702
257
}
5703
5704
5705
5706
static unsigned
5707
3
dissect_rrlp_RequiredResponseTime(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5708
3
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5709
3
                                                            1U, 128U, NULL, false);
5710
5711
3
  return offset;
5712
3
}
5713
5714
5715
static const per_sequence_t GPSEphemerisExtensionTime_sequence[] = {
5716
  { &hf_rrlp_gpsWeek        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSWeek },
5717
  { &hf_rrlp_gpsTOW_02      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_604799 },
5718
  { NULL, 0, 0, NULL }
5719
};
5720
5721
static unsigned
5722
43
dissect_rrlp_GPSEphemerisExtensionTime(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5723
43
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5724
43
                                   ett_rrlp_GPSEphemerisExtensionTime, GPSEphemerisExtensionTime_sequence);
5725
5726
43
  return offset;
5727
43
}
5728
5729
5730
static const per_sequence_t GPSEphemerisExtensionHeader_sequence[] = {
5731
  { &hf_rrlp_timeofEstimation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSEphemerisExtensionTime },
5732
  { &hf_rrlp_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_8 },
5733
  { &hf_rrlp_ephemerisExtensionDuration, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_512 },
5734
  { NULL, 0, 0, NULL }
5735
};
5736
5737
static unsigned
5738
19
dissect_rrlp_GPSEphemerisExtensionHeader(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5739
19
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5740
19
                                   ett_rrlp_GPSEphemerisExtensionHeader, GPSEphemerisExtensionHeader_sequence);
5741
5742
19
  return offset;
5743
19
}
5744
5745
5746
static const per_sequence_t GPSClockModel_sequence[] = {
5747
  { &hf_rrlp_af2            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5748
  { &hf_rrlp_af1            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
5749
  { &hf_rrlp_af0            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M2097152_2097151 },
5750
  { &hf_rrlp_tgd            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M128_127 },
5751
  { NULL, 0, 0, NULL }
5752
};
5753
5754
static unsigned
5755
79
dissect_rrlp_GPSClockModel(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5756
79
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5757
79
                                   ett_rrlp_GPSClockModel, GPSClockModel_sequence);
5758
5759
79
  return offset;
5760
79
}
5761
5762
5763
static const per_sequence_t GPSReferenceOrbit_sequence[] = {
5764
  { &hf_rrlp_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
5765
  { &hf_rrlp_gpsOrbitModel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_ReferenceNavModel },
5766
  { &hf_rrlp_gpsClockModel  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSClockModel },
5767
  { NULL, 0, 0, NULL }
5768
};
5769
5770
static unsigned
5771
87
dissect_rrlp_GPSReferenceOrbit(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5772
87
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5773
87
                                   ett_rrlp_GPSReferenceOrbit, GPSReferenceOrbit_sequence);
5774
5775
87
  return offset;
5776
87
}
5777
5778
5779
static const per_sequence_t SeqOfGPSRefOrbit_sequence_of[1] = {
5780
  { &hf_rrlp_SeqOfGPSRefOrbit_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSReferenceOrbit },
5781
};
5782
5783
static unsigned
5784
21
dissect_rrlp_SeqOfGPSRefOrbit(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5785
21
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5786
21
                                                  ett_rrlp_SeqOfGPSRefOrbit, SeqOfGPSRefOrbit_sequence_of,
5787
21
                                                  1, 32, false);
5788
5789
21
  return offset;
5790
21
}
5791
5792
5793
static const per_sequence_t GPSEphemerisDeltaBitSizes_sequence[] = {
5794
  { &hf_rrlp_bitsize_delta_omega, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
5795
  { &hf_rrlp_bitsize_delta_deltaN, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
5796
  { &hf_rrlp_bitsize_delta_m0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
5797
  { &hf_rrlp_bitsize_delta_omegadot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_24 },
5798
  { &hf_rrlp_bitsize_delta_e, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
5799
  { &hf_rrlp_bitsize_delta_idot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_14 },
5800
  { &hf_rrlp_bitsize_delta_sqrtA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
5801
  { &hf_rrlp_bitsize_delta_i0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
5802
  { &hf_rrlp_bitsize_delta_omega0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_32 },
5803
  { &hf_rrlp_bitsize_delta_crs, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
5804
  { &hf_rrlp_bitsize_delta_cis, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
5805
  { &hf_rrlp_bitsize_delta_cus, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
5806
  { &hf_rrlp_bitsize_delta_crc, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
5807
  { &hf_rrlp_bitsize_delta_cic, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
5808
  { &hf_rrlp_bitsize_delta_cuc, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
5809
  { &hf_rrlp_bitsize_delta_tgd, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_10 },
5810
  { NULL, 0, 0, NULL }
5811
};
5812
5813
static unsigned
5814
15
dissect_rrlp_GPSEphemerisDeltaBitSizes(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5815
15
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5816
15
                                   ett_rrlp_GPSEphemerisDeltaBitSizes, GPSEphemerisDeltaBitSizes_sequence);
5817
5818
15
  return offset;
5819
15
}
5820
5821
5822
static const per_sequence_t GPSEphemerisDeltaScales_sequence[] = {
5823
  { &hf_rrlp_scale_delta_omega, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5824
  { &hf_rrlp_scale_delta_deltaN, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5825
  { &hf_rrlp_scale_delta_m0 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5826
  { &hf_rrlp_scale_delta_omegadot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5827
  { &hf_rrlp_scale_delta_e  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5828
  { &hf_rrlp_scale_delta_idot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5829
  { &hf_rrlp_scale_delta_sqrtA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5830
  { &hf_rrlp_scale_delta_i0 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5831
  { &hf_rrlp_scale_delta_omega0, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5832
  { &hf_rrlp_scale_delta_crs, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5833
  { &hf_rrlp_scale_delta_cis, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5834
  { &hf_rrlp_scale_delta_cus, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5835
  { &hf_rrlp_scale_delta_crc, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5836
  { &hf_rrlp_scale_delta_cic, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5837
  { &hf_rrlp_scale_delta_cuc, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5838
  { &hf_rrlp_scale_delta_tgd, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M16_15 },
5839
  { NULL, 0, 0, NULL }
5840
};
5841
5842
static unsigned
5843
14
dissect_rrlp_GPSEphemerisDeltaScales(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5844
14
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5845
14
                                   ett_rrlp_GPSEphemerisDeltaScales, GPSEphemerisDeltaScales_sequence);
5846
5847
14
  return offset;
5848
14
}
5849
5850
5851
static const per_sequence_t GPSDeltaEpochHeader_sequence[] = {
5852
  { &hf_rrlp_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_1_8 },
5853
  { &hf_rrlp_ephemerisDeltaSizes_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSEphemerisDeltaBitSizes },
5854
  { &hf_rrlp_ephemerisDeltaScales_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSEphemerisDeltaScales },
5855
  { NULL, 0, 0, NULL }
5856
};
5857
5858
static unsigned
5859
29
dissect_rrlp_GPSDeltaEpochHeader(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5860
29
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5861
29
                                   ett_rrlp_GPSDeltaEpochHeader, GPSDeltaEpochHeader_sequence);
5862
5863
29
  return offset;
5864
29
}
5865
5866
5867
5868
static unsigned
5869
362
dissect_rrlp_OCTET_STRING_SIZE_1_47(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5870
362
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
5871
362
                                       1, 47, false, NULL);
5872
5873
362
  return offset;
5874
362
}
5875
5876
5877
static const per_sequence_t GPSDeltaElementList_sequence_of[1] = {
5878
  { &hf_rrlp_GPSDeltaElementList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OCTET_STRING_SIZE_1_47 },
5879
};
5880
5881
static unsigned
5882
208
dissect_rrlp_GPSDeltaElementList(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5883
208
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5884
208
                                                  ett_rrlp_GPSDeltaElementList, GPSDeltaElementList_sequence_of,
5885
208
                                                  1, 32, false);
5886
5887
208
  return offset;
5888
208
}
5889
5890
5891
static const per_sequence_t GPSEphemerisDeltaEpoch_sequence[] = {
5892
  { &hf_rrlp_gpsDeltaEpochHeader, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSDeltaEpochHeader },
5893
  { &hf_rrlp_gpsDeltaElementList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSDeltaElementList },
5894
  { NULL, 0, 0, NULL }
5895
};
5896
5897
static unsigned
5898
219
dissect_rrlp_GPSEphemerisDeltaEpoch(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5899
219
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5900
219
                                   ett_rrlp_GPSEphemerisDeltaEpoch, GPSEphemerisDeltaEpoch_sequence);
5901
5902
219
  return offset;
5903
219
}
5904
5905
5906
static const per_sequence_t GPSEphemerisDeltaMatrix_sequence_of[1] = {
5907
  { &hf_rrlp_GPSEphemerisDeltaMatrix_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSEphemerisDeltaEpoch },
5908
};
5909
5910
static unsigned
5911
25
dissect_rrlp_GPSEphemerisDeltaMatrix(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5912
25
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5913
25
                                                  ett_rrlp_GPSEphemerisDeltaMatrix, GPSEphemerisDeltaMatrix_sequence_of,
5914
25
                                                  1, 128, false);
5915
5916
25
  return offset;
5917
25
}
5918
5919
5920
static const per_sequence_t GPSEphemerisExtension_sequence[] = {
5921
  { &hf_rrlp_gpsEphemerisHeader, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSEphemerisExtensionHeader },
5922
  { &hf_rrlp_gpsReferenceSet, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_SeqOfGPSRefOrbit },
5923
  { &hf_rrlp_gpsephemerisDeltaMatrix, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSEphemerisDeltaMatrix },
5924
  { NULL, 0, 0, NULL }
5925
};
5926
5927
static unsigned
5928
38
dissect_rrlp_GPSEphemerisExtension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5929
38
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5930
38
                                   ett_rrlp_GPSEphemerisExtension, GPSEphemerisExtension_sequence);
5931
5932
38
  return offset;
5933
38
}
5934
5935
5936
5937
static unsigned
5938
19
dissect_rrlp_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5939
19
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
5940
19
                                     32, 32, false, NULL, 0, NULL, NULL);
5941
5942
19
  return offset;
5943
19
}
5944
5945
5946
static const per_sequence_t GPSSatEventsInfo_sequence[] = {
5947
  { &hf_rrlp_eventOccured_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_32 },
5948
  { &hf_rrlp_futureEventNoted_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_BIT_STRING_SIZE_32 },
5949
  { NULL, 0, 0, NULL }
5950
};
5951
5952
static unsigned
5953
10
dissect_rrlp_GPSSatEventsInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5954
10
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5955
10
                                   ett_rrlp_GPSSatEventsInfo, GPSSatEventsInfo_sequence);
5956
5957
10
  return offset;
5958
10
}
5959
5960
5961
static const per_sequence_t GPSEphemerisExtensionCheck_sequence[] = {
5962
  { &hf_rrlp_gpsBeginTime   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSEphemerisExtensionTime },
5963
  { &hf_rrlp_gpsEndTime     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSEphemerisExtensionTime },
5964
  { &hf_rrlp_gpsSatEventsInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSSatEventsInfo },
5965
  { NULL, 0, 0, NULL }
5966
};
5967
5968
static unsigned
5969
13
dissect_rrlp_GPSEphemerisExtensionCheck(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5970
13
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5971
13
                                   ett_rrlp_GPSEphemerisExtensionCheck, GPSEphemerisExtensionCheck_sequence);
5972
5973
13
  return offset;
5974
13
}
5975
5976
5977
static const per_sequence_t DGPSExtensionSatElement_sequence[] = {
5978
  { &hf_rrlp_satelliteID    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
5979
  { &hf_rrlp_udreGrowthRate , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
5980
  { &hf_rrlp_udreValidityTime, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
5981
  { NULL, 0, 0, NULL }
5982
};
5983
5984
static unsigned
5985
24
dissect_rrlp_DGPSExtensionSatElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5986
24
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5987
24
                                   ett_rrlp_DGPSExtensionSatElement, DGPSExtensionSatElement_sequence);
5988
5989
24
  return offset;
5990
24
}
5991
5992
5993
static const per_sequence_t DGPSCorrectionsValidityPeriod_sequence_of[1] = {
5994
  { &hf_rrlp_DGPSCorrectionsValidityPeriod_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_DGPSExtensionSatElement },
5995
};
5996
5997
static unsigned
5998
6
dissect_rrlp_DGPSCorrectionsValidityPeriod(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5999
6
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6000
6
                                                  ett_rrlp_DGPSCorrectionsValidityPeriod, DGPSCorrectionsValidityPeriod_sequence_of,
6001
6
                                                  1, 16, false);
6002
6003
6
  return offset;
6004
6
}
6005
6006
6007
static const per_sequence_t GPSReferenceTime_R10_Ext_sequence[] = {
6008
  { &hf_rrlp_gpsWeekCycleNumber, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
6009
  { NULL, 0, 0, NULL }
6010
};
6011
6012
static unsigned
6013
2
dissect_rrlp_GPSReferenceTime_R10_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6014
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6015
2
                                   ett_rrlp_GPSReferenceTime_R10_Ext, GPSReferenceTime_R10_Ext_sequence);
6016
6017
2
  return offset;
6018
2
}
6019
6020
6021
static const per_sequence_t GPSAcquisAssist_R10_Ext_Element_sequence[] = {
6022
  { &hf_rrlp_satelliteID    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
6023
  { &hf_rrlp_azimuthLSB     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
6024
  { &hf_rrlp_elevationLSB   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
6025
  { NULL, 0, 0, NULL }
6026
};
6027
6028
static unsigned
6029
0
dissect_rrlp_GPSAcquisAssist_R10_Ext_Element(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6030
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6031
0
                                   ett_rrlp_GPSAcquisAssist_R10_Ext_Element, GPSAcquisAssist_R10_Ext_Element_sequence);
6032
6033
0
  return offset;
6034
0
}
6035
6036
6037
static const per_sequence_t GPSAcquisAssist_R10_Ext_sequence_of[1] = {
6038
  { &hf_rrlp_GPSAcquisAssist_R10_Ext_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSAcquisAssist_R10_Ext_Element },
6039
};
6040
6041
static unsigned
6042
0
dissect_rrlp_GPSAcquisAssist_R10_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6043
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6044
0
                                                  ett_rrlp_GPSAcquisAssist_R10_Ext, GPSAcquisAssist_R10_Ext_sequence_of,
6045
0
                                                  1, 16, false);
6046
6047
0
  return offset;
6048
0
}
6049
6050
6051
static const per_sequence_t GPSAlmanac_R10_Ext_sequence[] = {
6052
  { &hf_rrlp_completeAlmanacProvided, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
6053
  { NULL, 0, 0, NULL }
6054
};
6055
6056
static unsigned
6057
1
dissect_rrlp_GPSAlmanac_R10_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6058
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6059
1
                                   ett_rrlp_GPSAlmanac_R10_Ext, GPSAlmanac_R10_Ext_sequence);
6060
6061
1
  return offset;
6062
1
}
6063
6064
6065
static const value_string rrlp_T_dopplerUncertaintyExt_01_vals[] = {
6066
  {   0, "d300" },
6067
  {   1, "d400" },
6068
  {   2, "d500" },
6069
  {   3, "d600" },
6070
  {   4, "noInformation" },
6071
  { 0, NULL }
6072
};
6073
6074
6075
static unsigned
6076
11
dissect_rrlp_T_dopplerUncertaintyExt_01(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6077
11
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6078
11
                                     5, NULL, true, 0, NULL);
6079
6080
11
  return offset;
6081
11
}
6082
6083
6084
static const per_sequence_t GPSAcquisAssist_R12_Ext_Element_sequence[] = {
6085
  { &hf_rrlp_satelliteID    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
6086
  { &hf_rrlp_dopplerUncertaintyExt_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_T_dopplerUncertaintyExt_01 },
6087
  { NULL, 0, 0, NULL }
6088
};
6089
6090
static unsigned
6091
13
dissect_rrlp_GPSAcquisAssist_R12_Ext_Element(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6092
13
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6093
13
                                   ett_rrlp_GPSAcquisAssist_R12_Ext_Element, GPSAcquisAssist_R12_Ext_Element_sequence);
6094
6095
13
  return offset;
6096
13
}
6097
6098
6099
static const per_sequence_t SeqOfGPSAcquisAssist_R12_Ext_sequence_of[1] = {
6100
  { &hf_rrlp_SeqOfGPSAcquisAssist_R12_Ext_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSAcquisAssist_R12_Ext_Element },
6101
};
6102
6103
static unsigned
6104
5
dissect_rrlp_SeqOfGPSAcquisAssist_R12_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6105
5
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6106
5
                                                  ett_rrlp_SeqOfGPSAcquisAssist_R12_Ext, SeqOfGPSAcquisAssist_R12_Ext_sequence_of,
6107
5
                                                  1, 16, false);
6108
6109
5
  return offset;
6110
5
}
6111
6112
6113
static const per_sequence_t GPSAcquisAssist_R12_Ext_sequence[] = {
6114
  { &hf_rrlp_confidence     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_100 },
6115
  { &hf_rrlp_acquisList_01  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SeqOfGPSAcquisAssist_R12_Ext },
6116
  { NULL, 0, 0, NULL }
6117
};
6118
6119
static unsigned
6120
5
dissect_rrlp_GPSAcquisAssist_R12_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6121
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6122
5
                                   ett_rrlp_GPSAcquisAssist_R12_Ext, GPSAcquisAssist_R12_Ext_sequence);
6123
6124
5
  return offset;
6125
5
}
6126
6127
6128
static const per_sequence_t Add_GPS_ControlHeader_sequence[] = {
6129
  { &hf_rrlp_gpsEphemerisExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSEphemerisExtension },
6130
  { &hf_rrlp_gpsEphemerisExtensionCheck, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSEphemerisExtensionCheck },
6131
  { &hf_rrlp_dgpsCorrectionsValidityPeriod, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_DGPSCorrectionsValidityPeriod },
6132
  { &hf_rrlp_gpsReferenceTime_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GPSReferenceTime_R10_Ext },
6133
  { &hf_rrlp_gpsAcquisAssist_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GPSAcquisAssist_R10_Ext },
6134
  { &hf_rrlp_gpsAlmanac_R10_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GPSAlmanac_R10_Ext },
6135
  { &hf_rrlp_gpsAcquisAssist_R12_Ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GPSAcquisAssist_R12_Ext },
6136
  { NULL, 0, 0, NULL }
6137
};
6138
6139
static unsigned
6140
53
dissect_rrlp_Add_GPS_ControlHeader(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6141
53
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6142
53
                                   ett_rrlp_Add_GPS_ControlHeader, Add_GPS_ControlHeader_sequence);
6143
6144
53
  return offset;
6145
53
}
6146
6147
6148
static const per_sequence_t Add_GPS_AssistData_sequence[] = {
6149
  { &hf_rrlp_add_GPS_controlHeader, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_Add_GPS_ControlHeader },
6150
  { NULL, 0, 0, NULL }
6151
};
6152
6153
static unsigned
6154
53
dissect_rrlp_Add_GPS_AssistData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6155
53
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6156
53
                                   ett_rrlp_Add_GPS_AssistData, Add_GPS_AssistData_sequence);
6157
6158
53
  return offset;
6159
53
}
6160
6161
6162
static const per_sequence_t Rel7_MsrPosition_Req_Extension_sequence[] = {
6163
  { &hf_rrlp_velocityRequested, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_NULL },
6164
  { &hf_rrlp_ganssPositionMethod, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSPositioningMethod },
6165
  { &hf_rrlp_ganss_AssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSS_AssistData },
6166
  { &hf_rrlp_ganssCarrierPhaseMeasurementRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_NULL },
6167
  { &hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_NULL },
6168
  { &hf_rrlp_requiredResponseTime, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_RequiredResponseTime },
6169
  { &hf_rrlp_add_GPS_AssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_Add_GPS_AssistData },
6170
  { &hf_rrlp_ganssMultiFreqMeasurementRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_NULL },
6171
  { NULL, 0, 0, NULL }
6172
};
6173
6174
static unsigned
6175
5
dissect_rrlp_Rel7_MsrPosition_Req_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6176
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6177
5
                                   ett_rrlp_Rel7_MsrPosition_Req_Extension, Rel7_MsrPosition_Req_Extension_sequence);
6178
6179
5
  return offset;
6180
5
}
6181
6182
6183
static const per_sequence_t MsrPosition_Req_sequence[] = {
6184
  { &hf_rrlp_positionInstruct, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_PositionInstruct },
6185
  { &hf_rrlp_referenceAssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ReferenceAssistData },
6186
  { &hf_rrlp_msrAssistData  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_MsrAssistData },
6187
  { &hf_rrlp_systemInfoAssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_SystemInfoAssistData },
6188
  { &hf_rrlp_gps_AssistData , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPS_AssistData },
6189
  { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ExtensionContainer },
6190
  { &hf_rrlp_rel98_MsrPosition_Req_extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel98_MsrPosition_Req_Extension },
6191
  { &hf_rrlp_rel5_MsrPosition_Req_extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel5_MsrPosition_Req_Extension },
6192
  { &hf_rrlp_rel7_MsrPosition_Req_extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel7_MsrPosition_Req_Extension },
6193
  { NULL, 0, 0, NULL }
6194
};
6195
6196
static unsigned
6197
104
dissect_rrlp_MsrPosition_Req(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6198
104
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6199
104
                                   ett_rrlp_MsrPosition_Req, MsrPosition_Req_sequence);
6200
6201
104
  return offset;
6202
104
}
6203
6204
6205
6206
static unsigned
6207
54
dissect_rrlp_INTEGER_2_3(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6208
54
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6209
54
                                                            2U, 3U, NULL, false);
6210
6211
54
  return offset;
6212
54
}
6213
6214
6215
6216
static unsigned
6217
54
dissect_rrlp_INTEGER_1_3(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6218
54
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6219
54
                                                            1U, 3U, NULL, false);
6220
6221
54
  return offset;
6222
54
}
6223
6224
6225
static const value_string rrlp_ReferenceRelation_vals[] = {
6226
  {   0, "secondBTSThirdSet" },
6227
  {   1, "secondBTSSecondSet" },
6228
  {   2, "firstBTSFirstSet" },
6229
  { 0, NULL }
6230
};
6231
6232
6233
static unsigned
6234
50
dissect_rrlp_ReferenceRelation(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6235
50
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6236
50
                                     3, NULL, false, 0, NULL);
6237
6238
50
  return offset;
6239
50
}
6240
6241
6242
static const per_sequence_t MultipleSets_sequence[] = {
6243
  { &hf_rrlp_nbrOfSets      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_2_3 },
6244
  { &hf_rrlp_nbrOfReferenceBTSs, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_3 },
6245
  { &hf_rrlp_referenceRelation, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_ReferenceRelation },
6246
  { NULL, 0, 0, NULL }
6247
};
6248
6249
static unsigned
6250
54
dissect_rrlp_MultipleSets(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6251
54
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6252
54
                                   ett_rrlp_MultipleSets, MultipleSets_sequence);
6253
6254
54
  return offset;
6255
54
}
6256
6257
6258
static const per_sequence_t BSICAndCarrier_sequence[] = {
6259
  { &hf_rrlp_carrier        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier },
6260
  { &hf_rrlp_bsic           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC },
6261
  { NULL, 0, 0, NULL }
6262
};
6263
6264
static unsigned
6265
113
dissect_rrlp_BSICAndCarrier(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6266
113
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6267
113
                                   ett_rrlp_BSICAndCarrier, BSICAndCarrier_sequence);
6268
6269
113
  return offset;
6270
113
}
6271
6272
6273
6274
static unsigned
6275
88
dissect_rrlp_CellID(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6276
88
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6277
88
                                                            0U, 65535U, NULL, false);
6278
6279
88
  return offset;
6280
88
}
6281
6282
6283
6284
static unsigned
6285
35
dissect_rrlp_RequestIndex(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6286
35
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6287
35
                                                            1U, 16U, NULL, false);
6288
6289
35
  return offset;
6290
35
}
6291
6292
6293
6294
static unsigned
6295
47
dissect_rrlp_SystemInfoIndex(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6296
47
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6297
47
                                                            1U, 32U, NULL, false);
6298
6299
47
  return offset;
6300
47
}
6301
6302
6303
6304
static unsigned
6305
58
dissect_rrlp_LAC(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6306
58
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6307
58
                                                            0U, 65535U, NULL, false);
6308
6309
58
  return offset;
6310
58
}
6311
6312
6313
static const per_sequence_t CellIDAndLAC_sequence[] = {
6314
  { &hf_rrlp_referenceLAC   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_LAC },
6315
  { &hf_rrlp_referenceCI    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_CellID },
6316
  { NULL, 0, 0, NULL }
6317
};
6318
6319
static unsigned
6320
58
dissect_rrlp_CellIDAndLAC(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6321
58
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6322
58
                                   ett_rrlp_CellIDAndLAC, CellIDAndLAC_sequence);
6323
6324
58
  return offset;
6325
58
}
6326
6327
6328
static const value_string rrlp_ReferenceIdentityType_vals[] = {
6329
  {   0, "bsicAndCarrier" },
6330
  {   1, "ci" },
6331
  {   2, "requestIndex" },
6332
  {   3, "systemInfoIndex" },
6333
  {   4, "ciAndLAC" },
6334
  { 0, NULL }
6335
};
6336
6337
static const per_choice_t ReferenceIdentityType_choice[] = {
6338
  {   0, &hf_rrlp_bsicAndCarrier , ASN1_NO_EXTENSIONS     , dissect_rrlp_BSICAndCarrier },
6339
  {   1, &hf_rrlp_ci             , ASN1_NO_EXTENSIONS     , dissect_rrlp_CellID },
6340
  {   2, &hf_rrlp_requestIndex   , ASN1_NO_EXTENSIONS     , dissect_rrlp_RequestIndex },
6341
  {   3, &hf_rrlp_systemInfoIndex, ASN1_NO_EXTENSIONS     , dissect_rrlp_SystemInfoIndex },
6342
  {   4, &hf_rrlp_ciAndLAC       , ASN1_NO_EXTENSIONS     , dissect_rrlp_CellIDAndLAC },
6343
  { 0, NULL, 0, NULL }
6344
};
6345
6346
static unsigned
6347
78
dissect_rrlp_ReferenceIdentityType(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6348
78
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6349
78
                                 ett_rrlp_ReferenceIdentityType, ReferenceIdentityType_choice,
6350
78
                                 NULL);
6351
6352
78
  return offset;
6353
78
}
6354
6355
6356
static const per_sequence_t SeqOfReferenceIdentityType_sequence_of[1] = {
6357
  { &hf_rrlp_SeqOfReferenceIdentityType_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ReferenceIdentityType },
6358
};
6359
6360
static unsigned
6361
34
dissect_rrlp_SeqOfReferenceIdentityType(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6362
34
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6363
34
                                                  ett_rrlp_SeqOfReferenceIdentityType, SeqOfReferenceIdentityType_sequence_of,
6364
34
                                                  1, 3, false);
6365
6366
34
  return offset;
6367
34
}
6368
6369
6370
static const per_sequence_t ReferenceIdentity_sequence[] = {
6371
  { &hf_rrlp_refBTSList     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfReferenceIdentityType },
6372
  { NULL, 0, 0, NULL }
6373
};
6374
6375
static unsigned
6376
34
dissect_rrlp_ReferenceIdentity(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6377
34
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6378
34
                                   ett_rrlp_ReferenceIdentity, ReferenceIdentity_sequence);
6379
6380
34
  return offset;
6381
34
}
6382
6383
6384
6385
static unsigned
6386
170
dissect_rrlp_INTEGER_0_42431(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6387
170
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6388
170
                                                            0U, 42431U, NULL, false);
6389
6390
170
  return offset;
6391
170
}
6392
6393
6394
6395
static unsigned
6396
557
dissect_rrlp_ModuloTimeSlot(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6397
557
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6398
557
                                                            0U, 3U, NULL, false);
6399
6400
557
  return offset;
6401
557
}
6402
6403
6404
6405
static unsigned
6406
85
dissect_rrlp_RefQuality(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6407
85
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6408
85
                                                            0U, 31U, NULL, false);
6409
6410
85
  return offset;
6411
85
}
6412
6413
6414
6415
static unsigned
6416
85
dissect_rrlp_NumOfMeasurements(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6417
85
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6418
85
                                                            0U, 7U, NULL, false);
6419
6420
85
  return offset;
6421
85
}
6422
6423
6424
static const per_sequence_t TOA_MeasurementsOfRef_sequence[] = {
6425
  { &hf_rrlp_refQuality     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_RefQuality },
6426
  { &hf_rrlp_numOfMeasurements, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_NumOfMeasurements },
6427
  { NULL, 0, 0, NULL }
6428
};
6429
6430
static unsigned
6431
85
dissect_rrlp_TOA_MeasurementsOfRef(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6432
85
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6433
85
                                   ett_rrlp_TOA_MeasurementsOfRef, TOA_MeasurementsOfRef_sequence);
6434
6435
85
  return offset;
6436
85
}
6437
6438
6439
6440
static unsigned
6441
168
dissect_rrlp_StdResolution(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6442
168
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6443
168
                                                            0U, 3U, NULL, false);
6444
6445
168
  return offset;
6446
168
}
6447
6448
6449
6450
static unsigned
6451
48
dissect_rrlp_INTEGER_0_960(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6452
48
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6453
48
                                                            0U, 960U, NULL, false);
6454
6455
48
  return offset;
6456
48
}
6457
6458
6459
static const per_sequence_t MultiFrameCarrier_sequence[] = {
6460
  { &hf_rrlp_bcchCarrier    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BCCHCarrier },
6461
  { &hf_rrlp_multiFrameOffset, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MultiFrameOffset },
6462
  { NULL, 0, 0, NULL }
6463
};
6464
6465
static unsigned
6466
57
dissect_rrlp_MultiFrameCarrier(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6467
57
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6468
57
                                   ett_rrlp_MultiFrameCarrier, MultiFrameCarrier_sequence);
6469
6470
57
  return offset;
6471
57
}
6472
6473
6474
static const value_string rrlp_NeighborIdentity_vals[] = {
6475
  {   0, "bsicAndCarrier" },
6476
  {   1, "ci" },
6477
  {   2, "multiFrameCarrier" },
6478
  {   3, "requestIndex" },
6479
  {   4, "systemInfoIndex" },
6480
  {   5, "ciAndLAC" },
6481
  { 0, NULL }
6482
};
6483
6484
static const per_choice_t NeighborIdentity_choice[] = {
6485
  {   0, &hf_rrlp_bsicAndCarrier , ASN1_NO_EXTENSIONS     , dissect_rrlp_BSICAndCarrier },
6486
  {   1, &hf_rrlp_ci             , ASN1_NO_EXTENSIONS     , dissect_rrlp_CellID },
6487
  {   2, &hf_rrlp_multiFrameCarrier, ASN1_NO_EXTENSIONS     , dissect_rrlp_MultiFrameCarrier },
6488
  {   3, &hf_rrlp_requestIndex   , ASN1_NO_EXTENSIONS     , dissect_rrlp_RequestIndex },
6489
  {   4, &hf_rrlp_systemInfoIndex, ASN1_NO_EXTENSIONS     , dissect_rrlp_SystemInfoIndex },
6490
  {   5, &hf_rrlp_ciAndLAC       , ASN1_NO_EXTENSIONS     , dissect_rrlp_CellIDAndLAC },
6491
  { 0, NULL, 0, NULL }
6492
};
6493
6494
static unsigned
6495
292
dissect_rrlp_NeighborIdentity(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6496
292
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6497
292
                                 ett_rrlp_NeighborIdentity, NeighborIdentity_choice,
6498
292
                                 NULL);
6499
6500
292
  return offset;
6501
292
}
6502
6503
6504
static const per_sequence_t EOTDQuality_sequence[] = {
6505
  { &hf_rrlp_nbrOfMeasurements, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
6506
  { &hf_rrlp_stdOfEOTD      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
6507
  { NULL, 0, 0, NULL }
6508
};
6509
6510
static unsigned
6511
389
dissect_rrlp_EOTDQuality(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6512
389
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6513
389
                                   ett_rrlp_EOTDQuality, EOTDQuality_sequence);
6514
6515
389
  return offset;
6516
389
}
6517
6518
6519
6520
static unsigned
6521
386
dissect_rrlp_OTDValue(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6522
386
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6523
386
                                                            0U, 39999U, NULL, false);
6524
6525
386
  return offset;
6526
386
}
6527
6528
6529
static const per_sequence_t OTD_MeasurementWithID_sequence[] = {
6530
  { &hf_rrlp_neighborIdentity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_NeighborIdentity },
6531
  { &hf_rrlp_nborTimeSlot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ModuloTimeSlot },
6532
  { &hf_rrlp_eotdQuality    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_EOTDQuality },
6533
  { &hf_rrlp_otdValue       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTDValue },
6534
  { NULL, 0, 0, NULL }
6535
};
6536
6537
static unsigned
6538
292
dissect_rrlp_OTD_MeasurementWithID(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6539
292
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6540
292
                                   ett_rrlp_OTD_MeasurementWithID, OTD_MeasurementWithID_sequence);
6541
6542
292
  return offset;
6543
292
}
6544
6545
6546
6547
static unsigned
6548
208
dissect_rrlp_OTD_FirstSetMsrs(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6549
208
  offset = dissect_rrlp_OTD_MeasurementWithID(tvb, offset, actx, tree, hf_index);
6550
6551
208
  return offset;
6552
208
}
6553
6554
6555
static const per_sequence_t SeqOfOTD_FirstSetMsrs_sequence_of[1] = {
6556
  { &hf_rrlp_SeqOfOTD_FirstSetMsrs_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_FirstSetMsrs },
6557
};
6558
6559
static unsigned
6560
39
dissect_rrlp_SeqOfOTD_FirstSetMsrs(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6561
39
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6562
39
                                                  ett_rrlp_SeqOfOTD_FirstSetMsrs, SeqOfOTD_FirstSetMsrs_sequence_of,
6563
39
                                                  1, 10, false);
6564
6565
39
  return offset;
6566
39
}
6567
6568
6569
static const per_sequence_t OTD_MsrElementFirst_sequence[] = {
6570
  { &hf_rrlp_refFrameNumber , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_42431 },
6571
  { &hf_rrlp_referenceTimeSlot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ModuloTimeSlot },
6572
  { &hf_rrlp_toaMeasurementsOfRef, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_TOA_MeasurementsOfRef },
6573
  { &hf_rrlp_stdResolution  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_StdResolution },
6574
  { &hf_rrlp_taCorrection   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_960 },
6575
  { &hf_rrlp_otd_FirstSetMsrs, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SeqOfOTD_FirstSetMsrs },
6576
  { NULL, 0, 0, NULL }
6577
};
6578
6579
static unsigned
6580
89
dissect_rrlp_OTD_MsrElementFirst(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6581
89
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6582
89
                                   ett_rrlp_OTD_MsrElementFirst, OTD_MsrElementFirst_sequence);
6583
6584
89
  return offset;
6585
89
}
6586
6587
6588
static const per_sequence_t OTD_Measurement_sequence[] = {
6589
  { &hf_rrlp_nborTimeSlot   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ModuloTimeSlot },
6590
  { &hf_rrlp_eotdQuality    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_EOTDQuality },
6591
  { &hf_rrlp_otdValue       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTDValue },
6592
  { NULL, 0, 0, NULL }
6593
};
6594
6595
static unsigned
6596
129
dissect_rrlp_OTD_Measurement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6597
129
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6598
129
                                   ett_rrlp_OTD_Measurement, OTD_Measurement_sequence);
6599
6600
129
  return offset;
6601
129
}
6602
6603
6604
static const value_string rrlp_OTD_MsrsOfOtherSets_vals[] = {
6605
  {   0, "identityNotPresent" },
6606
  {   1, "identityPresent" },
6607
  { 0, NULL }
6608
};
6609
6610
static const per_choice_t OTD_MsrsOfOtherSets_choice[] = {
6611
  {   0, &hf_rrlp_identityNotPresent, ASN1_NO_EXTENSIONS     , dissect_rrlp_OTD_Measurement },
6612
  {   1, &hf_rrlp_identityPresent, ASN1_NO_EXTENSIONS     , dissect_rrlp_OTD_MeasurementWithID },
6613
  { 0, NULL, 0, NULL }
6614
};
6615
6616
static unsigned
6617
213
dissect_rrlp_OTD_MsrsOfOtherSets(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6618
213
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6619
213
                                 ett_rrlp_OTD_MsrsOfOtherSets, OTD_MsrsOfOtherSets_choice,
6620
213
                                 NULL);
6621
6622
213
  return offset;
6623
213
}
6624
6625
6626
static const per_sequence_t SeqOfOTD_MsrsOfOtherSets_sequence_of[1] = {
6627
  { &hf_rrlp_SeqOfOTD_MsrsOfOtherSets_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_MsrsOfOtherSets },
6628
};
6629
6630
static unsigned
6631
39
dissect_rrlp_SeqOfOTD_MsrsOfOtherSets(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6632
39
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6633
39
                                                  ett_rrlp_SeqOfOTD_MsrsOfOtherSets, SeqOfOTD_MsrsOfOtherSets_sequence_of,
6634
39
                                                  1, 10, false);
6635
6636
39
  return offset;
6637
39
}
6638
6639
6640
static const per_sequence_t OTD_MsrElementRest_sequence[] = {
6641
  { &hf_rrlp_refFrameNumber , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_42431 },
6642
  { &hf_rrlp_referenceTimeSlot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_ModuloTimeSlot },
6643
  { &hf_rrlp_toaMeasurementsOfRef, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_TOA_MeasurementsOfRef },
6644
  { &hf_rrlp_stdResolution  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_StdResolution },
6645
  { &hf_rrlp_taCorrection   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_960 },
6646
  { &hf_rrlp_otd_MsrsOfOtherSets, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SeqOfOTD_MsrsOfOtherSets },
6647
  { NULL, 0, 0, NULL }
6648
};
6649
6650
static unsigned
6651
81
dissect_rrlp_OTD_MsrElementRest(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6652
81
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6653
81
                                   ett_rrlp_OTD_MsrElementRest, OTD_MsrElementRest_sequence);
6654
6655
81
  return offset;
6656
81
}
6657
6658
6659
static const per_sequence_t SeqOfOTD_MsrElementRest_sequence_of[1] = {
6660
  { &hf_rrlp_SeqOfOTD_MsrElementRest_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_MsrElementRest },
6661
};
6662
6663
static unsigned
6664
60
dissect_rrlp_SeqOfOTD_MsrElementRest(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6665
60
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6666
60
                                                  ett_rrlp_SeqOfOTD_MsrElementRest, SeqOfOTD_MsrElementRest_sequence_of,
6667
60
                                                  1, 2, false);
6668
6669
60
  return offset;
6670
60
}
6671
6672
6673
static const per_sequence_t OTD_MeasureInfo_sequence[] = {
6674
  { &hf_rrlp_otdMsrFirstSets, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_MsrElementFirst },
6675
  { &hf_rrlp_otdMsrRestSets , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SeqOfOTD_MsrElementRest },
6676
  { NULL, 0, 0, NULL }
6677
};
6678
6679
static unsigned
6680
89
dissect_rrlp_OTD_MeasureInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6681
89
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6682
89
                                   ett_rrlp_OTD_MeasureInfo, OTD_MeasureInfo_sequence);
6683
6684
89
  return offset;
6685
89
}
6686
6687
6688
6689
static unsigned
6690
24
dissect_rrlp_INTEGER_0_14399999(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6691
24
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6692
24
                                                            0U, 14399999U, NULL, false);
6693
6694
24
  return offset;
6695
24
}
6696
6697
6698
static const value_string rrlp_FixType_vals[] = {
6699
  {   0, "twoDFix" },
6700
  {   1, "threeDFix" },
6701
  { 0, NULL }
6702
};
6703
6704
6705
static unsigned
6706
56
dissect_rrlp_FixType(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6707
56
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6708
56
                                                            0U, 1U, NULL, false);
6709
6710
56
  return offset;
6711
56
}
6712
6713
6714
static const per_sequence_t LocationInfo_sequence[] = {
6715
  { &hf_rrlp_refFrame       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
6716
  { &hf_rrlp_gpsTOW         , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_14399999 },
6717
  { &hf_rrlp_fixType        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_FixType },
6718
  { &hf_rrlp_posEstimate    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_Ext_GeographicalInformation },
6719
  { NULL, 0, 0, NULL }
6720
};
6721
6722
static unsigned
6723
44
dissect_rrlp_LocationInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6724
44
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6725
44
                                   ett_rrlp_LocationInfo, LocationInfo_sequence);
6726
6727
44
  return offset;
6728
44
}
6729
6730
6731
6732
static unsigned
6733
51
dissect_rrlp_GPSTOW24b(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6734
51
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6735
51
                                                            0U, 14399999U, NULL, false);
6736
6737
51
  return offset;
6738
51
}
6739
6740
6741
6742
static unsigned
6743
213
dissect_rrlp_INTEGER_0_1024(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6744
213
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6745
213
                                                            0U, 1024U, NULL, false);
6746
6747
213
  return offset;
6748
213
}
6749
6750
6751
static const value_string rrlp_MpathIndic_vals[] = {
6752
  {   0, "notMeasured" },
6753
  {   1, "low" },
6754
  {   2, "medium" },
6755
  {   3, "high" },
6756
  { 0, NULL }
6757
};
6758
6759
6760
static unsigned
6761
649
dissect_rrlp_MpathIndic(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6762
649
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6763
649
                                     4, NULL, false, 0, NULL);
6764
6765
649
  return offset;
6766
649
}
6767
6768
6769
static const per_sequence_t GPS_MsrElement_sequence[] = {
6770
  { &hf_rrlp_satelliteID    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SatelliteID },
6771
  { &hf_rrlp_cNo            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
6772
  { &hf_rrlp_doppler        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_M32768_32767 },
6773
  { &hf_rrlp_wholeChips     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1022 },
6774
  { &hf_rrlp_fracChips      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1024 },
6775
  { &hf_rrlp_mpathIndic     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MpathIndic },
6776
  { &hf_rrlp_pseuRangeRMSErr, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
6777
  { NULL, 0, 0, NULL }
6778
};
6779
6780
static unsigned
6781
223
dissect_rrlp_GPS_MsrElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6782
223
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6783
223
                                   ett_rrlp_GPS_MsrElement, GPS_MsrElement_sequence);
6784
6785
223
  return offset;
6786
223
}
6787
6788
6789
static const per_sequence_t SeqOfGPS_MsrElement_sequence_of[1] = {
6790
  { &hf_rrlp_SeqOfGPS_MsrElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPS_MsrElement },
6791
};
6792
6793
static unsigned
6794
48
dissect_rrlp_SeqOfGPS_MsrElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6795
48
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6796
48
                                                  ett_rrlp_SeqOfGPS_MsrElement, SeqOfGPS_MsrElement_sequence_of,
6797
48
                                                  1, 16, false);
6798
6799
48
  return offset;
6800
48
}
6801
6802
6803
static const per_sequence_t GPS_MsrSetElement_sequence[] = {
6804
  { &hf_rrlp_refFrame       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_65535 },
6805
  { &hf_rrlp_gpsTOW_01      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPSTOW24b },
6806
  { &hf_rrlp_gps_msrList    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGPS_MsrElement },
6807
  { NULL, 0, 0, NULL }
6808
};
6809
6810
static unsigned
6811
51
dissect_rrlp_GPS_MsrSetElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6812
51
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6813
51
                                   ett_rrlp_GPS_MsrSetElement, GPS_MsrSetElement_sequence);
6814
6815
51
  return offset;
6816
51
}
6817
6818
6819
static const per_sequence_t SeqOfGPS_MsrSetElement_sequence_of[1] = {
6820
  { &hf_rrlp_SeqOfGPS_MsrSetElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GPS_MsrSetElement },
6821
};
6822
6823
static unsigned
6824
31
dissect_rrlp_SeqOfGPS_MsrSetElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6825
31
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6826
31
                                                  ett_rrlp_SeqOfGPS_MsrSetElement, SeqOfGPS_MsrSetElement_sequence_of,
6827
31
                                                  1, 3, false);
6828
6829
31
  return offset;
6830
31
}
6831
6832
6833
static const per_sequence_t GPS_MeasureInfo_sequence[] = {
6834
  { &hf_rrlp_gpsMsrSetList  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGPS_MsrSetElement },
6835
  { NULL, 0, 0, NULL }
6836
};
6837
6838
static unsigned
6839
31
dissect_rrlp_GPS_MeasureInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6840
31
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6841
31
                                   ett_rrlp_GPS_MeasureInfo, GPS_MeasureInfo_sequence);
6842
6843
31
  return offset;
6844
31
}
6845
6846
6847
static const value_string rrlp_LocErrorReason_vals[] = {
6848
  {   0, "unDefined" },
6849
  {   1, "notEnoughBTSs" },
6850
  {   2, "notEnoughSats" },
6851
  {   3, "eotdLocCalAssDataMissing" },
6852
  {   4, "eotdAssDataMissing" },
6853
  {   5, "gpsLocCalAssDataMissing" },
6854
  {   6, "gpsAssDataMissing" },
6855
  {   7, "methodNotSupported" },
6856
  {   8, "notProcessed" },
6857
  {   9, "refBTSForGPSNotServingBTS" },
6858
  {  10, "refBTSForEOTDNotServingBTS" },
6859
  {  11, "notEnoughGANSSSats" },
6860
  {  12, "ganssAssDataMissing" },
6861
  {  13, "refBTSForGANSSNotServingBTS" },
6862
  { 0, NULL }
6863
};
6864
6865
6866
static unsigned
6867
20
dissect_rrlp_LocErrorReason(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6868
20
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6869
20
                                     11, NULL, true, 3, NULL);
6870
6871
20
  return offset;
6872
20
}
6873
6874
6875
6876
static unsigned
6877
6
dissect_rrlp_GPSAssistanceData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6878
6
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
6879
6
                                       1, maxGPSAssistanceData, false, NULL);
6880
6881
6
  return offset;
6882
6
}
6883
6884
6885
6886
static unsigned
6887
2
dissect_rrlp_GANSSAssistanceData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6888
2
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
6889
2
                                       1, maxGANSSAssistanceData, false, NULL);
6890
6891
2
  return offset;
6892
2
}
6893
6894
6895
static const per_sequence_t AdditionalAssistanceData_sequence[] = {
6896
  { &hf_rrlp_gpsAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSAssistanceData },
6897
  { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ExtensionContainer },
6898
  { &hf_rrlp_ganssAssistanceData, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSAssistanceData },
6899
  { NULL, 0, 0, NULL }
6900
};
6901
6902
static unsigned
6903
5
dissect_rrlp_AdditionalAssistanceData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6904
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6905
5
                                   ett_rrlp_AdditionalAssistanceData, AdditionalAssistanceData_sequence);
6906
6907
5
  return offset;
6908
5
}
6909
6910
6911
static const per_sequence_t LocationError_sequence[] = {
6912
  { &hf_rrlp_locErrorReason , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_LocErrorReason },
6913
  { &hf_rrlp_additionalAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_AdditionalAssistanceData },
6914
  { NULL, 0, 0, NULL }
6915
};
6916
6917
static unsigned
6918
20
dissect_rrlp_LocationError(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6919
20
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6920
20
                                   ett_rrlp_LocationError, LocationError_sequence);
6921
6922
20
  return offset;
6923
20
}
6924
6925
6926
static const per_sequence_t SeqOfOTD_FirstSetMsrs_R98_Ext_sequence_of[1] = {
6927
  { &hf_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_FirstSetMsrs },
6928
};
6929
6930
static unsigned
6931
4
dissect_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6932
4
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6933
4
                                                  ett_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext, SeqOfOTD_FirstSetMsrs_R98_Ext_sequence_of,
6934
4
                                                  1, 5, false);
6935
6936
4
  return offset;
6937
4
}
6938
6939
6940
static const per_sequence_t OTD_MsrElementFirst_R98_Ext_sequence[] = {
6941
  { &hf_rrlp_otd_FirstSetMsrs_R98_Ext, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext },
6942
  { NULL, 0, 0, NULL }
6943
};
6944
6945
static unsigned
6946
4
dissect_rrlp_OTD_MsrElementFirst_R98_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6947
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6948
4
                                   ett_rrlp_OTD_MsrElementFirst_R98_Ext, OTD_MsrElementFirst_R98_Ext_sequence);
6949
6950
4
  return offset;
6951
4
}
6952
6953
6954
static const per_sequence_t OTD_MeasureInfo_R98_Ext_sequence[] = {
6955
  { &hf_rrlp_otdMsrFirstSets_R98_Ext, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTD_MsrElementFirst_R98_Ext },
6956
  { NULL, 0, 0, NULL }
6957
};
6958
6959
static unsigned
6960
4
dissect_rrlp_OTD_MeasureInfo_R98_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6961
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6962
4
                                   ett_rrlp_OTD_MeasureInfo_R98_Ext, OTD_MeasureInfo_R98_Ext_sequence);
6963
6964
4
  return offset;
6965
4
}
6966
6967
6968
static const per_sequence_t T_rel_98_Ext_MeasureInfo_sequence[] = {
6969
  { &hf_rrlp_otd_MeasureInfo_R98_Ext, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_OTD_MeasureInfo_R98_Ext },
6970
  { NULL, 0, 0, NULL }
6971
};
6972
6973
static unsigned
6974
5
dissect_rrlp_T_rel_98_Ext_MeasureInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6975
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6976
5
                                   ett_rrlp_T_rel_98_Ext_MeasureInfo, T_rel_98_Ext_MeasureInfo_sequence);
6977
6978
5
  return offset;
6979
5
}
6980
6981
6982
6983
static unsigned
6984
1
dissect_rrlp_INTEGER_0_9999(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6985
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6986
1
                                                            0U, 9999U, NULL, false);
6987
6988
1
  return offset;
6989
1
}
6990
6991
6992
static const per_sequence_t GPSTimeAssistanceMeasurements_sequence[] = {
6993
  { &hf_rrlp_referenceFrameMSB, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_63 },
6994
  { &hf_rrlp_gpsTowSubms    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_9999 },
6995
  { &hf_rrlp_deltaTow       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_127 },
6996
  { &hf_rrlp_gpsReferenceTimeUncertainty, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GPSReferenceTimeUncertainty },
6997
  { NULL, 0, 0, NULL }
6998
};
6999
7000
static unsigned
7001
1
dissect_rrlp_GPSTimeAssistanceMeasurements(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7002
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7003
1
                                   ett_rrlp_GPSTimeAssistanceMeasurements, GPSTimeAssistanceMeasurements_sequence);
7004
7005
1
  return offset;
7006
1
}
7007
7008
7009
static const per_sequence_t Rel_98_MsrPosition_Rsp_Extension_sequence[] = {
7010
  { &hf_rrlp_rel_98_Ext_MeasureInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_T_rel_98_Ext_MeasureInfo },
7011
  { &hf_rrlp_timeAssistanceMeasurements, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GPSTimeAssistanceMeasurements },
7012
  { NULL, 0, 0, NULL }
7013
};
7014
7015
static unsigned
7016
5
dissect_rrlp_Rel_98_MsrPosition_Rsp_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7017
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7018
5
                                   ett_rrlp_Rel_98_MsrPosition_Rsp_Extension, Rel_98_MsrPosition_Rsp_Extension_sequence);
7019
7020
5
  return offset;
7021
5
}
7022
7023
7024
7025
static unsigned
7026
7
dissect_rrlp_OTD_MeasureInfo_5_Ext(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7027
7
  offset = dissect_rrlp_SeqOfOTD_MsrElementRest(tvb, offset, actx, tree, hf_index);
7028
7029
7
  return offset;
7030
7
}
7031
7032
7033
static const value_string rrlp_UlPseudoSegInd_vals[] = {
7034
  {   0, "firstOfMany" },
7035
  {   1, "secondOfMany" },
7036
  { 0, NULL }
7037
};
7038
7039
7040
static unsigned
7041
3
dissect_rrlp_UlPseudoSegInd(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7042
3
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7043
3
                                     2, NULL, false, 0, NULL);
7044
7045
3
  return offset;
7046
3
}
7047
7048
7049
static const per_sequence_t Rel_5_MsrPosition_Rsp_Extension_sequence[] = {
7050
  { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_Extended_reference },
7051
  { &hf_rrlp_otd_MeasureInfo_5_Ext, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_OTD_MeasureInfo_5_Ext },
7052
  { &hf_rrlp_ulPseudoSegInd , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_UlPseudoSegInd },
7053
  { NULL, 0, 0, NULL }
7054
};
7055
7056
static unsigned
7057
8
dissect_rrlp_Rel_5_MsrPosition_Rsp_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7058
8
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7059
8
                                   ett_rrlp_Rel_5_MsrPosition_Rsp_Extension, Rel_5_MsrPosition_Rsp_Extension_sequence);
7060
7061
8
  return offset;
7062
8
}
7063
7064
7065
static const per_sequence_t ReferenceFrame_sequence[] = {
7066
  { &hf_rrlp_referenceFN    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
7067
  { &hf_rrlp_referenceFNMSB , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_63 },
7068
  { NULL, 0, 0, NULL }
7069
};
7070
7071
static unsigned
7072
26
dissect_rrlp_ReferenceFrame(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7073
26
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7074
26
                                   ett_rrlp_ReferenceFrame, ReferenceFrame_sequence);
7075
7076
26
  return offset;
7077
26
}
7078
7079
7080
7081
static unsigned
7082
19
dissect_rrlp_GANSSTODm(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7083
19
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7084
19
                                                            0U, 3599999U, NULL, false);
7085
7086
19
  return offset;
7087
19
}
7088
7089
7090
7091
static unsigned
7092
11
dissect_rrlp_INTEGER_0_16384(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7093
11
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7094
11
                                                            0U, 16384U, NULL, false);
7095
7096
11
  return offset;
7097
11
}
7098
7099
7100
static int * const PositionData_bits[] = {
7101
  &hf_rrlp_PositionData_e_otd,
7102
  &hf_rrlp_PositionData_gps,
7103
  &hf_rrlp_PositionData_galileo,
7104
  &hf_rrlp_PositionData_sbas,
7105
  &hf_rrlp_PositionData_modernizedGPS,
7106
  &hf_rrlp_PositionData_qzss,
7107
  &hf_rrlp_PositionData_glonass,
7108
  &hf_rrlp_PositionData_bds,
7109
  NULL
7110
};
7111
7112
static unsigned
7113
14
dissect_rrlp_PositionData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7114
14
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7115
14
                                     3, 16, false, PositionData_bits, 8, NULL, NULL);
7116
7117
14
  return offset;
7118
14
}
7119
7120
7121
static const per_sequence_t GANSSLocationInfo_sequence[] = {
7122
  { &hf_rrlp_referenceFrame , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ReferenceFrame },
7123
  { &hf_rrlp_ganssTODm      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSTODm },
7124
  { &hf_rrlp_ganssTODFrac   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_16384 },
7125
  { &hf_rrlp_ganssTODUncertainty, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSTODUncertainty },
7126
  { &hf_rrlp_ganssTimeID    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
7127
  { &hf_rrlp_fixType        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_FixType },
7128
  { &hf_rrlp_posData        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_PositionData },
7129
  { &hf_rrlp_stationaryIndication, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_1 },
7130
  { &hf_rrlp_posEstimate    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_Ext_GeographicalInformation },
7131
  { NULL, 0, 0, NULL }
7132
};
7133
7134
static unsigned
7135
14
dissect_rrlp_GANSSLocationInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7136
14
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7137
14
                                   ett_rrlp_GANSSLocationInfo, GANSSLocationInfo_sequence);
7138
7139
14
  return offset;
7140
14
}
7141
7142
7143
7144
static unsigned
7145
150
dissect_rrlp_INTEGER_0_33554431(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7146
150
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7147
150
                                                            0U, 33554431U, NULL, false);
7148
7149
150
  return offset;
7150
150
}
7151
7152
7153
static const per_sequence_t GANSS_SgnElement_sequence[] = {
7154
  { &hf_rrlp_svID           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SVID },
7155
  { &hf_rrlp_cNo            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
7156
  { &hf_rrlp_mpathDet       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MpathIndic },
7157
  { &hf_rrlp_carrierQualityInd, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_3 },
7158
  { &hf_rrlp_codePhase_01   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_2097151 },
7159
  { &hf_rrlp_integerCodePhase, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_127 },
7160
  { &hf_rrlp_codePhaseRMSError, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
7161
  { &hf_rrlp_doppler        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_M32768_32767 },
7162
  { &hf_rrlp_adr            , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_33554431 },
7163
  { NULL, 0, 0, NULL }
7164
};
7165
7166
static unsigned
7167
440
dissect_rrlp_GANSS_SgnElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7168
440
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7169
440
                                   ett_rrlp_GANSS_SgnElement, GANSS_SgnElement_sequence);
7170
7171
440
  return offset;
7172
440
}
7173
7174
7175
static const per_sequence_t SeqOfGANSS_SgnElement_sequence_of[1] = {
7176
  { &hf_rrlp_SeqOfGANSS_SgnElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_SgnElement },
7177
};
7178
7179
static unsigned
7180
102
dissect_rrlp_SeqOfGANSS_SgnElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7181
102
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7182
102
                                                  ett_rrlp_SeqOfGANSS_SgnElement, SeqOfGANSS_SgnElement_sequence_of,
7183
102
                                                  1, 16, false);
7184
7185
102
  return offset;
7186
102
}
7187
7188
7189
static const per_sequence_t GANSS_SgnTypeElement_sequence[] = {
7190
  { &hf_rrlp_ganssSignalID  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignalID },
7191
  { &hf_rrlp_ganssCodePhaseAmbiguity, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_127 },
7192
  { &hf_rrlp_ganss_SgnList  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSS_SgnElement },
7193
  { NULL, 0, 0, NULL }
7194
};
7195
7196
static unsigned
7197
102
dissect_rrlp_GANSS_SgnTypeElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7198
102
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7199
102
                                   ett_rrlp_GANSS_SgnTypeElement, GANSS_SgnTypeElement_sequence);
7200
7201
102
  return offset;
7202
102
}
7203
7204
7205
static const per_sequence_t SeqOfGANSS_SgnTypeElement_sequence_of[1] = {
7206
  { &hf_rrlp_SeqOfGANSS_SgnTypeElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_SgnTypeElement },
7207
};
7208
7209
static unsigned
7210
61
dissect_rrlp_SeqOfGANSS_SgnTypeElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7211
61
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7212
61
                                                  ett_rrlp_SeqOfGANSS_SgnTypeElement, SeqOfGANSS_SgnTypeElement_sequence_of,
7213
61
                                                  1, 8, false);
7214
7215
61
  return offset;
7216
61
}
7217
7218
7219
static const per_sequence_t GANSS_MsrElement_sequence[] = {
7220
  { &hf_rrlp_ganssID        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
7221
  { &hf_rrlp_ganss_SgnTypeList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSS_SgnTypeElement },
7222
  { NULL, 0, 0, NULL }
7223
};
7224
7225
static unsigned
7226
61
dissect_rrlp_GANSS_MsrElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7227
61
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7228
61
                                   ett_rrlp_GANSS_MsrElement, GANSS_MsrElement_sequence);
7229
7230
61
  return offset;
7231
61
}
7232
7233
7234
static const per_sequence_t SeqOfGANSS_MsrElement_sequence_of[1] = {
7235
  { &hf_rrlp_SeqOfGANSS_MsrElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_MsrElement },
7236
};
7237
7238
static unsigned
7239
34
dissect_rrlp_SeqOfGANSS_MsrElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7240
34
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7241
34
                                                  ett_rrlp_SeqOfGANSS_MsrElement, SeqOfGANSS_MsrElement_sequence_of,
7242
34
                                                  1, 8, false);
7243
7244
34
  return offset;
7245
34
}
7246
7247
7248
static const per_sequence_t GANSS_MsrSetElement_sequence[] = {
7249
  { &hf_rrlp_referenceFrame , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_ReferenceFrame },
7250
  { &hf_rrlp_ganssTODm      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GANSSTODm },
7251
  { &hf_rrlp_deltaGANSSTOD  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_127 },
7252
  { &hf_rrlp_ganssTODUncertainty, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_GANSSTODUncertainty },
7253
  { &hf_rrlp_ganss_MsrElementList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSS_MsrElement },
7254
  { NULL, 0, 0, NULL }
7255
};
7256
7257
static unsigned
7258
35
dissect_rrlp_GANSS_MsrSetElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7259
35
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7260
35
                                   ett_rrlp_GANSS_MsrSetElement, GANSS_MsrSetElement_sequence);
7261
7262
35
  return offset;
7263
35
}
7264
7265
7266
static const per_sequence_t SeqOfGANSS_MsrSetElement_sequence_of[1] = {
7267
  { &hf_rrlp_SeqOfGANSS_MsrSetElement_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSS_MsrSetElement },
7268
};
7269
7270
static unsigned
7271
27
dissect_rrlp_SeqOfGANSS_MsrSetElement(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7272
27
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7273
27
                                                  ett_rrlp_SeqOfGANSS_MsrSetElement, SeqOfGANSS_MsrSetElement_sequence_of,
7274
27
                                                  1, 3, false);
7275
7276
27
  return offset;
7277
27
}
7278
7279
7280
static const per_sequence_t GANSSMeasureInfo_sequence[] = {
7281
  { &hf_rrlp_ganssMsrSetList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_SeqOfGANSS_MsrSetElement },
7282
  { NULL, 0, 0, NULL }
7283
};
7284
7285
static unsigned
7286
27
dissect_rrlp_GANSSMeasureInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7287
27
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7288
27
                                   ett_rrlp_GANSSMeasureInfo, GANSSMeasureInfo_sequence);
7289
7290
27
  return offset;
7291
27
}
7292
7293
7294
static const per_sequence_t Rel_7_MsrPosition_Rsp_Extension_sequence[] = {
7295
  { &hf_rrlp_velEstimate    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_VelocityEstimate },
7296
  { &hf_rrlp_ganssLocationInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSLocationInfo },
7297
  { &hf_rrlp_ganssMeasureInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSMeasureInfo },
7298
  { NULL, 0, 0, NULL }
7299
};
7300
7301
static unsigned
7302
29
dissect_rrlp_Rel_7_MsrPosition_Rsp_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7303
29
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7304
29
                                   ett_rrlp_Rel_7_MsrPosition_Rsp_Extension, Rel_7_MsrPosition_Rsp_Extension_sequence);
7305
7306
29
  return offset;
7307
29
}
7308
7309
7310
static const per_sequence_t MsrPosition_Rsp_sequence[] = {
7311
  { &hf_rrlp_multipleSets   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_MultipleSets },
7312
  { &hf_rrlp_referenceIdentity, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ReferenceIdentity },
7313
  { &hf_rrlp_otd_MeasureInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_OTD_MeasureInfo },
7314
  { &hf_rrlp_locationInfo   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_LocationInfo },
7315
  { &hf_rrlp_gps_MeasureInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPS_MeasureInfo },
7316
  { &hf_rrlp_locationError  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_LocationError },
7317
  { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ExtensionContainer },
7318
  { &hf_rrlp_rel_98_MsrPosition_Rsp_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel_98_MsrPosition_Rsp_Extension },
7319
  { &hf_rrlp_rel_5_MsrPosition_Rsp_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel_5_MsrPosition_Rsp_Extension },
7320
  { &hf_rrlp_rel_7_MsrPosition_Rsp_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel_7_MsrPosition_Rsp_Extension },
7321
  { NULL, 0, 0, NULL }
7322
};
7323
7324
static unsigned
7325
127
dissect_rrlp_MsrPosition_Rsp(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7326
127
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7327
127
                                   ett_rrlp_MsrPosition_Rsp, MsrPosition_Rsp_sequence);
7328
7329
127
  return offset;
7330
127
}
7331
7332
7333
static const value_string rrlp_MoreAssDataToBeSent_vals[] = {
7334
  {   0, "noMoreMessages" },
7335
  {   1, "moreMessagesOnTheWay" },
7336
  { 0, NULL }
7337
};
7338
7339
7340
static unsigned
7341
25
dissect_rrlp_MoreAssDataToBeSent(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7342
25
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7343
25
                                     2, NULL, false, 0, NULL);
7344
7345
25
  return offset;
7346
25
}
7347
7348
7349
static const per_sequence_t Rel98_AssistanceData_Extension_sequence[] = {
7350
  { &hf_rrlp_rel98_Ext_ExpOTD, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_Rel98_Ext_ExpOTD },
7351
  { &hf_rrlp_gpsTimeAssistanceMeasurementRequest, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_NULL },
7352
  { &hf_rrlp_gpsReferenceTimeUncertainty, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GPSReferenceTimeUncertainty },
7353
  { NULL, 0, 0, NULL }
7354
};
7355
7356
static unsigned
7357
28
dissect_rrlp_Rel98_AssistanceData_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7358
28
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7359
28
                                   ett_rrlp_Rel98_AssistanceData_Extension, Rel98_AssistanceData_Extension_sequence);
7360
7361
28
  return offset;
7362
28
}
7363
7364
7365
static const per_sequence_t Rel5_AssistanceData_Extension_sequence[] = {
7366
  { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_Extended_reference },
7367
  { NULL, 0, 0, NULL }
7368
};
7369
7370
static unsigned
7371
2
dissect_rrlp_Rel5_AssistanceData_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7372
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7373
2
                                   ett_rrlp_Rel5_AssistanceData_Extension, Rel5_AssistanceData_Extension_sequence);
7374
7375
2
  return offset;
7376
2
}
7377
7378
7379
static const per_sequence_t Rel7_AssistanceData_Extension_sequence[] = {
7380
  { &hf_rrlp_ganss_AssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSS_AssistData },
7381
  { &hf_rrlp_ganssCarrierPhaseMeasurementRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_NULL },
7382
  { &hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_NULL },
7383
  { &hf_rrlp_add_GPS_AssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_Add_GPS_AssistData },
7384
  { NULL, 0, 0, NULL }
7385
};
7386
7387
static unsigned
7388
291
dissect_rrlp_Rel7_AssistanceData_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7389
291
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7390
291
                                   ett_rrlp_Rel7_AssistanceData_Extension, Rel7_AssistanceData_Extension_sequence);
7391
7392
291
  return offset;
7393
291
}
7394
7395
7396
static const per_sequence_t AssistanceData_sequence[] = {
7397
  { &hf_rrlp_referenceAssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ReferenceAssistData },
7398
  { &hf_rrlp_msrAssistData  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_MsrAssistData },
7399
  { &hf_rrlp_systemInfoAssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_SystemInfoAssistData },
7400
  { &hf_rrlp_gps_AssistData , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPS_AssistData },
7401
  { &hf_rrlp_moreAssDataToBeSent, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_MoreAssDataToBeSent },
7402
  { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ExtensionContainer },
7403
  { &hf_rrlp_rel98_AssistanceData_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel98_AssistanceData_Extension },
7404
  { &hf_rrlp_rel5_AssistanceData_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel5_AssistanceData_Extension },
7405
  { &hf_rrlp_rel7_AssistanceData_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel7_AssistanceData_Extension },
7406
  { NULL, 0, 0, NULL }
7407
};
7408
7409
static unsigned
7410
421
dissect_rrlp_AssistanceData(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7411
421
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7412
421
                                   ett_rrlp_AssistanceData, AssistanceData_sequence);
7413
7414
421
  return offset;
7415
421
}
7416
7417
7418
static const value_string rrlp_ErrorCodes_vals[] = {
7419
  {   0, "unDefined" },
7420
  {   1, "missingComponet" },
7421
  {   2, "incorrectData" },
7422
  {   3, "missingIEorComponentElement" },
7423
  {   4, "messageTooShort" },
7424
  {   5, "unknowReferenceNumber" },
7425
  { 0, NULL }
7426
};
7427
7428
7429
static unsigned
7430
10
dissect_rrlp_ErrorCodes(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7431
10
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7432
10
                                     6, NULL, true, 0, NULL);
7433
7434
10
  return offset;
7435
10
}
7436
7437
7438
static const per_sequence_t Rel_5_ProtocolError_Extension_sequence[] = {
7439
  { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_Extended_reference },
7440
  { NULL, 0, 0, NULL }
7441
};
7442
7443
static unsigned
7444
2
dissect_rrlp_Rel_5_ProtocolError_Extension(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7445
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7446
2
                                   ett_rrlp_Rel_5_ProtocolError_Extension, Rel_5_ProtocolError_Extension_sequence);
7447
7448
2
  return offset;
7449
2
}
7450
7451
7452
static const per_sequence_t ProtocolError_sequence[] = {
7453
  { &hf_rrlp_errorCause     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_ErrorCodes },
7454
  { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ExtensionContainer },
7455
  { &hf_rrlp_rel_5_ProtocolError_Extension, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_Rel_5_ProtocolError_Extension },
7456
  { NULL, 0, 0, NULL }
7457
};
7458
7459
static unsigned
7460
10
dissect_rrlp_ProtocolError(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7461
10
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7462
10
                                   ett_rrlp_ProtocolError, ProtocolError_sequence);
7463
7464
10
  return offset;
7465
10
}
7466
7467
7468
static int * const GANSSPositioningMethodTypes_bits[] = {
7469
  &hf_rrlp_GANSSPositioningMethodTypes_msAssisted,
7470
  &hf_rrlp_GANSSPositioningMethodTypes_msBased,
7471
  &hf_rrlp_GANSSPositioningMethodTypes_standalone,
7472
  NULL
7473
};
7474
7475
static unsigned
7476
7
dissect_rrlp_GANSSPositioningMethodTypes(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7477
7
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7478
7
                                     1, 8, false, GANSSPositioningMethodTypes_bits, 3, NULL, NULL);
7479
7480
7
  return offset;
7481
7
}
7482
7483
7484
static int * const SBASID_bits[] = {
7485
  &hf_rrlp_SBASID_waas,
7486
  &hf_rrlp_SBASID_egnos,
7487
  &hf_rrlp_SBASID_masas,
7488
  &hf_rrlp_SBASID_gagan,
7489
  NULL
7490
};
7491
7492
static unsigned
7493
0
dissect_rrlp_SBASID(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7494
0
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7495
0
                                     1, 8, false, SBASID_bits, 4, NULL, NULL);
7496
7497
0
  return offset;
7498
0
}
7499
7500
7501
static const per_sequence_t GANSSPositionMethod_sequence[] = {
7502
  { &hf_rrlp_ganssID        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
7503
  { &hf_rrlp_gANSSPositioningMethodTypes, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSPositioningMethodTypes },
7504
  { &hf_rrlp_gANSSSignals   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSSignals },
7505
  { &hf_rrlp_sbasID         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_SBASID },
7506
  { NULL, 0, 0, NULL }
7507
};
7508
7509
static unsigned
7510
28
dissect_rrlp_GANSSPositionMethod(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7511
28
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7512
28
                                   ett_rrlp_GANSSPositionMethod, GANSSPositionMethod_sequence);
7513
7514
28
  return offset;
7515
28
}
7516
7517
7518
static const per_sequence_t GANSSPositionMethods_sequence_of[1] = {
7519
  { &hf_rrlp_GANSSPositionMethods_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSPositionMethod },
7520
};
7521
7522
static unsigned
7523
10
dissect_rrlp_GANSSPositionMethods(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7524
10
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7525
10
                                                  ett_rrlp_GANSSPositionMethods, GANSSPositionMethods_sequence_of,
7526
10
                                                  1, 16, false);
7527
7528
10
  return offset;
7529
10
}
7530
7531
7532
static const per_sequence_t PosCapability_Req_sequence[] = {
7533
  { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_Extended_reference },
7534
  { &hf_rrlp_gANSSPositionMethods, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSPositionMethods },
7535
  { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ExtensionContainer },
7536
  { NULL, 0, 0, NULL }
7537
};
7538
7539
static unsigned
7540
12
dissect_rrlp_PosCapability_Req(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7541
12
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7542
12
                                   ett_rrlp_PosCapability_Req, PosCapability_Req_sequence);
7543
7544
12
  return offset;
7545
12
}
7546
7547
7548
static int * const NonGANSSPositionMethods_bits[] = {
7549
  &hf_rrlp_NonGANSSPositionMethods_msAssistedEOTD,
7550
  &hf_rrlp_NonGANSSPositionMethods_msBasedEOTD,
7551
  &hf_rrlp_NonGANSSPositionMethods_msAssistedGPS,
7552
  &hf_rrlp_NonGANSSPositionMethods_msBasedGPS,
7553
  &hf_rrlp_NonGANSSPositionMethods_standaloneGPS,
7554
  NULL
7555
};
7556
7557
static unsigned
7558
5
dissect_rrlp_NonGANSSPositionMethods(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7559
5
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7560
5
                                     1, 16, false, NonGANSSPositionMethods_bits, 5, NULL, NULL);
7561
7562
5
  return offset;
7563
5
}
7564
7565
7566
static int * const MultipleMeasurementSets_bits[] = {
7567
  &hf_rrlp_MultipleMeasurementSets_eotd,
7568
  &hf_rrlp_MultipleMeasurementSets_gps,
7569
  &hf_rrlp_MultipleMeasurementSets_ganss,
7570
  NULL
7571
};
7572
7573
static unsigned
7574
7
dissect_rrlp_MultipleMeasurementSets(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7575
7
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7576
7
                                     1, 8, false, MultipleMeasurementSets_bits, 3, NULL, NULL);
7577
7578
7
  return offset;
7579
7
}
7580
7581
7582
static const per_sequence_t PosCapabilities_sequence[] = {
7583
  { &hf_rrlp_nonGANSSpositionMethods, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_NonGANSSPositionMethods },
7584
  { &hf_rrlp_gANSSPositionMethods, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSPositionMethods },
7585
  { &hf_rrlp_multipleMeasurementSets, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_MultipleMeasurementSets },
7586
  { NULL, 0, 0, NULL }
7587
};
7588
7589
static unsigned
7590
23
dissect_rrlp_PosCapabilities(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7591
23
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7592
23
                                   ett_rrlp_PosCapabilities, PosCapabilities_sequence);
7593
7594
23
  return offset;
7595
23
}
7596
7597
7598
static int * const GPSAssistance_bits[] = {
7599
  &hf_rrlp_GPSAssistance_almanac,
7600
  &hf_rrlp_GPSAssistance_uTCmodel,
7601
  &hf_rrlp_GPSAssistance_ionosphericModel,
7602
  &hf_rrlp_GPSAssistance_navigationmodel,
7603
  &hf_rrlp_GPSAssistance_dGPScorrections,
7604
  &hf_rrlp_GPSAssistance_referenceLocation,
7605
  &hf_rrlp_GPSAssistance_referenceTime,
7606
  &hf_rrlp_GPSAssistance_acquisitionAssistance,
7607
  &hf_rrlp_GPSAssistance_realTimeIntegrity,
7608
  &hf_rrlp_GPSAssistance_ephemerisExtension,
7609
  &hf_rrlp_GPSAssistance_ephemerisExtensionCheck,
7610
  &hf_rrlp_GPSAssistance_gPSAcquisAssist_R12_Ext,
7611
  NULL
7612
};
7613
7614
static unsigned
7615
7
dissect_rrlp_GPSAssistance(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7616
7
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7617
7
                                     1, 16, false, GPSAssistance_bits, 12, NULL, NULL);
7618
7619
7
  return offset;
7620
7
}
7621
7622
7623
static int * const CommonGANSSAssistance_bits[] = {
7624
  &hf_rrlp_CommonGANSSAssistance_referenceTime,
7625
  &hf_rrlp_CommonGANSSAssistance_referenceLocation,
7626
  &hf_rrlp_CommonGANSSAssistance_spare_bit2,
7627
  &hf_rrlp_CommonGANSSAssistance_ionosphericModel,
7628
  &hf_rrlp_CommonGANSSAssistance_addIonosphericModel,
7629
  &hf_rrlp_CommonGANSSAssistance_earthOrientationParam,
7630
  NULL
7631
};
7632
7633
static unsigned
7634
10
dissect_rrlp_CommonGANSSAssistance(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7635
10
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7636
10
                                     1, 8, false, CommonGANSSAssistance_bits, 6, NULL, NULL);
7637
7638
10
  return offset;
7639
10
}
7640
7641
7642
static int * const GANSSAssistance_bits[] = {
7643
  &hf_rrlp_GANSSAssistance_realTimeIntegrity,
7644
  &hf_rrlp_GANSSAssistance_differentialCorrections,
7645
  &hf_rrlp_GANSSAssistance_almanac,
7646
  &hf_rrlp_GANSSAssistance_referenceMeasurementInformation,
7647
  &hf_rrlp_GANSSAssistance_navigationModel,
7648
  &hf_rrlp_GANSSAssistance_timeModelGNSS_UTC,
7649
  &hf_rrlp_GANSSAssistance_timeModelGNSS_GNSS,
7650
  &hf_rrlp_GANSSAssistance_databitassistance,
7651
  &hf_rrlp_GANSSAssistance_ephemerisExtension,
7652
  &hf_rrlp_GANSSAssistance_ephemerisExtensionCheck,
7653
  &hf_rrlp_GANSSAssistance_addUTCmodel,
7654
  &hf_rrlp_GANSSAssistance_auxiliaryInformation,
7655
  &hf_rrlp_GANSSAssistance_gANSSRefMeasurementAssist_R12_Ext,
7656
  &hf_rrlp_GANSSAssistance_bdsDifferentialCorrections_r12,
7657
  &hf_rrlp_GANSSAssistance_bdsGridModel_r12,
7658
  NULL
7659
};
7660
7661
static unsigned
7662
30
dissect_rrlp_GANSSAssistance(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7663
30
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7664
30
                                     1, 16, false, GANSSAssistance_bits, 15, NULL, NULL);
7665
7666
30
  return offset;
7667
30
}
7668
7669
7670
static const per_sequence_t GANSSAssistanceForOneGANSS_sequence[] = {
7671
  { &hf_rrlp_ganssID        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
7672
  { &hf_rrlp_gANSSAssistance, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSAssistance },
7673
  { NULL, 0, 0, NULL }
7674
};
7675
7676
static unsigned
7677
31
dissect_rrlp_GANSSAssistanceForOneGANSS(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7678
31
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7679
31
                                   ett_rrlp_GANSSAssistanceForOneGANSS, GANSSAssistanceForOneGANSS_sequence);
7680
7681
31
  return offset;
7682
31
}
7683
7684
7685
static const per_sequence_t SpecificGANSSAssistance_sequence_of[1] = {
7686
  { &hf_rrlp_SpecificGANSSAssistance_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSAssistanceForOneGANSS },
7687
};
7688
7689
static unsigned
7690
10
dissect_rrlp_SpecificGANSSAssistance(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7691
10
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7692
10
                                                  ett_rrlp_SpecificGANSSAssistance, SpecificGANSSAssistance_sequence_of,
7693
10
                                                  1, 16, false);
7694
7695
10
  return offset;
7696
10
}
7697
7698
7699
static const per_sequence_t GANSSAssistanceSet_sequence[] = {
7700
  { &hf_rrlp_commonGANSSAssistance, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_CommonGANSSAssistance },
7701
  { &hf_rrlp_specificGANSSAssistance, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_SpecificGANSSAssistance },
7702
  { NULL, 0, 0, NULL }
7703
};
7704
7705
static unsigned
7706
10
dissect_rrlp_GANSSAssistanceSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7707
10
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7708
10
                                   ett_rrlp_GANSSAssistanceSet, GANSSAssistanceSet_sequence);
7709
7710
10
  return offset;
7711
10
}
7712
7713
7714
static int * const GANSSModelID_bits[] = {
7715
  &hf_rrlp_GANSSModelID_model1,
7716
  &hf_rrlp_GANSSModelID_model2,
7717
  &hf_rrlp_GANSSModelID_model3,
7718
  &hf_rrlp_GANSSModelID_model4,
7719
  &hf_rrlp_GANSSModelID_model5,
7720
  &hf_rrlp_GANSSModelID_model6,
7721
  &hf_rrlp_GANSSModelID_model7,
7722
  &hf_rrlp_GANSSModelID_model8,
7723
  NULL
7724
};
7725
7726
static unsigned
7727
5
dissect_rrlp_GANSSModelID(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7728
5
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7729
5
                                     1, 8, false, GANSSModelID_bits, 8, NULL, NULL);
7730
7731
5
  return offset;
7732
5
}
7733
7734
7735
static const per_sequence_t GANSSAdditionalAssistanceChoicesForOneGANSS_sequence[] = {
7736
  { &hf_rrlp_ganssID        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
7737
  { &hf_rrlp_ganssClockModelChoice, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSModelID },
7738
  { &hf_rrlp_gannsOrbitModelChoice, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSModelID },
7739
  { &hf_rrlp_ganssAlmanacModelChoice, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSModelID },
7740
  { &hf_rrlp_ganssAdditionalUTCModelChoice, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSModelID },
7741
  { NULL, 0, 0, NULL }
7742
};
7743
7744
static unsigned
7745
9
dissect_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7746
9
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7747
9
                                   ett_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS, GANSSAdditionalAssistanceChoicesForOneGANSS_sequence);
7748
7749
9
  return offset;
7750
9
}
7751
7752
7753
static const per_sequence_t GANSSAdditionalAssistanceChoices_sequence_of[1] = {
7754
  { &hf_rrlp_GANSSAdditionalAssistanceChoices_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS },
7755
};
7756
7757
static unsigned
7758
3
dissect_rrlp_GANSSAdditionalAssistanceChoices(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7759
3
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7760
3
                                                  ett_rrlp_GANSSAdditionalAssistanceChoices, GANSSAdditionalAssistanceChoices_sequence_of,
7761
3
                                                  1, 16, false);
7762
7763
3
  return offset;
7764
3
}
7765
7766
7767
static const per_sequence_t AssistanceSupported_sequence[] = {
7768
  { &hf_rrlp_gpsAssistance  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSAssistance },
7769
  { &hf_rrlp_gANSSAssistanceSet, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSAssistanceSet },
7770
  { &hf_rrlp_gANSSAdditionalAssistanceChoices, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_rrlp_GANSSAdditionalAssistanceChoices },
7771
  { NULL, 0, 0, NULL }
7772
};
7773
7774
static unsigned
7775
20
dissect_rrlp_AssistanceSupported(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7776
20
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7777
20
                                   ett_rrlp_AssistanceSupported, AssistanceSupported_sequence);
7778
7779
20
  return offset;
7780
20
}
7781
7782
7783
static const per_sequence_t AssistanceNeeded_sequence[] = {
7784
  { &hf_rrlp_gpsAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GPSAssistanceData },
7785
  { &hf_rrlp_ganssAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_GANSSAssistanceData },
7786
  { NULL, 0, 0, NULL }
7787
};
7788
7789
static unsigned
7790
5
dissect_rrlp_AssistanceNeeded(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7791
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7792
5
                                   ett_rrlp_AssistanceNeeded, AssistanceNeeded_sequence);
7793
7794
5
  return offset;
7795
5
}
7796
7797
7798
static const per_sequence_t PosCapability_Rsp_sequence[] = {
7799
  { &hf_rrlp_extended_reference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_Extended_reference },
7800
  { &hf_rrlp_posCapabilities, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_rrlp_PosCapabilities },
7801
  { &hf_rrlp_assistanceSupported, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_AssistanceSupported },
7802
  { &hf_rrlp_assistanceNeeded, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_AssistanceNeeded },
7803
  { &hf_rrlp_extensionContainer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_rrlp_ExtensionContainer },
7804
  { NULL, 0, 0, NULL }
7805
};
7806
7807
static unsigned
7808
23
dissect_rrlp_PosCapability_Rsp(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7809
23
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7810
23
                                   ett_rrlp_PosCapability_Rsp, PosCapability_Rsp_sequence);
7811
7812
23
  return offset;
7813
23
}
7814
7815
7816
7817
static unsigned
7818
28
dissect_rrlp_INTEGER(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7819
28
  offset = dissect_per_integer(tvb, offset, actx, tree, hf_index, NULL);
7820
7821
28
  return offset;
7822
28
}
7823
7824
7825
static const per_sequence_t CellInfo_sequence[] = {
7826
  { &hf_rrlp_bsic_01        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_511 },
7827
  { &hf_rrlp_arfcn          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_1023 },
7828
  { NULL, 0, 0, NULL }
7829
};
7830
7831
static unsigned
7832
52
dissect_rrlp_CellInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7833
52
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7834
52
                                   ett_rrlp_CellInfo, CellInfo_sequence);
7835
7836
52
  return offset;
7837
52
}
7838
7839
7840
static const per_sequence_t CellSet_sequence[] = {
7841
  { &hf_rrlp_cell1          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_CellInfo },
7842
  { &hf_rrlp_cell2          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellInfo },
7843
  { &hf_rrlp_cell3          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellInfo },
7844
  { &hf_rrlp_cell4          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellInfo },
7845
  { &hf_rrlp_cell5          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellInfo },
7846
  { &hf_rrlp_cell6          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellInfo },
7847
  { NULL, 0, 0, NULL }
7848
};
7849
7850
static unsigned
7851
4
dissect_rrlp_CellSet(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7852
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7853
4
                                   ett_rrlp_CellSet, CellSet_sequence);
7854
7855
4
  return offset;
7856
4
}
7857
7858
7859
static const per_sequence_t CellSets_sequence[] = {
7860
  { &hf_rrlp_cellSet1       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_CellSet },
7861
  { &hf_rrlp_cellSet2       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellSet },
7862
  { &hf_rrlp_cellSet3       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellSet },
7863
  { &hf_rrlp_cellSet4       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellSet },
7864
  { &hf_rrlp_cellSet5       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellSet },
7865
  { &hf_rrlp_cellSet6       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellSet },
7866
  { &hf_rrlp_cellSet7       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellSet },
7867
  { &hf_rrlp_cellSet8       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_CellSet },
7868
  { NULL, 0, 0, NULL }
7869
};
7870
7871
static unsigned
7872
2
dissect_rrlp_CellSets(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7873
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7874
2
                                   ett_rrlp_CellSets, CellSets_sequence);
7875
7876
2
  return offset;
7877
2
}
7878
7879
7880
static const per_sequence_t MultilaterationOTD_Req_sequence[] = {
7881
  { &hf_rrlp_targetNumOTDMeasurements, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER },
7882
  { &hf_rrlp_requiredDLSyncAccuracy, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER },
7883
  { &hf_rrlp_neighbourCellSets, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_CellSets },
7884
  { &hf_rrlp_servingCellSet , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_CellSet },
7885
  { NULL, 0, 0, NULL }
7886
};
7887
7888
static unsigned
7889
5
dissect_rrlp_MultilaterationOTD_Req(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7890
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7891
5
                                   ett_rrlp_MultilaterationOTD_Req, MultilaterationOTD_Req_sequence);
7892
7893
5
  return offset;
7894
5
}
7895
7896
7897
7898
static unsigned
7899
48
dissect_rrlp_INTEGER_1_48(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7900
48
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7901
48
                                                            1U, 48U, NULL, false);
7902
7903
48
  return offset;
7904
48
}
7905
7906
7907
static const value_string rrlp_CellType_vals[] = {
7908
  {   0, "configuredNeighbourCellIdx" },
7909
  {   1, "detectedNeighbourCell" },
7910
  { 0, NULL }
7911
};
7912
7913
static const per_choice_t CellType_choice[] = {
7914
  {   0, &hf_rrlp_configuredNeighbourCellIdx, ASN1_NO_EXTENSIONS     , dissect_rrlp_INTEGER_1_48 },
7915
  {   1, &hf_rrlp_detectedNeighbourCell, ASN1_NO_EXTENSIONS     , dissect_rrlp_CellInfo },
7916
  { 0, NULL, 0, NULL }
7917
};
7918
7919
static unsigned
7920
97
dissect_rrlp_CellType(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7921
97
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7922
97
                                 ett_rrlp_CellType, CellType_choice,
7923
97
                                 NULL);
7924
7925
97
  return offset;
7926
97
}
7927
7928
7929
7930
static unsigned
7931
74
dissect_rrlp_INTEGER_0_999(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7932
74
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7933
74
                                                            0U, 999U, NULL, false);
7934
7935
74
  return offset;
7936
74
}
7937
7938
7939
static const per_sequence_t OTDMeasurementInfo_sequence[] = {
7940
  { &hf_rrlp_reportedCell   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_CellType },
7941
  { &hf_rrlp_msSyncAccuracy , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
7942
  { &hf_rrlp_observedTimeDiff, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_999 },
7943
  { NULL, 0, 0, NULL }
7944
};
7945
7946
static unsigned
7947
75
dissect_rrlp_OTDMeasurementInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7948
75
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7949
75
                                   ett_rrlp_OTDMeasurementInfo, OTDMeasurementInfo_sequence);
7950
7951
75
  return offset;
7952
75
}
7953
7954
7955
static const per_sequence_t OTDMeasurementResults_sequence[] = {
7956
  { &hf_rrlp_oTDMeasurementInfo1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTDMeasurementInfo },
7957
  { &hf_rrlp_oTDMeasurementInfo2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_OTDMeasurementInfo },
7958
  { &hf_rrlp_oTDMeasurementInfo3, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_OTDMeasurementInfo },
7959
  { &hf_rrlp_oTDMeasurementInfo4, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_OTDMeasurementInfo },
7960
  { &hf_rrlp_oTDMeasurementInfo5, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_OTDMeasurementInfo },
7961
  { &hf_rrlp_oTDMeasurementInfo6, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_OTDMeasurementInfo },
7962
  { &hf_rrlp_oTDMeasurementInfo7, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_OTDMeasurementInfo },
7963
  { NULL, 0, 0, NULL }
7964
};
7965
7966
static unsigned
7967
18
dissect_rrlp_OTDMeasurementResults(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7968
18
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7969
18
                                   ett_rrlp_OTDMeasurementResults, OTDMeasurementResults_sequence);
7970
7971
18
  return offset;
7972
18
}
7973
7974
7975
static const per_sequence_t RXLEVMeasurementInfo_sequence[] = {
7976
  { &hf_rrlp_reportedCell   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_CellType },
7977
  { &hf_rrlp_rxLEV          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
7978
  { NULL, 0, 0, NULL }
7979
};
7980
7981
static unsigned
7982
22
dissect_rrlp_RXLEVMeasurementInfo(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7983
22
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7984
22
                                   ett_rrlp_RXLEVMeasurementInfo, RXLEVMeasurementInfo_sequence);
7985
7986
22
  return offset;
7987
22
}
7988
7989
7990
static const per_sequence_t RXLEVMeasurementResults_sequence[] = {
7991
  { &hf_rrlp_rxLEVMeasurementInfo1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_RXLEVMeasurementInfo },
7992
  { &hf_rrlp_rxLEVMeasurementInfo2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_RXLEVMeasurementInfo },
7993
  { &hf_rrlp_rxLEVMeasurementInfo3, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_RXLEVMeasurementInfo },
7994
  { &hf_rrlp_rxLEVMeasurementInfo4, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_RXLEVMeasurementInfo },
7995
  { &hf_rrlp_rxLEVMeasurementInfo5, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_RXLEVMeasurementInfo },
7996
  { &hf_rrlp_rxLEVMeasurementInfo6, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_RXLEVMeasurementInfo },
7997
  { NULL, 0, 0, NULL }
7998
};
7999
8000
static unsigned
8001
8
dissect_rrlp_RXLEVMeasurementResults(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8002
8
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8003
8
                                   ett_rrlp_RXLEVMeasurementResults, RXLEVMeasurementResults_sequence);
8004
8005
8
  return offset;
8006
8
}
8007
8008
8009
static const per_sequence_t MultilaterationOTD_Rsp_sequence[] = {
8010
  { &hf_rrlp_servingCellDLAccuracy, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_1_16 },
8011
  { &hf_rrlp_oTDMeasurementResults, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_OTDMeasurementResults },
8012
  { &hf_rrlp_rXLEVMeasurementResults, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_RXLEVMeasurementResults },
8013
  { NULL, 0, 0, NULL }
8014
};
8015
8016
static unsigned
8017
18
dissect_rrlp_MultilaterationOTD_Rsp(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8018
18
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8019
18
                                   ett_rrlp_MultilaterationOTD_Rsp, MultilaterationOTD_Rsp_sequence);
8020
8021
18
  return offset;
8022
18
}
8023
8024
8025
static const per_sequence_t Extended_Access_Burst_sequence[] = {
8026
  { &hf_rrlp_short_BSS_ID   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
8027
  { NULL, 0, 0, NULL }
8028
};
8029
8030
static unsigned
8031
9
dissect_rrlp_Extended_Access_Burst(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8032
9
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8033
9
                                   ett_rrlp_Extended_Access_Burst, Extended_Access_Burst_sequence);
8034
8035
9
  return offset;
8036
9
}
8037
8038
8039
static const value_string rrlp_MTA_Method_vals[] = {
8040
  {   0, "rlc-Data-Block" },
8041
  {   1, "access-Burst" },
8042
  {   2, "extended-Access-Burst" },
8043
  {   3, "spare" },
8044
  { 0, NULL }
8045
};
8046
8047
static const per_choice_t MTA_Method_choice[] = {
8048
  {   0, &hf_rrlp_rlc_Data_Block , ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
8049
  {   1, &hf_rrlp_access_Burst   , ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
8050
  {   2, &hf_rrlp_extended_Access_Burst, ASN1_NO_EXTENSIONS     , dissect_rrlp_Extended_Access_Burst },
8051
  {   3, &hf_rrlp_spare          , ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
8052
  { 0, NULL, 0, NULL }
8053
};
8054
8055
static unsigned
8056
30
dissect_rrlp_MTA_Method(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8057
30
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8058
30
                                 ett_rrlp_MTA_Method, MTA_Method_choice,
8059
30
                                 NULL);
8060
8061
30
  return offset;
8062
30
}
8063
8064
8065
static const per_sequence_t Random_ID_Set_sequence[] = {
8066
  { &hf_rrlp_random_ID1     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
8067
  { &hf_rrlp_random_ID2     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_65535 },
8068
  { &hf_rrlp_random_ID3     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_65535 },
8069
  { &hf_rrlp_random_ID4     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_65535 },
8070
  { &hf_rrlp_random_ID5     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_65535 },
8071
  { &hf_rrlp_random_ID6     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_65535 },
8072
  { &hf_rrlp_random_ID7     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_65535 },
8073
  { &hf_rrlp_random_ID8     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_65535 },
8074
  { &hf_rrlp_random_ID9     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_65535 },
8075
  { NULL, 0, 0, NULL }
8076
};
8077
8078
static unsigned
8079
30
dissect_rrlp_Random_ID_Set(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8080
30
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8081
30
                                   ett_rrlp_Random_ID_Set, Random_ID_Set_sequence);
8082
8083
30
  return offset;
8084
30
}
8085
8086
8087
static const per_sequence_t BSIC_Info_sequence[] = {
8088
  { &hf_rrlp_radio_Frequency_Colour_Code, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
8089
  { &hf_rrlp_network_Colour_Code, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
8090
  { &hf_rrlp_base_station_Colour_Code, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
8091
  { NULL, 0, 0, NULL }
8092
};
8093
8094
static unsigned
8095
177
dissect_rrlp_BSIC_Info(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8096
177
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8097
177
                                   ett_rrlp_BSIC_Info, BSIC_Info_sequence);
8098
8099
177
  return offset;
8100
177
}
8101
8102
8103
static const per_sequence_t Co_Sited_Cell_Set_Member_sequence[] = {
8104
  { &hf_rrlp_arfcn          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1023 },
8105
  { &hf_rrlp_bsic_Info      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC_Info },
8106
  { NULL, 0, 0, NULL }
8107
};
8108
8109
static unsigned
8110
30
dissect_rrlp_Co_Sited_Cell_Set_Member(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8111
30
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8112
30
                                   ett_rrlp_Co_Sited_Cell_Set_Member, Co_Sited_Cell_Set_Member_sequence);
8113
8114
30
  return offset;
8115
30
}
8116
8117
8118
static const per_sequence_t Co_Sited_Cells_sequence[] = {
8119
  { &hf_rrlp_co_sited_cell_Set_Member1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Co_Sited_Cell_Set_Member },
8120
  { &hf_rrlp_co_sited_cell_set_Member2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Co_Sited_Cell_Set_Member },
8121
  { &hf_rrlp_co_sited_cell_set_Member3, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Co_Sited_Cell_Set_Member },
8122
  { &hf_rrlp_co_sited_cell_set_Member4, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Co_Sited_Cell_Set_Member },
8123
  { &hf_rrlp_co_sited_cell_set_Member5, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Co_Sited_Cell_Set_Member },
8124
  { &hf_rrlp_co_sited_cell_set_Member6, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Co_Sited_Cell_Set_Member },
8125
  { NULL, 0, 0, NULL }
8126
};
8127
8128
static unsigned
8129
15
dissect_rrlp_Co_Sited_Cells(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8130
15
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8131
15
                                   ett_rrlp_Co_Sited_Cells, Co_Sited_Cells_sequence);
8132
8133
15
  return offset;
8134
15
}
8135
8136
8137
static const per_sequence_t MTA_BITMAP_sequence[] = {
8138
  { &hf_rrlp_mta_RLC_Data_Block_method, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
8139
  { &hf_rrlp_mta_Access_Burst_method, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
8140
  { &hf_rrlp_mta_Extended_Access_Burst_method, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
8141
  { &hf_rrlp_mta_spare      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
8142
  { NULL, 0, 0, NULL }
8143
};
8144
8145
static unsigned
8146
24
dissect_rrlp_MTA_BITMAP(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8147
24
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8148
24
                                   ett_rrlp_MTA_BITMAP, MTA_BITMAP_sequence);
8149
8150
24
  return offset;
8151
24
}
8152
8153
8154
static const per_sequence_t EC_RACH_Control_Parameters_sequence[] = {
8155
  { &hf_rrlp_ec_BS_CC_CHANS , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
8156
  { &hf_rrlp_ec_RXLEV_ACCESS_MIN, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
8157
  { &hf_rrlp_ms_TXPWR_MAX_CCH, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
8158
  { &hf_rrlp_lb_MS_TXPWR_MAX_CCH, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_31 },
8159
  { &hf_rrlp_cell_SELECTION_RLA_MARGIN, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
8160
  { &hf_rrlp_dl_CC_Selection, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
8161
  { &hf_rrlp_bt_Threshold_DL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
8162
  { &hf_rrlp_cc2_Range_DL   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_31 },
8163
  { &hf_rrlp_cc3_Range_DL   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_31 },
8164
  { &hf_rrlp_bt_Threshold_UL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
8165
  { &hf_rrlp_cc2_Range_UL   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_31 },
8166
  { &hf_rrlp_cc3_Range_UL   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_31 },
8167
  { &hf_rrlp_cc4_Range_UL   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_31 },
8168
  { &hf_rrlp_bsPWR          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
8169
  { &hf_rrlp_dl_Signal_Strength_Step_Size, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_3 },
8170
  { &hf_rrlp_ec_Reduced_PDCH_Allocation, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
8171
  { &hf_rrlp_ec_Max_Retrans , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER },
8172
  { &hf_rrlp_sm             , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
8173
  { &hf_rrlp_tm             , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
8174
  { &hf_rrlp_access_Timeslots, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
8175
  { &hf_rrlp_alpha          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_15 },
8176
  { &hf_rrlp_t3168          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
8177
  { &hf_rrlp_t3192          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
8178
  { &hf_rrlp_t3226          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_7 },
8179
  { &hf_rrlp_t3248          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
8180
  { &hf_rrlp_mta_BITMAP     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MTA_BITMAP },
8181
  { NULL, 0, 0, NULL }
8182
};
8183
8184
static unsigned
8185
23
dissect_rrlp_EC_RACH_Control_Parameters(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8186
23
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8187
23
                                   ett_rrlp_EC_RACH_Control_Parameters, EC_RACH_Control_Parameters_sequence);
8188
8189
23
  return offset;
8190
23
}
8191
8192
8193
static const value_string rrlp_T_ec_cell_information_vals[] = {
8194
  {   0, "ec-RACH-Control-Parameters" },
8195
  {   1, "default-ec-RACH-Control-Parameters" },
8196
  { 0, NULL }
8197
};
8198
8199
static const per_choice_t T_ec_cell_information_choice[] = {
8200
  {   0, &hf_rrlp_ec_RACH_Control_Parameters, ASN1_NO_EXTENSIONS     , dissect_rrlp_EC_RACH_Control_Parameters },
8201
  {   1, &hf_rrlp_default_ec_RACH_Control_Parameters, ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
8202
  { 0, NULL, 0, NULL }
8203
};
8204
8205
static unsigned
8206
148
dissect_rrlp_T_ec_cell_information(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8207
148
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8208
148
                                 ett_rrlp_T_ec_cell_information, T_ec_cell_information_choice,
8209
148
                                 NULL);
8210
8211
148
  return offset;
8212
148
}
8213
8214
8215
static const per_sequence_t RACH_Control_Parameters_sequence[] = {
8216
  { &hf_rrlp_rxlev_ACCESS_MIN, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_63 },
8217
  { &hf_rrlp_ms_TXPWR_MAX_CCH, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_31 },
8218
  { &hf_rrlp_max_Retrans    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_3 },
8219
  { &hf_rrlp_tx_integer     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
8220
  { &hf_rrlp_mta_BITMAP     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MTA_BITMAP },
8221
  { NULL, 0, 0, NULL }
8222
};
8223
8224
static unsigned
8225
23
dissect_rrlp_RACH_Control_Parameters(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8226
23
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8227
23
                                   ett_rrlp_RACH_Control_Parameters, RACH_Control_Parameters_sequence);
8228
8229
23
  return offset;
8230
23
}
8231
8232
8233
static const value_string rrlp_T_peo_cell_information_vals[] = {
8234
  {   0, "rach-Control-Parameters" },
8235
  {   1, "default-rach-Control-Parameters" },
8236
  { 0, NULL }
8237
};
8238
8239
static const per_choice_t T_peo_cell_information_choice[] = {
8240
  {   0, &hf_rrlp_rach_Control_Parameters, ASN1_NO_EXTENSIONS     , dissect_rrlp_RACH_Control_Parameters },
8241
  {   1, &hf_rrlp_default_rach_Control_Parameters, ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
8242
  { 0, NULL, 0, NULL }
8243
};
8244
8245
static unsigned
8246
128
dissect_rrlp_T_peo_cell_information(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8247
128
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8248
128
                                 ett_rrlp_T_peo_cell_information, T_peo_cell_information_choice,
8249
128
                                 NULL);
8250
8251
128
  return offset;
8252
128
}
8253
8254
8255
static const per_sequence_t Cell_Set_Member_sequence[] = {
8256
  { &hf_rrlp_arfcn          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_1023 },
8257
  { &hf_rrlp_bsic_Info      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BSIC_Info },
8258
  { &hf_rrlp_short_ID       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_INTEGER_0_255 },
8259
  { &hf_rrlp_ec_cell_information, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_T_ec_cell_information },
8260
  { &hf_rrlp_peo_cell_information, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_T_peo_cell_information },
8261
  { NULL, 0, 0, NULL }
8262
};
8263
8264
static unsigned
8265
150
dissect_rrlp_Cell_Set_Member(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8266
150
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8267
150
                                   ett_rrlp_Cell_Set_Member, Cell_Set_Member_sequence);
8268
8269
150
  return offset;
8270
150
}
8271
8272
8273
static const per_sequence_t Cell_Set_sequence[] = {
8274
  { &hf_rrlp_cell_Set_Member1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_Cell_Set_Member },
8275
  { &hf_rrlp_cell_set_Member2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set_Member },
8276
  { &hf_rrlp_cell_set_Member3, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set_Member },
8277
  { &hf_rrlp_cell_set_Member4, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set_Member },
8278
  { &hf_rrlp_cell_set_Member5, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set_Member },
8279
  { &hf_rrlp_cell_set_Member6, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set_Member },
8280
  { NULL, 0, 0, NULL }
8281
};
8282
8283
static unsigned
8284
48
dissect_rrlp_Cell_Set(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8285
48
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8286
48
                                   ett_rrlp_Cell_Set, Cell_Set_sequence);
8287
8288
48
  return offset;
8289
48
}
8290
8291
8292
static const value_string rrlp_MTA_Security_vals[] = {
8293
  {   0, "mta-access-security-method" },
8294
  {   1, "bss-duplication-detection-method" },
8295
  {   2, "spare" },
8296
  { 0, NULL }
8297
};
8298
8299
static const per_choice_t MTA_Security_choice[] = {
8300
  {   0, &hf_rrlp_mta_access_security_method, ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
8301
  {   1, &hf_rrlp_bss_duplication_detection_method, ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
8302
  {   2, &hf_rrlp_spare          , ASN1_NO_EXTENSIONS     , dissect_rrlp_NULL },
8303
  { 0, NULL, 0, NULL }
8304
};
8305
8306
static unsigned
8307
1
dissect_rrlp_MTA_Security(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8308
1
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8309
1
                                 ett_rrlp_MTA_Security, MTA_Security_choice,
8310
1
                                 NULL);
8311
8312
1
  return offset;
8313
1
}
8314
8315
8316
static const per_sequence_t PosMTA_Req_sequence[] = {
8317
  { &hf_rrlp_target_Number_of_Cells, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
8318
  { &hf_rrlp_requested_MS_Synchronization_Accuracy, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_15 },
8319
  { &hf_rrlp_mta_Method     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_MTA_Method },
8320
  { &hf_rrlp_random_ID_Set  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_Random_ID_Set },
8321
  { &hf_rrlp_mpm_Timer      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
8322
  { &hf_rrlp_serving_cell   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_BOOLEAN },
8323
  { &hf_rrlp_co_sited_cells , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Co_Sited_Cells },
8324
  { &hf_rrlp_cell_Set1      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_Cell_Set },
8325
  { &hf_rrlp_cell_Set2      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set },
8326
  { &hf_rrlp_cell_Set3      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set },
8327
  { &hf_rrlp_cell_Set4      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set },
8328
  { &hf_rrlp_cell_Set5      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set },
8329
  { &hf_rrlp_cell_Set6      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set },
8330
  { &hf_rrlp_cell_Set7      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set },
8331
  { &hf_rrlp_cell_Set8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_Cell_Set },
8332
  { &hf_rrlp_mta_security   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_rrlp_MTA_Security },
8333
  { NULL, 0, 0, NULL }
8334
};
8335
8336
static unsigned
8337
30
dissect_rrlp_PosMTA_Req(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8338
30
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8339
30
                                   ett_rrlp_PosMTA_Req, PosMTA_Req_sequence);
8340
8341
30
  return offset;
8342
30
}
8343
8344
8345
static const value_string rrlp_RRLP_Component_vals[] = {
8346
  {   0, "msrPositionReq" },
8347
  {   1, "msrPositionRsp" },
8348
  {   2, "assistanceData" },
8349
  {   3, "assistanceDataAck" },
8350
  {   4, "protocolError" },
8351
  {   5, "posCapabilityReq" },
8352
  {   6, "posCapabilityRsp" },
8353
  {   7, "multilaterationOTDReq" },
8354
  {   8, "multilaterationOTDRsp" },
8355
  {   9, "posMTAReq" },
8356
  { 0, NULL }
8357
};
8358
8359
static const per_choice_t RRLP_Component_choice[] = {
8360
  {   0, &hf_rrlp_msrPositionReq , ASN1_EXTENSION_ROOT    , dissect_rrlp_MsrPosition_Req },
8361
  {   1, &hf_rrlp_msrPositionRsp , ASN1_EXTENSION_ROOT    , dissect_rrlp_MsrPosition_Rsp },
8362
  {   2, &hf_rrlp_assistanceData , ASN1_EXTENSION_ROOT    , dissect_rrlp_AssistanceData },
8363
  {   3, &hf_rrlp_assistanceDataAck, ASN1_EXTENSION_ROOT    , dissect_rrlp_NULL },
8364
  {   4, &hf_rrlp_protocolError  , ASN1_EXTENSION_ROOT    , dissect_rrlp_ProtocolError },
8365
  {   5, &hf_rrlp_posCapabilityReq, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_PosCapability_Req },
8366
  {   6, &hf_rrlp_posCapabilityRsp, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_PosCapability_Rsp },
8367
  {   7, &hf_rrlp_multilaterationOTDReq, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_MultilaterationOTD_Req },
8368
  {   8, &hf_rrlp_multilaterationOTDRsp, ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_MultilaterationOTD_Rsp },
8369
  {   9, &hf_rrlp_posMTAReq      , ASN1_NOT_EXTENSION_ROOT, dissect_rrlp_PosMTA_Req },
8370
  { 0, NULL, 0, NULL }
8371
};
8372
8373
static unsigned
8374
760
dissect_rrlp_RRLP_Component(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8375
760
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8376
760
                                 ett_rrlp_RRLP_Component, RRLP_Component_choice,
8377
760
                                 NULL);
8378
8379
760
  return offset;
8380
760
}
8381
8382
8383
static const per_sequence_t PDU_sequence[] = {
8384
  { &hf_rrlp_referenceNumber, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_INTEGER_0_7 },
8385
  { &hf_rrlp_component      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_rrlp_RRLP_Component },
8386
  { NULL, 0, 0, NULL }
8387
};
8388
8389
static unsigned
8390
760
dissect_rrlp_PDU(tvbuff_t *tvb _U_, uint32_t offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8391
8392
760
  proto_tree_add_item(tree, proto_rrlp, tvb, 0, -1, ENC_NA);
8393
8394
760
  col_append_sep_str(actx->pinfo->cinfo, COL_PROTOCOL, "/", "RRLP");
8395
760
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8396
760
                                   ett_rrlp_PDU, PDU_sequence);
8397
8398
760
  return offset;
8399
760
}
8400
8401
/*--- PDUs ---*/
8402
8403
760
static int dissect_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8404
760
  unsigned offset = 0;
8405
760
  asn1_ctx_t asn1_ctx;
8406
760
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, false, pinfo);
8407
760
  offset = dissect_rrlp_PDU(tvb, offset, &asn1_ctx, tree, hf_rrlp_PDU_PDU);
8408
760
  offset += 7; offset >>= 3;
8409
760
  return offset;
8410
760
}
8411
8412
8413
8414
/*--- proto_register_rrlp -------------------------------------------*/
8415
16
void proto_register_rrlp(void) {
8416
8417
  /* List of fields */
8418
16
  static hf_register_info hf[] = {
8419
8420
16
    { &hf_rrlp_PDU_PDU,
8421
16
      { "PDU", "rrlp.PDU_element",
8422
16
        FT_NONE, BASE_NONE, NULL, 0,
8423
16
        NULL, HFILL }},
8424
16
    { &hf_rrlp_privateExtensionList,
8425
16
      { "privateExtensionList", "rrlp.privateExtensionList",
8426
16
        FT_UINT32, BASE_DEC, NULL, 0,
8427
16
        NULL, HFILL }},
8428
16
    { &hf_rrlp_pcs_Extensions,
8429
16
      { "pcs-Extensions", "rrlp.pcs_Extensions_element",
8430
16
        FT_NONE, BASE_NONE, NULL, 0,
8431
16
        NULL, HFILL }},
8432
16
    { &hf_rrlp_PrivateExtensionList_item,
8433
16
      { "PrivateExtension", "rrlp.PrivateExtension_element",
8434
16
        FT_NONE, BASE_NONE, NULL, 0,
8435
16
        NULL, HFILL }},
8436
16
    { &hf_rrlp_extId,
8437
16
      { "extId", "rrlp.extId",
8438
16
        FT_OID, BASE_NONE, NULL, 0,
8439
16
        "OBJECT_IDENTIFIER", HFILL }},
8440
16
    { &hf_rrlp_extType,
8441
16
      { "extType", "rrlp.extType_element",
8442
16
        FT_NONE, BASE_NONE, NULL, 0,
8443
16
        NULL, HFILL }},
8444
16
    { &hf_rrlp_referenceNumber,
8445
16
      { "referenceNumber", "rrlp.referenceNumber",
8446
16
        FT_UINT32, BASE_DEC, NULL, 0,
8447
16
        "INTEGER_0_7", HFILL }},
8448
16
    { &hf_rrlp_component,
8449
16
      { "component", "rrlp.component",
8450
16
        FT_UINT32, BASE_DEC, VALS(rrlp_RRLP_Component_vals), 0,
8451
16
        "RRLP_Component", HFILL }},
8452
16
    { &hf_rrlp_msrPositionReq,
8453
16
      { "msrPositionReq", "rrlp.msrPositionReq_element",
8454
16
        FT_NONE, BASE_NONE, NULL, 0,
8455
16
        "MsrPosition_Req", HFILL }},
8456
16
    { &hf_rrlp_msrPositionRsp,
8457
16
      { "msrPositionRsp", "rrlp.msrPositionRsp_element",
8458
16
        FT_NONE, BASE_NONE, NULL, 0,
8459
16
        "MsrPosition_Rsp", HFILL }},
8460
16
    { &hf_rrlp_assistanceData,
8461
16
      { "assistanceData", "rrlp.assistanceData_element",
8462
16
        FT_NONE, BASE_NONE, NULL, 0,
8463
16
        NULL, HFILL }},
8464
16
    { &hf_rrlp_assistanceDataAck,
8465
16
      { "assistanceDataAck", "rrlp.assistanceDataAck_element",
8466
16
        FT_NONE, BASE_NONE, NULL, 0,
8467
16
        NULL, HFILL }},
8468
16
    { &hf_rrlp_protocolError,
8469
16
      { "protocolError", "rrlp.protocolError_element",
8470
16
        FT_NONE, BASE_NONE, NULL, 0,
8471
16
        NULL, HFILL }},
8472
16
    { &hf_rrlp_posCapabilityReq,
8473
16
      { "posCapabilityReq", "rrlp.posCapabilityReq_element",
8474
16
        FT_NONE, BASE_NONE, NULL, 0,
8475
16
        "PosCapability_Req", HFILL }},
8476
16
    { &hf_rrlp_posCapabilityRsp,
8477
16
      { "posCapabilityRsp", "rrlp.posCapabilityRsp_element",
8478
16
        FT_NONE, BASE_NONE, NULL, 0,
8479
16
        "PosCapability_Rsp", HFILL }},
8480
16
    { &hf_rrlp_multilaterationOTDReq,
8481
16
      { "multilaterationOTDReq", "rrlp.multilaterationOTDReq_element",
8482
16
        FT_NONE, BASE_NONE, NULL, 0,
8483
16
        "MultilaterationOTD_Req", HFILL }},
8484
16
    { &hf_rrlp_multilaterationOTDRsp,
8485
16
      { "multilaterationOTDRsp", "rrlp.multilaterationOTDRsp_element",
8486
16
        FT_NONE, BASE_NONE, NULL, 0,
8487
16
        "MultilaterationOTD_Rsp", HFILL }},
8488
16
    { &hf_rrlp_posMTAReq,
8489
16
      { "posMTAReq", "rrlp.posMTAReq_element",
8490
16
        FT_NONE, BASE_NONE, NULL, 0,
8491
16
        "PosMTA_Req", HFILL }},
8492
16
    { &hf_rrlp_positionInstruct,
8493
16
      { "positionInstruct", "rrlp.positionInstruct_element",
8494
16
        FT_NONE, BASE_NONE, NULL, 0,
8495
16
        NULL, HFILL }},
8496
16
    { &hf_rrlp_referenceAssistData,
8497
16
      { "referenceAssistData", "rrlp.referenceAssistData_element",
8498
16
        FT_NONE, BASE_NONE, NULL, 0,
8499
16
        NULL, HFILL }},
8500
16
    { &hf_rrlp_msrAssistData,
8501
16
      { "msrAssistData", "rrlp.msrAssistData_element",
8502
16
        FT_NONE, BASE_NONE, NULL, 0,
8503
16
        NULL, HFILL }},
8504
16
    { &hf_rrlp_systemInfoAssistData,
8505
16
      { "systemInfoAssistData", "rrlp.systemInfoAssistData_element",
8506
16
        FT_NONE, BASE_NONE, NULL, 0,
8507
16
        NULL, HFILL }},
8508
16
    { &hf_rrlp_gps_AssistData,
8509
16
      { "gps-AssistData", "rrlp.gps_AssistData_element",
8510
16
        FT_NONE, BASE_NONE, NULL, 0,
8511
16
        NULL, HFILL }},
8512
16
    { &hf_rrlp_extensionContainer,
8513
16
      { "extensionContainer", "rrlp.extensionContainer_element",
8514
16
        FT_NONE, BASE_NONE, NULL, 0,
8515
16
        NULL, HFILL }},
8516
16
    { &hf_rrlp_rel98_MsrPosition_Req_extension,
8517
16
      { "rel98-MsrPosition-Req-extension", "rrlp.rel98_MsrPosition_Req_extension_element",
8518
16
        FT_NONE, BASE_NONE, NULL, 0,
8519
16
        NULL, HFILL }},
8520
16
    { &hf_rrlp_rel5_MsrPosition_Req_extension,
8521
16
      { "rel5-MsrPosition-Req-extension", "rrlp.rel5_MsrPosition_Req_extension_element",
8522
16
        FT_NONE, BASE_NONE, NULL, 0,
8523
16
        NULL, HFILL }},
8524
16
    { &hf_rrlp_rel7_MsrPosition_Req_extension,
8525
16
      { "rel7-MsrPosition-Req-extension", "rrlp.rel7_MsrPosition_Req_extension_element",
8526
16
        FT_NONE, BASE_NONE, NULL, 0,
8527
16
        NULL, HFILL }},
8528
16
    { &hf_rrlp_multipleSets,
8529
16
      { "multipleSets", "rrlp.multipleSets_element",
8530
16
        FT_NONE, BASE_NONE, NULL, 0,
8531
16
        NULL, HFILL }},
8532
16
    { &hf_rrlp_referenceIdentity,
8533
16
      { "referenceIdentity", "rrlp.referenceIdentity_element",
8534
16
        FT_NONE, BASE_NONE, NULL, 0,
8535
16
        NULL, HFILL }},
8536
16
    { &hf_rrlp_otd_MeasureInfo,
8537
16
      { "otd-MeasureInfo", "rrlp.otd_MeasureInfo_element",
8538
16
        FT_NONE, BASE_NONE, NULL, 0,
8539
16
        NULL, HFILL }},
8540
16
    { &hf_rrlp_locationInfo,
8541
16
      { "locationInfo", "rrlp.locationInfo_element",
8542
16
        FT_NONE, BASE_NONE, NULL, 0,
8543
16
        NULL, HFILL }},
8544
16
    { &hf_rrlp_gps_MeasureInfo,
8545
16
      { "gps-MeasureInfo", "rrlp.gps_MeasureInfo_element",
8546
16
        FT_NONE, BASE_NONE, NULL, 0,
8547
16
        NULL, HFILL }},
8548
16
    { &hf_rrlp_locationError,
8549
16
      { "locationError", "rrlp.locationError_element",
8550
16
        FT_NONE, BASE_NONE, NULL, 0,
8551
16
        NULL, HFILL }},
8552
16
    { &hf_rrlp_rel_98_MsrPosition_Rsp_Extension,
8553
16
      { "rel-98-MsrPosition-Rsp-Extension", "rrlp.rel_98_MsrPosition_Rsp_Extension_element",
8554
16
        FT_NONE, BASE_NONE, NULL, 0,
8555
16
        NULL, HFILL }},
8556
16
    { &hf_rrlp_rel_5_MsrPosition_Rsp_Extension,
8557
16
      { "rel-5-MsrPosition-Rsp-Extension", "rrlp.rel_5_MsrPosition_Rsp_Extension_element",
8558
16
        FT_NONE, BASE_NONE, NULL, 0,
8559
16
        NULL, HFILL }},
8560
16
    { &hf_rrlp_rel_7_MsrPosition_Rsp_Extension,
8561
16
      { "rel-7-MsrPosition-Rsp-Extension", "rrlp.rel_7_MsrPosition_Rsp_Extension_element",
8562
16
        FT_NONE, BASE_NONE, NULL, 0,
8563
16
        NULL, HFILL }},
8564
16
    { &hf_rrlp_moreAssDataToBeSent,
8565
16
      { "moreAssDataToBeSent", "rrlp.moreAssDataToBeSent",
8566
16
        FT_UINT32, BASE_DEC, VALS(rrlp_MoreAssDataToBeSent_vals), 0,
8567
16
        NULL, HFILL }},
8568
16
    { &hf_rrlp_rel98_AssistanceData_Extension,
8569
16
      { "rel98-AssistanceData-Extension", "rrlp.rel98_AssistanceData_Extension_element",
8570
16
        FT_NONE, BASE_NONE, NULL, 0,
8571
16
        NULL, HFILL }},
8572
16
    { &hf_rrlp_rel5_AssistanceData_Extension,
8573
16
      { "rel5-AssistanceData-Extension", "rrlp.rel5_AssistanceData_Extension_element",
8574
16
        FT_NONE, BASE_NONE, NULL, 0,
8575
16
        NULL, HFILL }},
8576
16
    { &hf_rrlp_rel7_AssistanceData_Extension,
8577
16
      { "rel7-AssistanceData-Extension", "rrlp.rel7_AssistanceData_Extension_element",
8578
16
        FT_NONE, BASE_NONE, NULL, 0,
8579
16
        NULL, HFILL }},
8580
16
    { &hf_rrlp_errorCause,
8581
16
      { "errorCause", "rrlp.errorCause",
8582
16
        FT_UINT32, BASE_DEC, VALS(rrlp_ErrorCodes_vals), 0,
8583
16
        "ErrorCodes", HFILL }},
8584
16
    { &hf_rrlp_rel_5_ProtocolError_Extension,
8585
16
      { "rel-5-ProtocolError-Extension", "rrlp.rel_5_ProtocolError_Extension_element",
8586
16
        FT_NONE, BASE_NONE, NULL, 0,
8587
16
        NULL, HFILL }},
8588
16
    { &hf_rrlp_extended_reference,
8589
16
      { "extended-reference", "rrlp.extended_reference_element",
8590
16
        FT_NONE, BASE_NONE, NULL, 0,
8591
16
        NULL, HFILL }},
8592
16
    { &hf_rrlp_gANSSPositionMethods,
8593
16
      { "gANSSPositionMethods", "rrlp.gANSSPositionMethods",
8594
16
        FT_UINT32, BASE_DEC, NULL, 0,
8595
16
        NULL, HFILL }},
8596
16
    { &hf_rrlp_posCapabilities,
8597
16
      { "posCapabilities", "rrlp.posCapabilities_element",
8598
16
        FT_NONE, BASE_NONE, NULL, 0,
8599
16
        NULL, HFILL }},
8600
16
    { &hf_rrlp_assistanceSupported,
8601
16
      { "assistanceSupported", "rrlp.assistanceSupported_element",
8602
16
        FT_NONE, BASE_NONE, NULL, 0,
8603
16
        NULL, HFILL }},
8604
16
    { &hf_rrlp_assistanceNeeded,
8605
16
      { "assistanceNeeded", "rrlp.assistanceNeeded_element",
8606
16
        FT_NONE, BASE_NONE, NULL, 0,
8607
16
        NULL, HFILL }},
8608
16
    { &hf_rrlp_target_Number_of_Cells,
8609
16
      { "target-Number-of-Cells", "rrlp.target_Number_of_Cells",
8610
16
        FT_UINT32, BASE_DEC, NULL, 0,
8611
16
        "INTEGER_0_7", HFILL }},
8612
16
    { &hf_rrlp_requested_MS_Synchronization_Accuracy,
8613
16
      { "requested-MS-Synchronization-Accuracy", "rrlp.requested_MS_Synchronization_Accuracy",
8614
16
        FT_UINT32, BASE_DEC, NULL, 0,
8615
16
        "INTEGER_0_15", HFILL }},
8616
16
    { &hf_rrlp_mta_Method,
8617
16
      { "mta-Method", "rrlp.mta_Method",
8618
16
        FT_UINT32, BASE_DEC, VALS(rrlp_MTA_Method_vals), 0,
8619
16
        NULL, HFILL }},
8620
16
    { &hf_rrlp_random_ID_Set,
8621
16
      { "random-ID-Set", "rrlp.random_ID_Set_element",
8622
16
        FT_NONE, BASE_NONE, NULL, 0,
8623
16
        NULL, HFILL }},
8624
16
    { &hf_rrlp_mpm_Timer,
8625
16
      { "mpm-Timer", "rrlp.mpm_Timer",
8626
16
        FT_UINT32, BASE_DEC, NULL, 0,
8627
16
        "INTEGER_0_7", HFILL }},
8628
16
    { &hf_rrlp_serving_cell,
8629
16
      { "serving-cell", "rrlp.serving_cell",
8630
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
8631
16
        "BOOLEAN", HFILL }},
8632
16
    { &hf_rrlp_co_sited_cells,
8633
16
      { "co-sited-cells", "rrlp.co_sited_cells_element",
8634
16
        FT_NONE, BASE_NONE, NULL, 0,
8635
16
        NULL, HFILL }},
8636
16
    { &hf_rrlp_cell_Set1,
8637
16
      { "cell-Set1", "rrlp.cell_Set1_element",
8638
16
        FT_NONE, BASE_NONE, NULL, 0,
8639
16
        "Cell_Set", HFILL }},
8640
16
    { &hf_rrlp_cell_Set2,
8641
16
      { "cell-Set2", "rrlp.cell_Set2_element",
8642
16
        FT_NONE, BASE_NONE, NULL, 0,
8643
16
        "Cell_Set", HFILL }},
8644
16
    { &hf_rrlp_cell_Set3,
8645
16
      { "cell-Set3", "rrlp.cell_Set3_element",
8646
16
        FT_NONE, BASE_NONE, NULL, 0,
8647
16
        "Cell_Set", HFILL }},
8648
16
    { &hf_rrlp_cell_Set4,
8649
16
      { "cell-Set4", "rrlp.cell_Set4_element",
8650
16
        FT_NONE, BASE_NONE, NULL, 0,
8651
16
        "Cell_Set", HFILL }},
8652
16
    { &hf_rrlp_cell_Set5,
8653
16
      { "cell-Set5", "rrlp.cell_Set5_element",
8654
16
        FT_NONE, BASE_NONE, NULL, 0,
8655
16
        "Cell_Set", HFILL }},
8656
16
    { &hf_rrlp_cell_Set6,
8657
16
      { "cell-Set6", "rrlp.cell_Set6_element",
8658
16
        FT_NONE, BASE_NONE, NULL, 0,
8659
16
        "Cell_Set", HFILL }},
8660
16
    { &hf_rrlp_cell_Set7,
8661
16
      { "cell-Set7", "rrlp.cell_Set7_element",
8662
16
        FT_NONE, BASE_NONE, NULL, 0,
8663
16
        "Cell_Set", HFILL }},
8664
16
    { &hf_rrlp_cell_Set8,
8665
16
      { "cell-Set8", "rrlp.cell_Set8_element",
8666
16
        FT_NONE, BASE_NONE, NULL, 0,
8667
16
        "Cell_Set", HFILL }},
8668
16
    { &hf_rrlp_mta_security,
8669
16
      { "mta-security", "rrlp.mta_security",
8670
16
        FT_UINT32, BASE_DEC, VALS(rrlp_MTA_Security_vals), 0,
8671
16
        NULL, HFILL }},
8672
16
    { &hf_rrlp_targetNumOTDMeasurements,
8673
16
      { "targetNumOTDMeasurements", "rrlp.targetNumOTDMeasurements",
8674
16
        FT_INT32, BASE_DEC, NULL, 0,
8675
16
        "INTEGER", HFILL }},
8676
16
    { &hf_rrlp_requiredDLSyncAccuracy,
8677
16
      { "requiredDLSyncAccuracy", "rrlp.requiredDLSyncAccuracy",
8678
16
        FT_INT32, BASE_DEC, NULL, 0,
8679
16
        "INTEGER", HFILL }},
8680
16
    { &hf_rrlp_neighbourCellSets,
8681
16
      { "neighbourCellSets", "rrlp.neighbourCellSets_element",
8682
16
        FT_NONE, BASE_NONE, NULL, 0,
8683
16
        "CellSets", HFILL }},
8684
16
    { &hf_rrlp_servingCellSet,
8685
16
      { "servingCellSet", "rrlp.servingCellSet_element",
8686
16
        FT_NONE, BASE_NONE, NULL, 0,
8687
16
        "CellSet", HFILL }},
8688
16
    { &hf_rrlp_servingCellDLAccuracy,
8689
16
      { "servingCellDLAccuracy", "rrlp.servingCellDLAccuracy",
8690
16
        FT_UINT32, BASE_DEC, NULL, 0,
8691
16
        "INTEGER_1_16", HFILL }},
8692
16
    { &hf_rrlp_oTDMeasurementResults,
8693
16
      { "oTDMeasurementResults", "rrlp.oTDMeasurementResults_element",
8694
16
        FT_NONE, BASE_NONE, NULL, 0,
8695
16
        NULL, HFILL }},
8696
16
    { &hf_rrlp_rXLEVMeasurementResults,
8697
16
      { "rXLEVMeasurementResults", "rrlp.rXLEVMeasurementResults_element",
8698
16
        FT_NONE, BASE_NONE, NULL, 0,
8699
16
        NULL, HFILL }},
8700
16
    { &hf_rrlp_methodType,
8701
16
      { "methodType", "rrlp.methodType",
8702
16
        FT_UINT32, BASE_DEC, VALS(rrlp_MethodType_vals), 0,
8703
16
        NULL, HFILL }},
8704
16
    { &hf_rrlp_positionMethod,
8705
16
      { "positionMethod", "rrlp.positionMethod",
8706
16
        FT_UINT32, BASE_DEC, VALS(rrlp_PositionMethod_vals), 0,
8707
16
        NULL, HFILL }},
8708
16
    { &hf_rrlp_measureResponseTime,
8709
16
      { "measureResponseTime", "rrlp.measureResponseTime",
8710
16
        FT_UINT32, BASE_DEC, NULL, 0,
8711
16
        NULL, HFILL }},
8712
16
    { &hf_rrlp_useMultipleSets,
8713
16
      { "useMultipleSets", "rrlp.useMultipleSets",
8714
16
        FT_UINT32, BASE_DEC, VALS(rrlp_UseMultipleSets_vals), 0,
8715
16
        NULL, HFILL }},
8716
16
    { &hf_rrlp_environmentCharacter,
8717
16
      { "environmentCharacter", "rrlp.environmentCharacter",
8718
16
        FT_UINT32, BASE_DEC, VALS(rrlp_EnvironmentCharacter_vals), 0,
8719
16
        NULL, HFILL }},
8720
16
    { &hf_rrlp_msAssisted,
8721
16
      { "msAssisted", "rrlp.msAssisted_element",
8722
16
        FT_NONE, BASE_NONE, NULL, 0,
8723
16
        "AccuracyOpt", HFILL }},
8724
16
    { &hf_rrlp_msBased,
8725
16
      { "msBased", "rrlp.msBased",
8726
16
        FT_UINT32, BASE_DEC, NULL, 0,
8727
16
        "Accuracy", HFILL }},
8728
16
    { &hf_rrlp_msBasedPref,
8729
16
      { "msBasedPref", "rrlp.msBasedPref",
8730
16
        FT_UINT32, BASE_DEC, NULL, 0,
8731
16
        "Accuracy", HFILL }},
8732
16
    { &hf_rrlp_msAssistedPref,
8733
16
      { "msAssistedPref", "rrlp.msAssistedPref",
8734
16
        FT_UINT32, BASE_DEC, NULL, 0,
8735
16
        "Accuracy", HFILL }},
8736
16
    { &hf_rrlp_accuracy,
8737
16
      { "accuracy", "rrlp.accuracy",
8738
16
        FT_UINT32, BASE_DEC, NULL, 0,
8739
16
        NULL, HFILL }},
8740
16
    { &hf_rrlp_bcchCarrier,
8741
16
      { "bcchCarrier", "rrlp.bcchCarrier",
8742
16
        FT_UINT32, BASE_DEC, NULL, 0,
8743
16
        NULL, HFILL }},
8744
16
    { &hf_rrlp_bsic,
8745
16
      { "bsic", "rrlp.bsic",
8746
16
        FT_UINT32, BASE_DEC, NULL, 0,
8747
16
        NULL, HFILL }},
8748
16
    { &hf_rrlp_timeSlotScheme,
8749
16
      { "timeSlotScheme", "rrlp.timeSlotScheme",
8750
16
        FT_UINT32, BASE_DEC, VALS(rrlp_TimeSlotScheme_vals), 0,
8751
16
        NULL, HFILL }},
8752
16
    { &hf_rrlp_btsPosition,
8753
16
      { "btsPosition", "rrlp.btsPosition",
8754
16
        FT_BYTES, BASE_NONE, NULL, 0,
8755
16
        NULL, HFILL }},
8756
16
    { &hf_rrlp_msrAssistList,
8757
16
      { "msrAssistList", "rrlp.msrAssistList",
8758
16
        FT_UINT32, BASE_DEC, NULL, 0,
8759
16
        "SeqOfMsrAssistBTS", HFILL }},
8760
16
    { &hf_rrlp_SeqOfMsrAssistBTS_item,
8761
16
      { "MsrAssistBTS", "rrlp.MsrAssistBTS_element",
8762
16
        FT_NONE, BASE_NONE, NULL, 0,
8763
16
        NULL, HFILL }},
8764
16
    { &hf_rrlp_multiFrameOffset,
8765
16
      { "multiFrameOffset", "rrlp.multiFrameOffset",
8766
16
        FT_UINT32, BASE_DEC, NULL, 0,
8767
16
        NULL, HFILL }},
8768
16
    { &hf_rrlp_roughRTD,
8769
16
      { "roughRTD", "rrlp.roughRTD",
8770
16
        FT_UINT32, BASE_DEC, NULL, 0,
8771
16
        NULL, HFILL }},
8772
16
    { &hf_rrlp_calcAssistanceBTS,
8773
16
      { "calcAssistanceBTS", "rrlp.calcAssistanceBTS_element",
8774
16
        FT_NONE, BASE_NONE, NULL, 0,
8775
16
        NULL, HFILL }},
8776
16
    { &hf_rrlp_systemInfoAssistList,
8777
16
      { "systemInfoAssistList", "rrlp.systemInfoAssistList",
8778
16
        FT_UINT32, BASE_DEC, NULL, 0,
8779
16
        "SeqOfSystemInfoAssistBTS", HFILL }},
8780
16
    { &hf_rrlp_SeqOfSystemInfoAssistBTS_item,
8781
16
      { "SystemInfoAssistBTS", "rrlp.SystemInfoAssistBTS",
8782
16
        FT_UINT32, BASE_DEC, VALS(rrlp_SystemInfoAssistBTS_vals), 0,
8783
16
        NULL, HFILL }},
8784
16
    { &hf_rrlp_notPresent,
8785
16
      { "notPresent", "rrlp.notPresent_element",
8786
16
        FT_NONE, BASE_NONE, NULL, 0,
8787
16
        NULL, HFILL }},
8788
16
    { &hf_rrlp_present,
8789
16
      { "present", "rrlp.present_element",
8790
16
        FT_NONE, BASE_NONE, NULL, 0,
8791
16
        "AssistBTSData", HFILL }},
8792
16
    { &hf_rrlp_fineRTD,
8793
16
      { "fineRTD", "rrlp.fineRTD",
8794
16
        FT_UINT32, BASE_DEC, NULL, 0,
8795
16
        NULL, HFILL }},
8796
16
    { &hf_rrlp_referenceWGS84,
8797
16
      { "referenceWGS84", "rrlp.referenceWGS84_element",
8798
16
        FT_NONE, BASE_NONE, NULL, 0,
8799
16
        NULL, HFILL }},
8800
16
    { &hf_rrlp_relativeNorth,
8801
16
      { "relativeNorth", "rrlp.relativeNorth",
8802
16
        FT_INT32, BASE_DEC, NULL, 0,
8803
16
        "RelDistance", HFILL }},
8804
16
    { &hf_rrlp_relativeEast,
8805
16
      { "relativeEast", "rrlp.relativeEast",
8806
16
        FT_INT32, BASE_DEC, NULL, 0,
8807
16
        "RelDistance", HFILL }},
8808
16
    { &hf_rrlp_relativeAlt,
8809
16
      { "relativeAlt", "rrlp.relativeAlt",
8810
16
        FT_INT32, BASE_DEC, NULL, 0,
8811
16
        NULL, HFILL }},
8812
16
    { &hf_rrlp_nbrOfSets,
8813
16
      { "nbrOfSets", "rrlp.nbrOfSets",
8814
16
        FT_UINT32, BASE_DEC, NULL, 0,
8815
16
        "INTEGER_2_3", HFILL }},
8816
16
    { &hf_rrlp_nbrOfReferenceBTSs,
8817
16
      { "nbrOfReferenceBTSs", "rrlp.nbrOfReferenceBTSs",
8818
16
        FT_UINT32, BASE_DEC, NULL, 0,
8819
16
        "INTEGER_1_3", HFILL }},
8820
16
    { &hf_rrlp_referenceRelation,
8821
16
      { "referenceRelation", "rrlp.referenceRelation",
8822
16
        FT_UINT32, BASE_DEC, VALS(rrlp_ReferenceRelation_vals), 0,
8823
16
        NULL, HFILL }},
8824
16
    { &hf_rrlp_refBTSList,
8825
16
      { "refBTSList", "rrlp.refBTSList",
8826
16
        FT_UINT32, BASE_DEC, NULL, 0,
8827
16
        "SeqOfReferenceIdentityType", HFILL }},
8828
16
    { &hf_rrlp_SeqOfReferenceIdentityType_item,
8829
16
      { "ReferenceIdentityType", "rrlp.ReferenceIdentityType",
8830
16
        FT_UINT32, BASE_DEC, VALS(rrlp_ReferenceIdentityType_vals), 0,
8831
16
        NULL, HFILL }},
8832
16
    { &hf_rrlp_bsicAndCarrier,
8833
16
      { "bsicAndCarrier", "rrlp.bsicAndCarrier_element",
8834
16
        FT_NONE, BASE_NONE, NULL, 0,
8835
16
        NULL, HFILL }},
8836
16
    { &hf_rrlp_ci,
8837
16
      { "ci", "rrlp.ci",
8838
16
        FT_UINT32, BASE_DEC, NULL, 0,
8839
16
        "CellID", HFILL }},
8840
16
    { &hf_rrlp_requestIndex,
8841
16
      { "requestIndex", "rrlp.requestIndex",
8842
16
        FT_UINT32, BASE_DEC, NULL, 0,
8843
16
        NULL, HFILL }},
8844
16
    { &hf_rrlp_systemInfoIndex,
8845
16
      { "systemInfoIndex", "rrlp.systemInfoIndex",
8846
16
        FT_UINT32, BASE_DEC, NULL, 0,
8847
16
        NULL, HFILL }},
8848
16
    { &hf_rrlp_ciAndLAC,
8849
16
      { "ciAndLAC", "rrlp.ciAndLAC_element",
8850
16
        FT_NONE, BASE_NONE, NULL, 0,
8851
16
        "CellIDAndLAC", HFILL }},
8852
16
    { &hf_rrlp_carrier,
8853
16
      { "carrier", "rrlp.carrier",
8854
16
        FT_UINT32, BASE_DEC, NULL, 0,
8855
16
        "BCCHCarrier", HFILL }},
8856
16
    { &hf_rrlp_referenceLAC,
8857
16
      { "referenceLAC", "rrlp.referenceLAC",
8858
16
        FT_UINT32, BASE_DEC, NULL, 0,
8859
16
        "LAC", HFILL }},
8860
16
    { &hf_rrlp_referenceCI,
8861
16
      { "referenceCI", "rrlp.referenceCI",
8862
16
        FT_UINT32, BASE_DEC, NULL, 0,
8863
16
        "CellID", HFILL }},
8864
16
    { &hf_rrlp_otdMsrFirstSets,
8865
16
      { "otdMsrFirstSets", "rrlp.otdMsrFirstSets_element",
8866
16
        FT_NONE, BASE_NONE, NULL, 0,
8867
16
        "OTD_MsrElementFirst", HFILL }},
8868
16
    { &hf_rrlp_otdMsrRestSets,
8869
16
      { "otdMsrRestSets", "rrlp.otdMsrRestSets",
8870
16
        FT_UINT32, BASE_DEC, NULL, 0,
8871
16
        "SeqOfOTD_MsrElementRest", HFILL }},
8872
16
    { &hf_rrlp_SeqOfOTD_MsrElementRest_item,
8873
16
      { "OTD-MsrElementRest", "rrlp.OTD_MsrElementRest_element",
8874
16
        FT_NONE, BASE_NONE, NULL, 0,
8875
16
        NULL, HFILL }},
8876
16
    { &hf_rrlp_refFrameNumber,
8877
16
      { "refFrameNumber", "rrlp.refFrameNumber",
8878
16
        FT_UINT32, BASE_DEC, NULL, 0,
8879
16
        "INTEGER_0_42431", HFILL }},
8880
16
    { &hf_rrlp_referenceTimeSlot,
8881
16
      { "referenceTimeSlot", "rrlp.referenceTimeSlot",
8882
16
        FT_UINT32, BASE_DEC, NULL, 0,
8883
16
        "ModuloTimeSlot", HFILL }},
8884
16
    { &hf_rrlp_toaMeasurementsOfRef,
8885
16
      { "toaMeasurementsOfRef", "rrlp.toaMeasurementsOfRef_element",
8886
16
        FT_NONE, BASE_NONE, NULL, 0,
8887
16
        "TOA_MeasurementsOfRef", HFILL }},
8888
16
    { &hf_rrlp_stdResolution,
8889
16
      { "stdResolution", "rrlp.stdResolution",
8890
16
        FT_UINT32, BASE_DEC, NULL, 0,
8891
16
        NULL, HFILL }},
8892
16
    { &hf_rrlp_taCorrection,
8893
16
      { "taCorrection", "rrlp.taCorrection",
8894
16
        FT_UINT32, BASE_DEC, NULL, 0,
8895
16
        "INTEGER_0_960", HFILL }},
8896
16
    { &hf_rrlp_otd_FirstSetMsrs,
8897
16
      { "otd-FirstSetMsrs", "rrlp.otd_FirstSetMsrs",
8898
16
        FT_UINT32, BASE_DEC, NULL, 0,
8899
16
        "SeqOfOTD_FirstSetMsrs", HFILL }},
8900
16
    { &hf_rrlp_SeqOfOTD_FirstSetMsrs_item,
8901
16
      { "OTD-FirstSetMsrs", "rrlp.OTD_FirstSetMsrs_element",
8902
16
        FT_NONE, BASE_NONE, NULL, 0,
8903
16
        NULL, HFILL }},
8904
16
    { &hf_rrlp_otd_MsrsOfOtherSets,
8905
16
      { "otd-MsrsOfOtherSets", "rrlp.otd_MsrsOfOtherSets",
8906
16
        FT_UINT32, BASE_DEC, NULL, 0,
8907
16
        "SeqOfOTD_MsrsOfOtherSets", HFILL }},
8908
16
    { &hf_rrlp_SeqOfOTD_MsrsOfOtherSets_item,
8909
16
      { "OTD-MsrsOfOtherSets", "rrlp.OTD_MsrsOfOtherSets",
8910
16
        FT_UINT32, BASE_DEC, VALS(rrlp_OTD_MsrsOfOtherSets_vals), 0,
8911
16
        NULL, HFILL }},
8912
16
    { &hf_rrlp_refQuality,
8913
16
      { "refQuality", "rrlp.refQuality",
8914
16
        FT_UINT32, BASE_DEC, NULL, 0,
8915
16
        NULL, HFILL }},
8916
16
    { &hf_rrlp_numOfMeasurements,
8917
16
      { "numOfMeasurements", "rrlp.numOfMeasurements",
8918
16
        FT_UINT32, BASE_DEC, NULL, 0,
8919
16
        NULL, HFILL }},
8920
16
    { &hf_rrlp_identityNotPresent,
8921
16
      { "identityNotPresent", "rrlp.identityNotPresent_element",
8922
16
        FT_NONE, BASE_NONE, NULL, 0,
8923
16
        "OTD_Measurement", HFILL }},
8924
16
    { &hf_rrlp_identityPresent,
8925
16
      { "identityPresent", "rrlp.identityPresent_element",
8926
16
        FT_NONE, BASE_NONE, NULL, 0,
8927
16
        "OTD_MeasurementWithID", HFILL }},
8928
16
    { &hf_rrlp_nborTimeSlot,
8929
16
      { "nborTimeSlot", "rrlp.nborTimeSlot",
8930
16
        FT_UINT32, BASE_DEC, NULL, 0,
8931
16
        "ModuloTimeSlot", HFILL }},
8932
16
    { &hf_rrlp_eotdQuality,
8933
16
      { "eotdQuality", "rrlp.eotdQuality_element",
8934
16
        FT_NONE, BASE_NONE, NULL, 0,
8935
16
        NULL, HFILL }},
8936
16
    { &hf_rrlp_otdValue,
8937
16
      { "otdValue", "rrlp.otdValue",
8938
16
        FT_UINT32, BASE_DEC, NULL, 0,
8939
16
        NULL, HFILL }},
8940
16
    { &hf_rrlp_neighborIdentity,
8941
16
      { "neighborIdentity", "rrlp.neighborIdentity",
8942
16
        FT_UINT32, BASE_DEC, VALS(rrlp_NeighborIdentity_vals), 0,
8943
16
        NULL, HFILL }},
8944
16
    { &hf_rrlp_nbrOfMeasurements,
8945
16
      { "nbrOfMeasurements", "rrlp.nbrOfMeasurements",
8946
16
        FT_UINT32, BASE_DEC, NULL, 0,
8947
16
        "INTEGER_0_7", HFILL }},
8948
16
    { &hf_rrlp_stdOfEOTD,
8949
16
      { "stdOfEOTD", "rrlp.stdOfEOTD",
8950
16
        FT_UINT32, BASE_DEC, NULL, 0,
8951
16
        "INTEGER_0_31", HFILL }},
8952
16
    { &hf_rrlp_multiFrameCarrier,
8953
16
      { "multiFrameCarrier", "rrlp.multiFrameCarrier_element",
8954
16
        FT_NONE, BASE_NONE, NULL, 0,
8955
16
        NULL, HFILL }},
8956
16
    { &hf_rrlp_refFrame,
8957
16
      { "refFrame", "rrlp.refFrame",
8958
16
        FT_UINT32, BASE_DEC, NULL, 0,
8959
16
        "INTEGER_0_65535", HFILL }},
8960
16
    { &hf_rrlp_gpsTOW,
8961
16
      { "gpsTOW", "rrlp.gpsTOW",
8962
16
        FT_UINT32, BASE_DEC, NULL, 0,
8963
16
        "INTEGER_0_14399999", HFILL }},
8964
16
    { &hf_rrlp_fixType,
8965
16
      { "fixType", "rrlp.fixType",
8966
16
        FT_UINT32, BASE_DEC, VALS(rrlp_FixType_vals), 0,
8967
16
        NULL, HFILL }},
8968
16
    { &hf_rrlp_posEstimate,
8969
16
      { "posEstimate", "rrlp.posEstimate",
8970
16
        FT_BYTES, BASE_NONE, NULL, 0,
8971
16
        "Ext_GeographicalInformation", HFILL }},
8972
16
    { &hf_rrlp_gpsMsrSetList,
8973
16
      { "gpsMsrSetList", "rrlp.gpsMsrSetList",
8974
16
        FT_UINT32, BASE_DEC, NULL, 0,
8975
16
        "SeqOfGPS_MsrSetElement", HFILL }},
8976
16
    { &hf_rrlp_SeqOfGPS_MsrSetElement_item,
8977
16
      { "GPS-MsrSetElement", "rrlp.GPS_MsrSetElement_element",
8978
16
        FT_NONE, BASE_NONE, NULL, 0,
8979
16
        NULL, HFILL }},
8980
16
    { &hf_rrlp_gpsTOW_01,
8981
16
      { "gpsTOW", "rrlp.gpsTOW",
8982
16
        FT_UINT32, BASE_DEC, NULL, 0,
8983
16
        "GPSTOW24b", HFILL }},
8984
16
    { &hf_rrlp_gps_msrList,
8985
16
      { "gps-msrList", "rrlp.gps_msrList",
8986
16
        FT_UINT32, BASE_DEC, NULL, 0,
8987
16
        "SeqOfGPS_MsrElement", HFILL }},
8988
16
    { &hf_rrlp_SeqOfGPS_MsrElement_item,
8989
16
      { "GPS-MsrElement", "rrlp.GPS_MsrElement_element",
8990
16
        FT_NONE, BASE_NONE, NULL, 0,
8991
16
        NULL, HFILL }},
8992
16
    { &hf_rrlp_satelliteID,
8993
16
      { "satelliteID", "rrlp.satelliteID",
8994
16
        FT_UINT32, BASE_DEC, NULL, 0,
8995
16
        NULL, HFILL }},
8996
16
    { &hf_rrlp_cNo,
8997
16
      { "cNo", "rrlp.cNo",
8998
16
        FT_UINT32, BASE_DEC, NULL, 0,
8999
16
        "INTEGER_0_63", HFILL }},
9000
16
    { &hf_rrlp_doppler,
9001
16
      { "doppler", "rrlp.doppler",
9002
16
        FT_INT32, BASE_DEC, NULL, 0,
9003
16
        "INTEGER_M32768_32767", HFILL }},
9004
16
    { &hf_rrlp_wholeChips,
9005
16
      { "wholeChips", "rrlp.wholeChips",
9006
16
        FT_UINT32, BASE_DEC, NULL, 0,
9007
16
        "INTEGER_0_1022", HFILL }},
9008
16
    { &hf_rrlp_fracChips,
9009
16
      { "fracChips", "rrlp.fracChips",
9010
16
        FT_UINT32, BASE_DEC, NULL, 0,
9011
16
        "INTEGER_0_1024", HFILL }},
9012
16
    { &hf_rrlp_mpathIndic,
9013
16
      { "mpathIndic", "rrlp.mpathIndic",
9014
16
        FT_UINT32, BASE_DEC, VALS(rrlp_MpathIndic_vals), 0,
9015
16
        NULL, HFILL }},
9016
16
    { &hf_rrlp_pseuRangeRMSErr,
9017
16
      { "pseuRangeRMSErr", "rrlp.pseuRangeRMSErr",
9018
16
        FT_UINT32, BASE_DEC, NULL, 0,
9019
16
        "INTEGER_0_63", HFILL }},
9020
16
    { &hf_rrlp_locErrorReason,
9021
16
      { "locErrorReason", "rrlp.locErrorReason",
9022
16
        FT_UINT32, BASE_DEC, VALS(rrlp_LocErrorReason_vals), 0,
9023
16
        NULL, HFILL }},
9024
16
    { &hf_rrlp_additionalAssistanceData,
9025
16
      { "additionalAssistanceData", "rrlp.additionalAssistanceData_element",
9026
16
        FT_NONE, BASE_NONE, NULL, 0,
9027
16
        NULL, HFILL }},
9028
16
    { &hf_rrlp_gpsAssistanceData,
9029
16
      { "gpsAssistanceData", "rrlp.gpsAssistanceData",
9030
16
        FT_BYTES, BASE_NONE, NULL, 0,
9031
16
        NULL, HFILL }},
9032
16
    { &hf_rrlp_ganssAssistanceData,
9033
16
      { "ganssAssistanceData", "rrlp.ganssAssistanceData",
9034
16
        FT_BYTES, BASE_NONE, NULL, 0,
9035
16
        NULL, HFILL }},
9036
16
    { &hf_rrlp_controlHeader,
9037
16
      { "controlHeader", "rrlp.controlHeader_element",
9038
16
        FT_NONE, BASE_NONE, NULL, 0,
9039
16
        NULL, HFILL }},
9040
16
    { &hf_rrlp_referenceTime,
9041
16
      { "referenceTime", "rrlp.referenceTime_element",
9042
16
        FT_NONE, BASE_NONE, NULL, 0,
9043
16
        NULL, HFILL }},
9044
16
    { &hf_rrlp_refLocation,
9045
16
      { "refLocation", "rrlp.refLocation_element",
9046
16
        FT_NONE, BASE_NONE, NULL, 0,
9047
16
        NULL, HFILL }},
9048
16
    { &hf_rrlp_dgpsCorrections,
9049
16
      { "dgpsCorrections", "rrlp.dgpsCorrections_element",
9050
16
        FT_NONE, BASE_NONE, NULL, 0,
9051
16
        NULL, HFILL }},
9052
16
    { &hf_rrlp_navigationModel,
9053
16
      { "navigationModel", "rrlp.navigationModel_element",
9054
16
        FT_NONE, BASE_NONE, NULL, 0,
9055
16
        NULL, HFILL }},
9056
16
    { &hf_rrlp_ionosphericModel,
9057
16
      { "ionosphericModel", "rrlp.ionosphericModel_element",
9058
16
        FT_NONE, BASE_NONE, NULL, 0,
9059
16
        NULL, HFILL }},
9060
16
    { &hf_rrlp_utcModel,
9061
16
      { "utcModel", "rrlp.utcModel_element",
9062
16
        FT_NONE, BASE_NONE, NULL, 0,
9063
16
        NULL, HFILL }},
9064
16
    { &hf_rrlp_almanac,
9065
16
      { "almanac", "rrlp.almanac_element",
9066
16
        FT_NONE, BASE_NONE, NULL, 0,
9067
16
        NULL, HFILL }},
9068
16
    { &hf_rrlp_acquisAssist,
9069
16
      { "acquisAssist", "rrlp.acquisAssist_element",
9070
16
        FT_NONE, BASE_NONE, NULL, 0,
9071
16
        NULL, HFILL }},
9072
16
    { &hf_rrlp_realTimeIntegrity,
9073
16
      { "realTimeIntegrity", "rrlp.realTimeIntegrity",
9074
16
        FT_UINT32, BASE_DEC, NULL, 0,
9075
16
        "SeqOf_BadSatelliteSet", HFILL }},
9076
16
    { &hf_rrlp_gpsTime,
9077
16
      { "gpsTime", "rrlp.gpsTime_element",
9078
16
        FT_NONE, BASE_NONE, NULL, 0,
9079
16
        NULL, HFILL }},
9080
16
    { &hf_rrlp_gsmTime,
9081
16
      { "gsmTime", "rrlp.gsmTime_element",
9082
16
        FT_NONE, BASE_NONE, NULL, 0,
9083
16
        NULL, HFILL }},
9084
16
    { &hf_rrlp_gpsTowAssist,
9085
16
      { "gpsTowAssist", "rrlp.gpsTowAssist",
9086
16
        FT_UINT32, BASE_DEC, NULL, 0,
9087
16
        NULL, HFILL }},
9088
16
    { &hf_rrlp_gpsTOW23b,
9089
16
      { "gpsTOW23b", "rrlp.gpsTOW23b",
9090
16
        FT_UINT32, BASE_DEC, NULL, 0,
9091
16
        NULL, HFILL }},
9092
16
    { &hf_rrlp_gpsWeek,
9093
16
      { "gpsWeek", "rrlp.gpsWeek",
9094
16
        FT_UINT32, BASE_DEC, NULL, 0,
9095
16
        NULL, HFILL }},
9096
16
    { &hf_rrlp_GPSTOWAssist_item,
9097
16
      { "GPSTOWAssistElement", "rrlp.GPSTOWAssistElement_element",
9098
16
        FT_NONE, BASE_NONE, NULL, 0,
9099
16
        NULL, HFILL }},
9100
16
    { &hf_rrlp_tlmWord,
9101
16
      { "tlmWord", "rrlp.tlmWord",
9102
16
        FT_UINT32, BASE_DEC, NULL, 0,
9103
16
        NULL, HFILL }},
9104
16
    { &hf_rrlp_antiSpoof,
9105
16
      { "antiSpoof", "rrlp.antiSpoof",
9106
16
        FT_UINT32, BASE_DEC, NULL, 0,
9107
16
        "AntiSpoofFlag", HFILL }},
9108
16
    { &hf_rrlp_alert,
9109
16
      { "alert", "rrlp.alert",
9110
16
        FT_UINT32, BASE_DEC, NULL, 0,
9111
16
        "AlertFlag", HFILL }},
9112
16
    { &hf_rrlp_tlmRsvdBits,
9113
16
      { "tlmRsvdBits", "rrlp.tlmRsvdBits",
9114
16
        FT_UINT32, BASE_DEC, NULL, 0,
9115
16
        "TLMReservedBits", HFILL }},
9116
16
    { &hf_rrlp_frameNumber,
9117
16
      { "frameNumber", "rrlp.frameNumber",
9118
16
        FT_UINT32, BASE_DEC, NULL, 0,
9119
16
        NULL, HFILL }},
9120
16
    { &hf_rrlp_timeSlot,
9121
16
      { "timeSlot", "rrlp.timeSlot",
9122
16
        FT_UINT32, BASE_DEC, NULL, 0,
9123
16
        NULL, HFILL }},
9124
16
    { &hf_rrlp_bitNumber,
9125
16
      { "bitNumber", "rrlp.bitNumber",
9126
16
        FT_UINT32, BASE_DEC, NULL, 0,
9127
16
        NULL, HFILL }},
9128
16
    { &hf_rrlp_threeDLocation,
9129
16
      { "threeDLocation", "rrlp.threeDLocation",
9130
16
        FT_BYTES, BASE_NONE, NULL, 0,
9131
16
        "Ext_GeographicalInformation", HFILL }},
9132
16
    { &hf_rrlp_gpsTOW_02,
9133
16
      { "gpsTOW", "rrlp.gpsTOW",
9134
16
        FT_UINT32, BASE_DEC, NULL, 0,
9135
16
        "INTEGER_0_604799", HFILL }},
9136
16
    { &hf_rrlp_status,
9137
16
      { "status", "rrlp.status",
9138
16
        FT_UINT32, BASE_DEC, NULL, 0,
9139
16
        "INTEGER_0_7", HFILL }},
9140
16
    { &hf_rrlp_satList,
9141
16
      { "satList", "rrlp.satList",
9142
16
        FT_UINT32, BASE_DEC, NULL, 0,
9143
16
        "SeqOfSatElement", HFILL }},
9144
16
    { &hf_rrlp_SeqOfSatElement_item,
9145
16
      { "SatElement", "rrlp.SatElement_element",
9146
16
        FT_NONE, BASE_NONE, NULL, 0,
9147
16
        NULL, HFILL }},
9148
16
    { &hf_rrlp_iode,
9149
16
      { "iode", "rrlp.iode",
9150
16
        FT_UINT32, BASE_DEC, NULL, 0,
9151
16
        "INTEGER_0_239", HFILL }},
9152
16
    { &hf_rrlp_udre,
9153
16
      { "udre", "rrlp.udre",
9154
16
        FT_UINT32, BASE_DEC, NULL, 0,
9155
16
        "INTEGER_0_3", HFILL }},
9156
16
    { &hf_rrlp_pseudoRangeCor,
9157
16
      { "pseudoRangeCor", "rrlp.pseudoRangeCor",
9158
16
        FT_INT32, BASE_DEC, NULL, 0,
9159
16
        "INTEGER_M2047_2047", HFILL }},
9160
16
    { &hf_rrlp_rangeRateCor,
9161
16
      { "rangeRateCor", "rrlp.rangeRateCor",
9162
16
        FT_INT32, BASE_DEC, NULL, 0,
9163
16
        "INTEGER_M127_127", HFILL }},
9164
16
    { &hf_rrlp_deltaPseudoRangeCor2,
9165
16
      { "deltaPseudoRangeCor2", "rrlp.deltaPseudoRangeCor2",
9166
16
        FT_INT32, BASE_DEC, NULL, 0,
9167
16
        "INTEGER_M127_127", HFILL }},
9168
16
    { &hf_rrlp_deltaRangeRateCor2,
9169
16
      { "deltaRangeRateCor2", "rrlp.deltaRangeRateCor2",
9170
16
        FT_INT32, BASE_DEC, NULL, 0,
9171
16
        "INTEGER_M7_7", HFILL }},
9172
16
    { &hf_rrlp_deltaPseudoRangeCor3,
9173
16
      { "deltaPseudoRangeCor3", "rrlp.deltaPseudoRangeCor3",
9174
16
        FT_INT32, BASE_DEC, NULL, 0,
9175
16
        "INTEGER_M127_127", HFILL }},
9176
16
    { &hf_rrlp_deltaRangeRateCor3,
9177
16
      { "deltaRangeRateCor3", "rrlp.deltaRangeRateCor3",
9178
16
        FT_INT32, BASE_DEC, NULL, 0,
9179
16
        "INTEGER_M7_7", HFILL }},
9180
16
    { &hf_rrlp_navModelList,
9181
16
      { "navModelList", "rrlp.navModelList",
9182
16
        FT_UINT32, BASE_DEC, NULL, 0,
9183
16
        "SeqOfNavModelElement", HFILL }},
9184
16
    { &hf_rrlp_SeqOfNavModelElement_item,
9185
16
      { "NavModelElement", "rrlp.NavModelElement_element",
9186
16
        FT_NONE, BASE_NONE, NULL, 0,
9187
16
        NULL, HFILL }},
9188
16
    { &hf_rrlp_satStatus,
9189
16
      { "satStatus", "rrlp.satStatus",
9190
16
        FT_UINT32, BASE_DEC, VALS(rrlp_SatStatus_vals), 0,
9191
16
        NULL, HFILL }},
9192
16
    { &hf_rrlp_newSatelliteAndModelUC,
9193
16
      { "newSatelliteAndModelUC", "rrlp.newSatelliteAndModelUC_element",
9194
16
        FT_NONE, BASE_NONE, NULL, 0,
9195
16
        "UncompressedEphemeris", HFILL }},
9196
16
    { &hf_rrlp_oldSatelliteAndModel,
9197
16
      { "oldSatelliteAndModel", "rrlp.oldSatelliteAndModel_element",
9198
16
        FT_NONE, BASE_NONE, NULL, 0,
9199
16
        NULL, HFILL }},
9200
16
    { &hf_rrlp_newNaviModelUC,
9201
16
      { "newNaviModelUC", "rrlp.newNaviModelUC_element",
9202
16
        FT_NONE, BASE_NONE, NULL, 0,
9203
16
        "UncompressedEphemeris", HFILL }},
9204
16
    { &hf_rrlp_ephemCodeOnL2,
9205
16
      { "ephemCodeOnL2", "rrlp.ephemCodeOnL2",
9206
16
        FT_UINT32, BASE_DEC, NULL, 0,
9207
16
        "INTEGER_0_3", HFILL }},
9208
16
    { &hf_rrlp_ephemURA,
9209
16
      { "ephemURA", "rrlp.ephemURA",
9210
16
        FT_UINT32, BASE_DEC, NULL, 0,
9211
16
        "INTEGER_0_15", HFILL }},
9212
16
    { &hf_rrlp_ephemSVhealth,
9213
16
      { "ephemSVhealth", "rrlp.ephemSVhealth",
9214
16
        FT_UINT32, BASE_DEC, NULL, 0,
9215
16
        "INTEGER_0_63", HFILL }},
9216
16
    { &hf_rrlp_ephemIODC,
9217
16
      { "ephemIODC", "rrlp.ephemIODC",
9218
16
        FT_UINT32, BASE_DEC, NULL, 0,
9219
16
        "INTEGER_0_1023", HFILL }},
9220
16
    { &hf_rrlp_ephemL2Pflag,
9221
16
      { "ephemL2Pflag", "rrlp.ephemL2Pflag",
9222
16
        FT_UINT32, BASE_DEC, NULL, 0,
9223
16
        "INTEGER_0_1", HFILL }},
9224
16
    { &hf_rrlp_ephemSF1Rsvd,
9225
16
      { "ephemSF1Rsvd", "rrlp.ephemSF1Rsvd_element",
9226
16
        FT_NONE, BASE_NONE, NULL, 0,
9227
16
        "EphemerisSubframe1Reserved", HFILL }},
9228
16
    { &hf_rrlp_ephemTgd,
9229
16
      { "ephemTgd", "rrlp.ephemTgd",
9230
16
        FT_INT32, BASE_DEC, NULL, 0,
9231
16
        "INTEGER_M128_127", HFILL }},
9232
16
    { &hf_rrlp_ephemToc,
9233
16
      { "ephemToc", "rrlp.ephemToc",
9234
16
        FT_UINT32, BASE_DEC, NULL, 0,
9235
16
        "INTEGER_0_37799", HFILL }},
9236
16
    { &hf_rrlp_ephemAF2,
9237
16
      { "ephemAF2", "rrlp.ephemAF2",
9238
16
        FT_INT32, BASE_DEC, NULL, 0,
9239
16
        "INTEGER_M128_127", HFILL }},
9240
16
    { &hf_rrlp_ephemAF1,
9241
16
      { "ephemAF1", "rrlp.ephemAF1",
9242
16
        FT_INT32, BASE_DEC, NULL, 0,
9243
16
        "INTEGER_M32768_32767", HFILL }},
9244
16
    { &hf_rrlp_ephemAF0,
9245
16
      { "ephemAF0", "rrlp.ephemAF0",
9246
16
        FT_INT32, BASE_DEC, NULL, 0,
9247
16
        "INTEGER_M2097152_2097151", HFILL }},
9248
16
    { &hf_rrlp_ephemCrs,
9249
16
      { "ephemCrs", "rrlp.ephemCrs",
9250
16
        FT_INT32, BASE_DEC, NULL, 0,
9251
16
        "INTEGER_M32768_32767", HFILL }},
9252
16
    { &hf_rrlp_ephemDeltaN,
9253
16
      { "ephemDeltaN", "rrlp.ephemDeltaN",
9254
16
        FT_INT32, BASE_DEC, NULL, 0,
9255
16
        "INTEGER_M32768_32767", HFILL }},
9256
16
    { &hf_rrlp_ephemM0,
9257
16
      { "ephemM0", "rrlp.ephemM0",
9258
16
        FT_INT32, BASE_DEC, NULL, 0,
9259
16
        "INTEGER_M2147483648_2147483647", HFILL }},
9260
16
    { &hf_rrlp_ephemCuc,
9261
16
      { "ephemCuc", "rrlp.ephemCuc",
9262
16
        FT_INT32, BASE_DEC, NULL, 0,
9263
16
        "INTEGER_M32768_32767", HFILL }},
9264
16
    { &hf_rrlp_ephemE,
9265
16
      { "ephemE", "rrlp.ephemE",
9266
16
        FT_UINT32, BASE_DEC, NULL, 0,
9267
16
        "INTEGER_0_4294967295", HFILL }},
9268
16
    { &hf_rrlp_ephemCus,
9269
16
      { "ephemCus", "rrlp.ephemCus",
9270
16
        FT_INT32, BASE_DEC, NULL, 0,
9271
16
        "INTEGER_M32768_32767", HFILL }},
9272
16
    { &hf_rrlp_ephemAPowerHalf,
9273
16
      { "ephemAPowerHalf", "rrlp.ephemAPowerHalf",
9274
16
        FT_UINT32, BASE_DEC, NULL, 0,
9275
16
        "INTEGER_0_4294967295", HFILL }},
9276
16
    { &hf_rrlp_ephemToe,
9277
16
      { "ephemToe", "rrlp.ephemToe",
9278
16
        FT_UINT32, BASE_DEC, NULL, 0,
9279
16
        "INTEGER_0_37799", HFILL }},
9280
16
    { &hf_rrlp_ephemFitFlag,
9281
16
      { "ephemFitFlag", "rrlp.ephemFitFlag",
9282
16
        FT_UINT32, BASE_DEC, NULL, 0,
9283
16
        "INTEGER_0_1", HFILL }},
9284
16
    { &hf_rrlp_ephemAODA,
9285
16
      { "ephemAODA", "rrlp.ephemAODA",
9286
16
        FT_UINT32, BASE_DEC, NULL, 0,
9287
16
        "INTEGER_0_31", HFILL }},
9288
16
    { &hf_rrlp_ephemCic,
9289
16
      { "ephemCic", "rrlp.ephemCic",
9290
16
        FT_INT32, BASE_DEC, NULL, 0,
9291
16
        "INTEGER_M32768_32767", HFILL }},
9292
16
    { &hf_rrlp_ephemOmegaA0,
9293
16
      { "ephemOmegaA0", "rrlp.ephemOmegaA0",
9294
16
        FT_INT32, BASE_DEC, NULL, 0,
9295
16
        "INTEGER_M2147483648_2147483647", HFILL }},
9296
16
    { &hf_rrlp_ephemCis,
9297
16
      { "ephemCis", "rrlp.ephemCis",
9298
16
        FT_INT32, BASE_DEC, NULL, 0,
9299
16
        "INTEGER_M32768_32767", HFILL }},
9300
16
    { &hf_rrlp_ephemI0,
9301
16
      { "ephemI0", "rrlp.ephemI0",
9302
16
        FT_INT32, BASE_DEC, NULL, 0,
9303
16
        "INTEGER_M2147483648_2147483647", HFILL }},
9304
16
    { &hf_rrlp_ephemCrc,
9305
16
      { "ephemCrc", "rrlp.ephemCrc",
9306
16
        FT_INT32, BASE_DEC, NULL, 0,
9307
16
        "INTEGER_M32768_32767", HFILL }},
9308
16
    { &hf_rrlp_ephemW,
9309
16
      { "ephemW", "rrlp.ephemW",
9310
16
        FT_INT32, BASE_DEC, NULL, 0,
9311
16
        "INTEGER_M2147483648_2147483647", HFILL }},
9312
16
    { &hf_rrlp_ephemOmegaADot,
9313
16
      { "ephemOmegaADot", "rrlp.ephemOmegaADot",
9314
16
        FT_INT32, BASE_DEC, NULL, 0,
9315
16
        "INTEGER_M8388608_8388607", HFILL }},
9316
16
    { &hf_rrlp_ephemIDot,
9317
16
      { "ephemIDot", "rrlp.ephemIDot",
9318
16
        FT_INT32, BASE_DEC, NULL, 0,
9319
16
        "INTEGER_M8192_8191", HFILL }},
9320
16
    { &hf_rrlp_reserved1,
9321
16
      { "reserved1", "rrlp.reserved1",
9322
16
        FT_UINT32, BASE_DEC, NULL, 0,
9323
16
        "INTEGER_0_8388607", HFILL }},
9324
16
    { &hf_rrlp_reserved2,
9325
16
      { "reserved2", "rrlp.reserved2",
9326
16
        FT_UINT32, BASE_DEC, NULL, 0,
9327
16
        "INTEGER_0_16777215", HFILL }},
9328
16
    { &hf_rrlp_reserved3,
9329
16
      { "reserved3", "rrlp.reserved3",
9330
16
        FT_UINT32, BASE_DEC, NULL, 0,
9331
16
        "INTEGER_0_16777215", HFILL }},
9332
16
    { &hf_rrlp_reserved4,
9333
16
      { "reserved4", "rrlp.reserved4",
9334
16
        FT_UINT32, BASE_DEC, NULL, 0,
9335
16
        "INTEGER_0_65535", HFILL }},
9336
16
    { &hf_rrlp_alfa0,
9337
16
      { "alfa0", "rrlp.alfa0",
9338
16
        FT_INT32, BASE_DEC, NULL, 0,
9339
16
        "INTEGER_M128_127", HFILL }},
9340
16
    { &hf_rrlp_alfa1,
9341
16
      { "alfa1", "rrlp.alfa1",
9342
16
        FT_INT32, BASE_DEC, NULL, 0,
9343
16
        "INTEGER_M128_127", HFILL }},
9344
16
    { &hf_rrlp_alfa2,
9345
16
      { "alfa2", "rrlp.alfa2",
9346
16
        FT_INT32, BASE_DEC, NULL, 0,
9347
16
        "INTEGER_M128_127", HFILL }},
9348
16
    { &hf_rrlp_alfa3,
9349
16
      { "alfa3", "rrlp.alfa3",
9350
16
        FT_INT32, BASE_DEC, NULL, 0,
9351
16
        "INTEGER_M128_127", HFILL }},
9352
16
    { &hf_rrlp_beta0,
9353
16
      { "beta0", "rrlp.beta0",
9354
16
        FT_INT32, BASE_DEC, NULL, 0,
9355
16
        "INTEGER_M128_127", HFILL }},
9356
16
    { &hf_rrlp_beta1,
9357
16
      { "beta1", "rrlp.beta1",
9358
16
        FT_INT32, BASE_DEC, NULL, 0,
9359
16
        "INTEGER_M128_127", HFILL }},
9360
16
    { &hf_rrlp_beta2,
9361
16
      { "beta2", "rrlp.beta2",
9362
16
        FT_INT32, BASE_DEC, NULL, 0,
9363
16
        "INTEGER_M128_127", HFILL }},
9364
16
    { &hf_rrlp_beta3,
9365
16
      { "beta3", "rrlp.beta3",
9366
16
        FT_INT32, BASE_DEC, NULL, 0,
9367
16
        "INTEGER_M128_127", HFILL }},
9368
16
    { &hf_rrlp_utcA1,
9369
16
      { "utcA1", "rrlp.utcA1",
9370
16
        FT_INT32, BASE_DEC, NULL, 0,
9371
16
        "INTEGER_M8388608_8388607", HFILL }},
9372
16
    { &hf_rrlp_utcA0,
9373
16
      { "utcA0", "rrlp.utcA0",
9374
16
        FT_INT32, BASE_DEC, NULL, 0,
9375
16
        "INTEGER_M2147483648_2147483647", HFILL }},
9376
16
    { &hf_rrlp_utcTot,
9377
16
      { "utcTot", "rrlp.utcTot",
9378
16
        FT_UINT32, BASE_DEC, NULL, 0,
9379
16
        "INTEGER_0_255", HFILL }},
9380
16
    { &hf_rrlp_utcWNt,
9381
16
      { "utcWNt", "rrlp.utcWNt",
9382
16
        FT_UINT32, BASE_DEC, NULL, 0,
9383
16
        "INTEGER_0_255", HFILL }},
9384
16
    { &hf_rrlp_utcDeltaTls,
9385
16
      { "utcDeltaTls", "rrlp.utcDeltaTls",
9386
16
        FT_INT32, BASE_DEC, NULL, 0,
9387
16
        "INTEGER_M128_127", HFILL }},
9388
16
    { &hf_rrlp_utcWNlsf,
9389
16
      { "utcWNlsf", "rrlp.utcWNlsf",
9390
16
        FT_UINT32, BASE_DEC, NULL, 0,
9391
16
        "INTEGER_0_255", HFILL }},
9392
16
    { &hf_rrlp_utcDN,
9393
16
      { "utcDN", "rrlp.utcDN",
9394
16
        FT_INT32, BASE_DEC, NULL, 0,
9395
16
        "INTEGER_M128_127", HFILL }},
9396
16
    { &hf_rrlp_utcDeltaTlsf,
9397
16
      { "utcDeltaTlsf", "rrlp.utcDeltaTlsf",
9398
16
        FT_INT32, BASE_DEC, NULL, 0,
9399
16
        "INTEGER_M128_127", HFILL }},
9400
16
    { &hf_rrlp_alamanacWNa,
9401
16
      { "alamanacWNa", "rrlp.alamanacWNa",
9402
16
        FT_UINT32, BASE_DEC, NULL, 0,
9403
16
        "INTEGER_0_255", HFILL }},
9404
16
    { &hf_rrlp_almanacList,
9405
16
      { "almanacList", "rrlp.almanacList",
9406
16
        FT_UINT32, BASE_DEC, NULL, 0,
9407
16
        "SeqOfAlmanacElement", HFILL }},
9408
16
    { &hf_rrlp_SeqOfAlmanacElement_item,
9409
16
      { "AlmanacElement", "rrlp.AlmanacElement_element",
9410
16
        FT_NONE, BASE_NONE, NULL, 0,
9411
16
        NULL, HFILL }},
9412
16
    { &hf_rrlp_almanacE,
9413
16
      { "almanacE", "rrlp.almanacE",
9414
16
        FT_UINT32, BASE_DEC, NULL, 0,
9415
16
        "INTEGER_0_65535", HFILL }},
9416
16
    { &hf_rrlp_alamanacToa,
9417
16
      { "alamanacToa", "rrlp.alamanacToa",
9418
16
        FT_UINT32, BASE_DEC, NULL, 0,
9419
16
        "INTEGER_0_255", HFILL }},
9420
16
    { &hf_rrlp_almanacKsii,
9421
16
      { "almanacKsii", "rrlp.almanacKsii",
9422
16
        FT_INT32, BASE_DEC, NULL, 0,
9423
16
        "INTEGER_M32768_32767", HFILL }},
9424
16
    { &hf_rrlp_almanacOmegaDot,
9425
16
      { "almanacOmegaDot", "rrlp.almanacOmegaDot",
9426
16
        FT_INT32, BASE_DEC, NULL, 0,
9427
16
        "INTEGER_M32768_32767", HFILL }},
9428
16
    { &hf_rrlp_almanacSVhealth,
9429
16
      { "almanacSVhealth", "rrlp.almanacSVhealth",
9430
16
        FT_UINT32, BASE_DEC, NULL, 0,
9431
16
        "INTEGER_0_255", HFILL }},
9432
16
    { &hf_rrlp_almanacAPowerHalf,
9433
16
      { "almanacAPowerHalf", "rrlp.almanacAPowerHalf",
9434
16
        FT_UINT32, BASE_DEC, NULL, 0,
9435
16
        "INTEGER_0_16777215", HFILL }},
9436
16
    { &hf_rrlp_almanacOmega0,
9437
16
      { "almanacOmega0", "rrlp.almanacOmega0",
9438
16
        FT_INT32, BASE_DEC, NULL, 0,
9439
16
        "INTEGER_M8388608_8388607", HFILL }},
9440
16
    { &hf_rrlp_almanacW,
9441
16
      { "almanacW", "rrlp.almanacW",
9442
16
        FT_INT32, BASE_DEC, NULL, 0,
9443
16
        "INTEGER_M8388608_8388607", HFILL }},
9444
16
    { &hf_rrlp_almanacM0,
9445
16
      { "almanacM0", "rrlp.almanacM0",
9446
16
        FT_INT32, BASE_DEC, NULL, 0,
9447
16
        "INTEGER_M8388608_8388607", HFILL }},
9448
16
    { &hf_rrlp_almanacAF0,
9449
16
      { "almanacAF0", "rrlp.almanacAF0",
9450
16
        FT_INT32, BASE_DEC, NULL, 0,
9451
16
        "INTEGER_M1024_1023", HFILL }},
9452
16
    { &hf_rrlp_almanacAF1,
9453
16
      { "almanacAF1", "rrlp.almanacAF1",
9454
16
        FT_INT32, BASE_DEC, NULL, 0,
9455
16
        "INTEGER_M1024_1023", HFILL }},
9456
16
    { &hf_rrlp_timeRelation,
9457
16
      { "timeRelation", "rrlp.timeRelation_element",
9458
16
        FT_NONE, BASE_NONE, NULL, 0,
9459
16
        NULL, HFILL }},
9460
16
    { &hf_rrlp_acquisList,
9461
16
      { "acquisList", "rrlp.acquisList",
9462
16
        FT_UINT32, BASE_DEC, NULL, 0,
9463
16
        "SeqOfAcquisElement", HFILL }},
9464
16
    { &hf_rrlp_SeqOfAcquisElement_item,
9465
16
      { "AcquisElement", "rrlp.AcquisElement_element",
9466
16
        FT_NONE, BASE_NONE, NULL, 0,
9467
16
        NULL, HFILL }},
9468
16
    { &hf_rrlp_gpsTOW_03,
9469
16
      { "gpsTOW", "rrlp.gpsTOW",
9470
16
        FT_UINT32, BASE_DEC, NULL, 0,
9471
16
        "GPSTOW23b", HFILL }},
9472
16
    { &hf_rrlp_svid,
9473
16
      { "svid", "rrlp.svid",
9474
16
        FT_UINT32, BASE_DEC, NULL, 0,
9475
16
        "SatelliteID", HFILL }},
9476
16
    { &hf_rrlp_doppler0,
9477
16
      { "doppler0", "rrlp.doppler0",
9478
16
        FT_INT32, BASE_DEC, NULL, 0,
9479
16
        "INTEGER_M2048_2047", HFILL }},
9480
16
    { &hf_rrlp_addionalDoppler,
9481
16
      { "addionalDoppler", "rrlp.addionalDoppler_element",
9482
16
        FT_NONE, BASE_NONE, NULL, 0,
9483
16
        "AddionalDopplerFields", HFILL }},
9484
16
    { &hf_rrlp_codePhase,
9485
16
      { "codePhase", "rrlp.codePhase",
9486
16
        FT_UINT32, BASE_DEC, NULL, 0,
9487
16
        "INTEGER_0_1022", HFILL }},
9488
16
    { &hf_rrlp_intCodePhase,
9489
16
      { "intCodePhase", "rrlp.intCodePhase",
9490
16
        FT_UINT32, BASE_DEC, NULL, 0,
9491
16
        "INTEGER_0_19", HFILL }},
9492
16
    { &hf_rrlp_gpsBitNumber,
9493
16
      { "gpsBitNumber", "rrlp.gpsBitNumber",
9494
16
        FT_UINT32, BASE_DEC, NULL, 0,
9495
16
        "INTEGER_0_3", HFILL }},
9496
16
    { &hf_rrlp_codePhaseSearchWindow,
9497
16
      { "codePhaseSearchWindow", "rrlp.codePhaseSearchWindow",
9498
16
        FT_UINT32, BASE_DEC, NULL, 0,
9499
16
        "INTEGER_0_15", HFILL }},
9500
16
    { &hf_rrlp_addionalAngle,
9501
16
      { "addionalAngle", "rrlp.addionalAngle_element",
9502
16
        FT_NONE, BASE_NONE, NULL, 0,
9503
16
        "AddionalAngleFields", HFILL }},
9504
16
    { &hf_rrlp_doppler1,
9505
16
      { "doppler1", "rrlp.doppler1",
9506
16
        FT_UINT32, BASE_DEC, NULL, 0,
9507
16
        "INTEGER_0_63", HFILL }},
9508
16
    { &hf_rrlp_dopplerUncertainty,
9509
16
      { "dopplerUncertainty", "rrlp.dopplerUncertainty",
9510
16
        FT_UINT32, BASE_DEC, NULL, 0,
9511
16
        "INTEGER_0_7", HFILL }},
9512
16
    { &hf_rrlp_azimuth,
9513
16
      { "azimuth", "rrlp.azimuth",
9514
16
        FT_UINT32, BASE_DEC, NULL, 0,
9515
16
        "INTEGER_0_31", HFILL }},
9516
16
    { &hf_rrlp_elevation,
9517
16
      { "elevation", "rrlp.elevation",
9518
16
        FT_UINT32, BASE_DEC, NULL, 0,
9519
16
        "INTEGER_0_7", HFILL }},
9520
16
    { &hf_rrlp_SeqOf_BadSatelliteSet_item,
9521
16
      { "SatelliteID", "rrlp.SatelliteID",
9522
16
        FT_UINT32, BASE_DEC, NULL, 0,
9523
16
        NULL, HFILL }},
9524
16
    { &hf_rrlp_rel98_Ext_ExpOTD,
9525
16
      { "rel98-Ext-ExpOTD", "rrlp.rel98_Ext_ExpOTD_element",
9526
16
        FT_NONE, BASE_NONE, NULL, 0,
9527
16
        NULL, HFILL }},
9528
16
    { &hf_rrlp_gpsTimeAssistanceMeasurementRequest,
9529
16
      { "gpsTimeAssistanceMeasurementRequest", "rrlp.gpsTimeAssistanceMeasurementRequest_element",
9530
16
        FT_NONE, BASE_NONE, NULL, 0,
9531
16
        NULL, HFILL }},
9532
16
    { &hf_rrlp_gpsReferenceTimeUncertainty,
9533
16
      { "gpsReferenceTimeUncertainty", "rrlp.gpsReferenceTimeUncertainty",
9534
16
        FT_UINT32, BASE_DEC, NULL, 0,
9535
16
        NULL, HFILL }},
9536
16
    { &hf_rrlp_msrAssistData_R98_ExpOTD,
9537
16
      { "msrAssistData-R98-ExpOTD", "rrlp.msrAssistData_R98_ExpOTD_element",
9538
16
        FT_NONE, BASE_NONE, NULL, 0,
9539
16
        NULL, HFILL }},
9540
16
    { &hf_rrlp_systemInfoAssistData_R98_ExpOTD,
9541
16
      { "systemInfoAssistData-R98-ExpOTD", "rrlp.systemInfoAssistData_R98_ExpOTD_element",
9542
16
        FT_NONE, BASE_NONE, NULL, 0,
9543
16
        NULL, HFILL }},
9544
16
    { &hf_rrlp_msrAssistList_R98_ExpOTD,
9545
16
      { "msrAssistList-R98-ExpOTD", "rrlp.msrAssistList_R98_ExpOTD",
9546
16
        FT_UINT32, BASE_DEC, NULL, 0,
9547
16
        "SeqOfMsrAssistBTS_R98_ExpOTD", HFILL }},
9548
16
    { &hf_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD_item,
9549
16
      { "MsrAssistBTS-R98-ExpOTD", "rrlp.MsrAssistBTS_R98_ExpOTD_element",
9550
16
        FT_NONE, BASE_NONE, NULL, 0,
9551
16
        NULL, HFILL }},
9552
16
    { &hf_rrlp_expectedOTD,
9553
16
      { "expectedOTD", "rrlp.expectedOTD",
9554
16
        FT_UINT32, BASE_DEC, NULL, 0,
9555
16
        NULL, HFILL }},
9556
16
    { &hf_rrlp_expOTDUncertainty,
9557
16
      { "expOTDUncertainty", "rrlp.expOTDUncertainty",
9558
16
        FT_UINT32, BASE_DEC, NULL, 0,
9559
16
        NULL, HFILL }},
9560
16
    { &hf_rrlp_systemInfoAssistListR98_ExpOTD,
9561
16
      { "systemInfoAssistListR98-ExpOTD", "rrlp.systemInfoAssistListR98_ExpOTD",
9562
16
        FT_UINT32, BASE_DEC, NULL, 0,
9563
16
        "SeqOfSystemInfoAssistBTS_R98_ExpOTD", HFILL }},
9564
16
    { &hf_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD_item,
9565
16
      { "SystemInfoAssistBTS-R98-ExpOTD", "rrlp.SystemInfoAssistBTS_R98_ExpOTD",
9566
16
        FT_UINT32, BASE_DEC, VALS(rrlp_SystemInfoAssistBTS_R98_ExpOTD_vals), 0,
9567
16
        NULL, HFILL }},
9568
16
    { &hf_rrlp_present_01,
9569
16
      { "present", "rrlp.present_element",
9570
16
        FT_NONE, BASE_NONE, NULL, 0,
9571
16
        "AssistBTSData_R98_ExpOTD", HFILL }},
9572
16
    { &hf_rrlp_expOTDuncertainty,
9573
16
      { "expOTDuncertainty", "rrlp.expOTDuncertainty",
9574
16
        FT_UINT32, BASE_DEC, NULL, 0,
9575
16
        NULL, HFILL }},
9576
16
    { &hf_rrlp_referenceFrameMSB,
9577
16
      { "referenceFrameMSB", "rrlp.referenceFrameMSB",
9578
16
        FT_UINT32, BASE_DEC, NULL, 0,
9579
16
        "INTEGER_0_63", HFILL }},
9580
16
    { &hf_rrlp_gpsTowSubms,
9581
16
      { "gpsTowSubms", "rrlp.gpsTowSubms",
9582
16
        FT_UINT32, BASE_DEC, NULL, 0,
9583
16
        "INTEGER_0_9999", HFILL }},
9584
16
    { &hf_rrlp_deltaTow,
9585
16
      { "deltaTow", "rrlp.deltaTow",
9586
16
        FT_UINT32, BASE_DEC, NULL, 0,
9587
16
        "INTEGER_0_127", HFILL }},
9588
16
    { &hf_rrlp_rel_98_Ext_MeasureInfo,
9589
16
      { "rel-98-Ext-MeasureInfo", "rrlp.rel_98_Ext_MeasureInfo_element",
9590
16
        FT_NONE, BASE_NONE, NULL, 0,
9591
16
        "T_rel_98_Ext_MeasureInfo", HFILL }},
9592
16
    { &hf_rrlp_otd_MeasureInfo_R98_Ext,
9593
16
      { "otd-MeasureInfo-R98-Ext", "rrlp.otd_MeasureInfo_R98_Ext_element",
9594
16
        FT_NONE, BASE_NONE, NULL, 0,
9595
16
        NULL, HFILL }},
9596
16
    { &hf_rrlp_timeAssistanceMeasurements,
9597
16
      { "timeAssistanceMeasurements", "rrlp.timeAssistanceMeasurements_element",
9598
16
        FT_NONE, BASE_NONE, NULL, 0,
9599
16
        "GPSTimeAssistanceMeasurements", HFILL }},
9600
16
    { &hf_rrlp_otdMsrFirstSets_R98_Ext,
9601
16
      { "otdMsrFirstSets-R98-Ext", "rrlp.otdMsrFirstSets_R98_Ext_element",
9602
16
        FT_NONE, BASE_NONE, NULL, 0,
9603
16
        "OTD_MsrElementFirst_R98_Ext", HFILL }},
9604
16
    { &hf_rrlp_otd_FirstSetMsrs_R98_Ext,
9605
16
      { "otd-FirstSetMsrs-R98-Ext", "rrlp.otd_FirstSetMsrs_R98_Ext",
9606
16
        FT_UINT32, BASE_DEC, NULL, 0,
9607
16
        "SeqOfOTD_FirstSetMsrs_R98_Ext", HFILL }},
9608
16
    { &hf_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext_item,
9609
16
      { "OTD-FirstSetMsrs", "rrlp.OTD_FirstSetMsrs_element",
9610
16
        FT_NONE, BASE_NONE, NULL, 0,
9611
16
        NULL, HFILL }},
9612
16
    { &hf_rrlp_otd_MeasureInfo_5_Ext,
9613
16
      { "otd-MeasureInfo-5-Ext", "rrlp.otd_MeasureInfo_5_Ext",
9614
16
        FT_UINT32, BASE_DEC, NULL, 0,
9615
16
        NULL, HFILL }},
9616
16
    { &hf_rrlp_ulPseudoSegInd,
9617
16
      { "ulPseudoSegInd", "rrlp.ulPseudoSegInd",
9618
16
        FT_UINT32, BASE_DEC, VALS(rrlp_UlPseudoSegInd_vals), 0,
9619
16
        NULL, HFILL }},
9620
16
    { &hf_rrlp_smlc_code,
9621
16
      { "smlc-code", "rrlp.smlc_code",
9622
16
        FT_UINT32, BASE_DEC, NULL, 0,
9623
16
        "INTEGER_0_63", HFILL }},
9624
16
    { &hf_rrlp_transaction_ID,
9625
16
      { "transaction-ID", "rrlp.transaction_ID",
9626
16
        FT_UINT32, BASE_DEC, NULL, 0,
9627
16
        "INTEGER_0_262143", HFILL }},
9628
16
    { &hf_rrlp_velocityRequested,
9629
16
      { "velocityRequested", "rrlp.velocityRequested_element",
9630
16
        FT_NONE, BASE_NONE, NULL, 0,
9631
16
        NULL, HFILL }},
9632
16
    { &hf_rrlp_ganssPositionMethod,
9633
16
      { "ganssPositionMethod", "rrlp.ganssPositionMethod",
9634
16
        FT_BYTES, BASE_NONE, NULL, 0,
9635
16
        "GANSSPositioningMethod", HFILL }},
9636
16
    { &hf_rrlp_ganss_AssistData,
9637
16
      { "ganss-AssistData", "rrlp.ganss_AssistData_element",
9638
16
        FT_NONE, BASE_NONE, NULL, 0,
9639
16
        NULL, HFILL }},
9640
16
    { &hf_rrlp_ganssCarrierPhaseMeasurementRequest,
9641
16
      { "ganssCarrierPhaseMeasurementRequest", "rrlp.ganssCarrierPhaseMeasurementRequest_element",
9642
16
        FT_NONE, BASE_NONE, NULL, 0,
9643
16
        NULL, HFILL }},
9644
16
    { &hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest,
9645
16
      { "ganssTODGSMTimeAssociationMeasurementRequest", "rrlp.ganssTODGSMTimeAssociationMeasurementRequest_element",
9646
16
        FT_NONE, BASE_NONE, NULL, 0,
9647
16
        NULL, HFILL }},
9648
16
    { &hf_rrlp_requiredResponseTime,
9649
16
      { "requiredResponseTime", "rrlp.requiredResponseTime",
9650
16
        FT_UINT32, BASE_DEC, NULL, 0,
9651
16
        NULL, HFILL }},
9652
16
    { &hf_rrlp_add_GPS_AssistData,
9653
16
      { "add-GPS-AssistData", "rrlp.add_GPS_AssistData_element",
9654
16
        FT_NONE, BASE_NONE, NULL, 0,
9655
16
        NULL, HFILL }},
9656
16
    { &hf_rrlp_ganssMultiFreqMeasurementRequest,
9657
16
      { "ganssMultiFreqMeasurementRequest", "rrlp.ganssMultiFreqMeasurementRequest_element",
9658
16
        FT_NONE, BASE_NONE, NULL, 0,
9659
16
        NULL, HFILL }},
9660
16
    { &hf_rrlp_ganss_controlHeader,
9661
16
      { "ganss-controlHeader", "rrlp.ganss_controlHeader_element",
9662
16
        FT_NONE, BASE_NONE, NULL, 0,
9663
16
        NULL, HFILL }},
9664
16
    { &hf_rrlp_ganssCommonAssistData,
9665
16
      { "ganssCommonAssistData", "rrlp.ganssCommonAssistData_element",
9666
16
        FT_NONE, BASE_NONE, NULL, 0,
9667
16
        NULL, HFILL }},
9668
16
    { &hf_rrlp_ganssGenericAssistDataList,
9669
16
      { "ganssGenericAssistDataList", "rrlp.ganssGenericAssistDataList",
9670
16
        FT_UINT32, BASE_DEC, NULL, 0,
9671
16
        "SeqOfGANSSGenericAssistDataElement", HFILL }},
9672
16
    { &hf_rrlp_ganssReferenceTime,
9673
16
      { "ganssReferenceTime", "rrlp.ganssReferenceTime_element",
9674
16
        FT_NONE, BASE_NONE, NULL, 0,
9675
16
        NULL, HFILL }},
9676
16
    { &hf_rrlp_ganssRefLocation,
9677
16
      { "ganssRefLocation", "rrlp.ganssRefLocation_element",
9678
16
        FT_NONE, BASE_NONE, NULL, 0,
9679
16
        NULL, HFILL }},
9680
16
    { &hf_rrlp_ganssIonosphericModel,
9681
16
      { "ganssIonosphericModel", "rrlp.ganssIonosphericModel_element",
9682
16
        FT_NONE, BASE_NONE, NULL, 0,
9683
16
        NULL, HFILL }},
9684
16
    { &hf_rrlp_ganssAddIonosphericModel,
9685
16
      { "ganssAddIonosphericModel", "rrlp.ganssAddIonosphericModel_element",
9686
16
        FT_NONE, BASE_NONE, NULL, 0,
9687
16
        NULL, HFILL }},
9688
16
    { &hf_rrlp_ganssEarthOrientParam,
9689
16
      { "ganssEarthOrientParam", "rrlp.ganssEarthOrientParam_element",
9690
16
        FT_NONE, BASE_NONE, NULL, 0,
9691
16
        NULL, HFILL }},
9692
16
    { &hf_rrlp_ganssReferenceTime_R10_Ext,
9693
16
      { "ganssReferenceTime-R10-Ext", "rrlp.ganssReferenceTime_R10_Ext_element",
9694
16
        FT_NONE, BASE_NONE, NULL, 0,
9695
16
        NULL, HFILL }},
9696
16
    { &hf_rrlp_SeqOfGANSSGenericAssistDataElement_item,
9697
16
      { "GANSSGenericAssistDataElement", "rrlp.GANSSGenericAssistDataElement_element",
9698
16
        FT_NONE, BASE_NONE, NULL, 0,
9699
16
        NULL, HFILL }},
9700
16
    { &hf_rrlp_ganssID,
9701
16
      { "ganssID", "rrlp.ganssID",
9702
16
        FT_UINT32, BASE_DEC, NULL, 0,
9703
16
        "INTEGER_0_7", HFILL }},
9704
16
    { &hf_rrlp_ganssTimeModel,
9705
16
      { "ganssTimeModel", "rrlp.ganssTimeModel",
9706
16
        FT_UINT32, BASE_DEC, NULL, 0,
9707
16
        "SeqOfGANSSTimeModel", HFILL }},
9708
16
    { &hf_rrlp_ganssDiffCorrections,
9709
16
      { "ganssDiffCorrections", "rrlp.ganssDiffCorrections_element",
9710
16
        FT_NONE, BASE_NONE, NULL, 0,
9711
16
        NULL, HFILL }},
9712
16
    { &hf_rrlp_ganssNavigationModel,
9713
16
      { "ganssNavigationModel", "rrlp.ganssNavigationModel_element",
9714
16
        FT_NONE, BASE_NONE, NULL, 0,
9715
16
        "GANSSNavModel", HFILL }},
9716
16
    { &hf_rrlp_ganssRealTimeIntegrity,
9717
16
      { "ganssRealTimeIntegrity", "rrlp.ganssRealTimeIntegrity_element",
9718
16
        FT_NONE, BASE_NONE, NULL, 0,
9719
16
        NULL, HFILL }},
9720
16
    { &hf_rrlp_ganssDataBitAssist,
9721
16
      { "ganssDataBitAssist", "rrlp.ganssDataBitAssist_element",
9722
16
        FT_NONE, BASE_NONE, NULL, 0,
9723
16
        NULL, HFILL }},
9724
16
    { &hf_rrlp_ganssRefMeasurementAssist,
9725
16
      { "ganssRefMeasurementAssist", "rrlp.ganssRefMeasurementAssist_element",
9726
16
        FT_NONE, BASE_NONE, NULL, 0,
9727
16
        NULL, HFILL }},
9728
16
    { &hf_rrlp_ganssAlmanacModel,
9729
16
      { "ganssAlmanacModel", "rrlp.ganssAlmanacModel_element",
9730
16
        FT_NONE, BASE_NONE, NULL, 0,
9731
16
        NULL, HFILL }},
9732
16
    { &hf_rrlp_ganssUTCModel,
9733
16
      { "ganssUTCModel", "rrlp.ganssUTCModel_element",
9734
16
        FT_NONE, BASE_NONE, NULL, 0,
9735
16
        NULL, HFILL }},
9736
16
    { &hf_rrlp_ganssEphemerisExtension,
9737
16
      { "ganssEphemerisExtension", "rrlp.ganssEphemerisExtension_element",
9738
16
        FT_NONE, BASE_NONE, NULL, 0,
9739
16
        NULL, HFILL }},
9740
16
    { &hf_rrlp_ganssEphemerisExtCheck,
9741
16
      { "ganssEphemerisExtCheck", "rrlp.ganssEphemerisExtCheck_element",
9742
16
        FT_NONE, BASE_NONE, NULL, 0,
9743
16
        "GANSSEphemerisExtensionCheck", HFILL }},
9744
16
    { &hf_rrlp_sbasID_int,
9745
16
      { "sbasID", "rrlp.sbasID_int",
9746
16
        FT_UINT32, BASE_DEC, NULL, 0,
9747
16
        "INTEGER_0_7", HFILL }},
9748
16
    { &hf_rrlp_ganssAddUTCModel,
9749
16
      { "ganssAddUTCModel", "rrlp.ganssAddUTCModel",
9750
16
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAddUTCModel_vals), 0,
9751
16
        NULL, HFILL }},
9752
16
    { &hf_rrlp_ganssAuxiliaryInfo,
9753
16
      { "ganssAuxiliaryInfo", "rrlp.ganssAuxiliaryInfo",
9754
16
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAuxiliaryInformation_vals), 0,
9755
16
        "GANSSAuxiliaryInformation", HFILL }},
9756
16
    { &hf_rrlp_ganssDiffCorrectionsValidityPeriod,
9757
16
      { "ganssDiffCorrectionsValidityPeriod", "rrlp.ganssDiffCorrectionsValidityPeriod",
9758
16
        FT_UINT32, BASE_DEC, NULL, 0,
9759
16
        NULL, HFILL }},
9760
16
    { &hf_rrlp_ganssTimeModel_R10_Ext,
9761
16
      { "ganssTimeModel-R10-Ext", "rrlp.ganssTimeModel_R10_Ext",
9762
16
        FT_UINT32, BASE_DEC, NULL, 0,
9763
16
        "SeqOfGANSSTimeModel_R10_Ext", HFILL }},
9764
16
    { &hf_rrlp_ganssRefMeasurementAssist_R10_Ext,
9765
16
      { "ganssRefMeasurementAssist-R10-Ext", "rrlp.ganssRefMeasurementAssist_R10_Ext",
9766
16
        FT_UINT32, BASE_DEC, NULL, 0,
9767
16
        NULL, HFILL }},
9768
16
    { &hf_rrlp_ganssAlmanacModel_R10_Ext,
9769
16
      { "ganssAlmanacModel-R10-Ext", "rrlp.ganssAlmanacModel_R10_Ext_element",
9770
16
        FT_NONE, BASE_NONE, NULL, 0,
9771
16
        NULL, HFILL }},
9772
16
    { &hf_rrlp_ganssAlmanacModel_R12_Ext,
9773
16
      { "ganssAlmanacModel-R12-Ext", "rrlp.ganssAlmanacModel_R12_Ext_element",
9774
16
        FT_NONE, BASE_NONE, NULL, 0,
9775
16
        NULL, HFILL }},
9776
16
    { &hf_rrlp_ganssRefMeasurementAssist_R12_Ext,
9777
16
      { "ganssRefMeasurementAssist-R12-Ext", "rrlp.ganssRefMeasurementAssist_R12_Ext_element",
9778
16
        FT_NONE, BASE_NONE, NULL, 0,
9779
16
        NULL, HFILL }},
9780
16
    { &hf_rrlp_bdsDifferentialCorrections_r12,
9781
16
      { "bdsDifferentialCorrections-r12", "rrlp.bdsDifferentialCorrections_r12_element",
9782
16
        FT_NONE, BASE_NONE, NULL, 0,
9783
16
        "BDS_DiffCorrections_r12", HFILL }},
9784
16
    { &hf_rrlp_bdsGridModel_r12,
9785
16
      { "bdsGridModel-r12", "rrlp.bdsGridModel_r12_element",
9786
16
        FT_NONE, BASE_NONE, NULL, 0,
9787
16
        "BDS_GridModelParameter_r12", HFILL }},
9788
16
    { &hf_rrlp_ganssRefTimeInfo,
9789
16
      { "ganssRefTimeInfo", "rrlp.ganssRefTimeInfo_element",
9790
16
        FT_NONE, BASE_NONE, NULL, 0,
9791
16
        NULL, HFILL }},
9792
16
    { &hf_rrlp_ganssTOD_GSMTimeAssociation,
9793
16
      { "ganssTOD-GSMTimeAssociation", "rrlp.ganssTOD_GSMTimeAssociation_element",
9794
16
        FT_NONE, BASE_NONE, NULL, 0,
9795
16
        NULL, HFILL }},
9796
16
    { &hf_rrlp_ganssDay,
9797
16
      { "ganssDay", "rrlp.ganssDay",
9798
16
        FT_UINT32, BASE_DEC, NULL, 0,
9799
16
        "INTEGER_0_8191", HFILL }},
9800
16
    { &hf_rrlp_ganssTOD,
9801
16
      { "ganssTOD", "rrlp.ganssTOD",
9802
16
        FT_UINT32, BASE_DEC, NULL, 0,
9803
16
        NULL, HFILL }},
9804
16
    { &hf_rrlp_ganssTODUncertainty,
9805
16
      { "ganssTODUncertainty", "rrlp.ganssTODUncertainty",
9806
16
        FT_UINT32, BASE_DEC, NULL, 0,
9807
16
        NULL, HFILL }},
9808
16
    { &hf_rrlp_ganssTimeID,
9809
16
      { "ganssTimeID", "rrlp.ganssTimeID",
9810
16
        FT_UINT32, BASE_DEC, NULL, 0,
9811
16
        "INTEGER_0_7", HFILL }},
9812
16
    { &hf_rrlp_ganssDayCycleNumber,
9813
16
      { "ganssDayCycleNumber", "rrlp.ganssDayCycleNumber",
9814
16
        FT_UINT32, BASE_DEC, NULL, 0,
9815
16
        "INTEGER_0_7", HFILL }},
9816
16
    { &hf_rrlp_frameDrift,
9817
16
      { "frameDrift", "rrlp.frameDrift",
9818
16
        FT_INT32, BASE_DEC, NULL, 0,
9819
16
        NULL, HFILL }},
9820
16
    { &hf_rrlp_ganssIonoModel,
9821
16
      { "ganssIonoModel", "rrlp.ganssIonoModel_element",
9822
16
        FT_NONE, BASE_NONE, NULL, 0,
9823
16
        "GANSSIonosphereModel", HFILL }},
9824
16
    { &hf_rrlp_ganssIonoStormFlags,
9825
16
      { "ganssIonoStormFlags", "rrlp.ganssIonoStormFlags_element",
9826
16
        FT_NONE, BASE_NONE, NULL, 0,
9827
16
        NULL, HFILL }},
9828
16
    { &hf_rrlp_ai0,
9829
16
      { "ai0", "rrlp.ai0",
9830
16
        FT_UINT32, BASE_DEC, NULL, 0,
9831
16
        "INTEGER_0_2047", HFILL }},
9832
16
    { &hf_rrlp_ai1,
9833
16
      { "ai1", "rrlp.ai1",
9834
16
        FT_INT32, BASE_DEC, NULL, 0,
9835
16
        "INTEGER_M1024_1023", HFILL }},
9836
16
    { &hf_rrlp_ai2,
9837
16
      { "ai2", "rrlp.ai2",
9838
16
        FT_INT32, BASE_DEC, NULL, 0,
9839
16
        "INTEGER_M8192_8191", HFILL }},
9840
16
    { &hf_rrlp_ionoStormFlag1,
9841
16
      { "ionoStormFlag1", "rrlp.ionoStormFlag1",
9842
16
        FT_UINT32, BASE_DEC, NULL, 0,
9843
16
        "INTEGER_0_1", HFILL }},
9844
16
    { &hf_rrlp_ionoStormFlag2,
9845
16
      { "ionoStormFlag2", "rrlp.ionoStormFlag2",
9846
16
        FT_UINT32, BASE_DEC, NULL, 0,
9847
16
        "INTEGER_0_1", HFILL }},
9848
16
    { &hf_rrlp_ionoStormFlag3,
9849
16
      { "ionoStormFlag3", "rrlp.ionoStormFlag3",
9850
16
        FT_UINT32, BASE_DEC, NULL, 0,
9851
16
        "INTEGER_0_1", HFILL }},
9852
16
    { &hf_rrlp_ionoStormFlag4,
9853
16
      { "ionoStormFlag4", "rrlp.ionoStormFlag4",
9854
16
        FT_UINT32, BASE_DEC, NULL, 0,
9855
16
        "INTEGER_0_1", HFILL }},
9856
16
    { &hf_rrlp_ionoStormFlag5,
9857
16
      { "ionoStormFlag5", "rrlp.ionoStormFlag5",
9858
16
        FT_UINT32, BASE_DEC, NULL, 0,
9859
16
        "INTEGER_0_1", HFILL }},
9860
16
    { &hf_rrlp_dataID,
9861
16
      { "dataID", "rrlp.dataID",
9862
16
        FT_BYTES, BASE_NONE, NULL, 0,
9863
16
        "BIT_STRING_SIZE_2", HFILL }},
9864
16
    { &hf_rrlp_ionoModel,
9865
16
      { "ionoModel", "rrlp.ionoModel_element",
9866
16
        FT_NONE, BASE_NONE, NULL, 0,
9867
16
        "IonosphericModel", HFILL }},
9868
16
    { &hf_rrlp_teop,
9869
16
      { "teop", "rrlp.teop",
9870
16
        FT_UINT32, BASE_DEC, NULL, 0,
9871
16
        "INTEGER_0_65535", HFILL }},
9872
16
    { &hf_rrlp_pmX,
9873
16
      { "pmX", "rrlp.pmX",
9874
16
        FT_INT32, BASE_DEC, NULL, 0,
9875
16
        "INTEGER_M1048576_1048575", HFILL }},
9876
16
    { &hf_rrlp_pmXdot,
9877
16
      { "pmXdot", "rrlp.pmXdot",
9878
16
        FT_INT32, BASE_DEC, NULL, 0,
9879
16
        "INTEGER_M16384_16383", HFILL }},
9880
16
    { &hf_rrlp_pmY,
9881
16
      { "pmY", "rrlp.pmY",
9882
16
        FT_INT32, BASE_DEC, NULL, 0,
9883
16
        "INTEGER_M1048576_1048575", HFILL }},
9884
16
    { &hf_rrlp_pmYdot,
9885
16
      { "pmYdot", "rrlp.pmYdot",
9886
16
        FT_INT32, BASE_DEC, NULL, 0,
9887
16
        "INTEGER_M16384_16383", HFILL }},
9888
16
    { &hf_rrlp_deltaUT1,
9889
16
      { "deltaUT1", "rrlp.deltaUT1",
9890
16
        FT_INT32, BASE_DEC, NULL, 0,
9891
16
        "INTEGER_M1073741824_1073741823", HFILL }},
9892
16
    { &hf_rrlp_deltaUT1dot,
9893
16
      { "deltaUT1dot", "rrlp.deltaUT1dot",
9894
16
        FT_INT32, BASE_DEC, NULL, 0,
9895
16
        "INTEGER_M262144_262143", HFILL }},
9896
16
    { &hf_rrlp_SeqOfGANSSTimeModel_item,
9897
16
      { "GANSSTimeModelElement", "rrlp.GANSSTimeModelElement_element",
9898
16
        FT_NONE, BASE_NONE, NULL, 0,
9899
16
        NULL, HFILL }},
9900
16
    { &hf_rrlp_ganssTimeModelRefTime,
9901
16
      { "ganssTimeModelRefTime", "rrlp.ganssTimeModelRefTime",
9902
16
        FT_UINT32, BASE_DEC, NULL, 0,
9903
16
        "INTEGER_0_65535", HFILL }},
9904
16
    { &hf_rrlp_tA0,
9905
16
      { "tA0", "rrlp.tA0",
9906
16
        FT_INT32, BASE_DEC, NULL, 0,
9907
16
        NULL, HFILL }},
9908
16
    { &hf_rrlp_tA1,
9909
16
      { "tA1", "rrlp.tA1",
9910
16
        FT_INT32, BASE_DEC, NULL, 0,
9911
16
        NULL, HFILL }},
9912
16
    { &hf_rrlp_tA2,
9913
16
      { "tA2", "rrlp.tA2",
9914
16
        FT_INT32, BASE_DEC, NULL, 0,
9915
16
        NULL, HFILL }},
9916
16
    { &hf_rrlp_gnssTOID,
9917
16
      { "gnssTOID", "rrlp.gnssTOID",
9918
16
        FT_UINT32, BASE_DEC, NULL, 0,
9919
16
        "INTEGER_0_7", HFILL }},
9920
16
    { &hf_rrlp_weekNumber,
9921
16
      { "weekNumber", "rrlp.weekNumber",
9922
16
        FT_UINT32, BASE_DEC, NULL, 0,
9923
16
        "INTEGER_0_8191", HFILL }},
9924
16
    { &hf_rrlp_SeqOfGANSSTimeModel_R10_Ext_item,
9925
16
      { "GANSSTimeModelElement-R10-Ext", "rrlp.GANSSTimeModelElement_R10_Ext_element",
9926
16
        FT_NONE, BASE_NONE, NULL, 0,
9927
16
        NULL, HFILL }},
9928
16
    { &hf_rrlp_deltaT,
9929
16
      { "deltaT", "rrlp.deltaT",
9930
16
        FT_INT32, BASE_DEC, NULL, 0,
9931
16
        "INTEGER_M128_127", HFILL }},
9932
16
    { &hf_rrlp_dganssRefTime,
9933
16
      { "dganssRefTime", "rrlp.dganssRefTime",
9934
16
        FT_UINT32, BASE_DEC, NULL, 0,
9935
16
        "INTEGER_0_119", HFILL }},
9936
16
    { &hf_rrlp_sgnTypeList,
9937
16
      { "sgnTypeList", "rrlp.sgnTypeList",
9938
16
        FT_UINT32, BASE_DEC, NULL, 0,
9939
16
        "SeqOfSgnTypeElement", HFILL }},
9940
16
    { &hf_rrlp_SeqOfSgnTypeElement_item,
9941
16
      { "SgnTypeElement", "rrlp.SgnTypeElement_element",
9942
16
        FT_NONE, BASE_NONE, NULL, 0,
9943
16
        NULL, HFILL }},
9944
16
    { &hf_rrlp_ganssSignalID,
9945
16
      { "ganssSignalID", "rrlp.ganssSignalID",
9946
16
        FT_UINT32, BASE_DEC, NULL, 0,
9947
16
        NULL, HFILL }},
9948
16
    { &hf_rrlp_ganssStatusHealth,
9949
16
      { "ganssStatusHealth", "rrlp.ganssStatusHealth",
9950
16
        FT_UINT32, BASE_DEC, NULL, 0,
9951
16
        "INTEGER_0_7", HFILL }},
9952
16
    { &hf_rrlp_dganssSgnList,
9953
16
      { "dganssSgnList", "rrlp.dganssSgnList",
9954
16
        FT_UINT32, BASE_DEC, NULL, 0,
9955
16
        "SeqOfDGANSSSgnElement", HFILL }},
9956
16
    { &hf_rrlp_SeqOfDGANSSSgnElement_item,
9957
16
      { "DGANSSSgnElement", "rrlp.DGANSSSgnElement_element",
9958
16
        FT_NONE, BASE_NONE, NULL, 0,
9959
16
        NULL, HFILL }},
9960
16
    { &hf_rrlp_svID,
9961
16
      { "svID", "rrlp.svID",
9962
16
        FT_UINT32, BASE_DEC, NULL, 0,
9963
16
        NULL, HFILL }},
9964
16
    { &hf_rrlp_iod,
9965
16
      { "iod", "rrlp.iod",
9966
16
        FT_UINT32, BASE_DEC, NULL, 0,
9967
16
        "INTEGER_0_1023", HFILL }},
9968
16
    { &hf_rrlp_nonBroadcastIndFlag,
9969
16
      { "nonBroadcastIndFlag", "rrlp.nonBroadcastIndFlag",
9970
16
        FT_UINT32, BASE_DEC, NULL, 0,
9971
16
        "INTEGER_0_1", HFILL }},
9972
16
    { &hf_rrlp_ganssSatelliteList,
9973
16
      { "ganssSatelliteList", "rrlp.ganssSatelliteList",
9974
16
        FT_UINT32, BASE_DEC, NULL, 0,
9975
16
        "SeqOfGANSSSatelliteElement", HFILL }},
9976
16
    { &hf_rrlp_SeqOfGANSSSatelliteElement_item,
9977
16
      { "GANSSSatelliteElement", "rrlp.GANSSSatelliteElement_element",
9978
16
        FT_NONE, BASE_NONE, NULL, 0,
9979
16
        NULL, HFILL }},
9980
16
    { &hf_rrlp_svHealth,
9981
16
      { "svHealth", "rrlp.svHealth",
9982
16
        FT_BYTES, BASE_NONE, NULL, 0,
9983
16
        "BIT_STRING_SIZE_5", HFILL }},
9984
16
    { &hf_rrlp_ganssClockModel,
9985
16
      { "ganssClockModel", "rrlp.ganssClockModel",
9986
16
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSClockModel_vals), 0,
9987
16
        NULL, HFILL }},
9988
16
    { &hf_rrlp_ganssOrbitModel,
9989
16
      { "ganssOrbitModel", "rrlp.ganssOrbitModel",
9990
16
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSOrbitModel_vals), 0,
9991
16
        NULL, HFILL }},
9992
16
    { &hf_rrlp_svHealthMSB,
9993
16
      { "svHealthMSB", "rrlp.svHealthMSB",
9994
16
        FT_BYTES, BASE_NONE, NULL, 0,
9995
16
        "BIT_STRING_SIZE_1", HFILL }},
9996
16
    { &hf_rrlp_iodMSB,
9997
16
      { "iodMSB", "rrlp.iodMSB",
9998
16
        FT_UINT32, BASE_DEC, NULL, 0,
9999
16
        "INTEGER_0_1", HFILL }},
10000
16
    { &hf_rrlp_svHealthExt,
10001
16
      { "svHealthExt", "rrlp.svHealthExt",
10002
16
        FT_BYTES, BASE_NONE, NULL, 0,
10003
16
        "BIT_STRING_SIZE_4", HFILL }},
10004
16
    { &hf_rrlp_keplerianSet,
10005
16
      { "keplerianSet", "rrlp.keplerianSet_element",
10006
16
        FT_NONE, BASE_NONE, NULL, 0,
10007
16
        "NavModel_KeplerianSet", HFILL }},
10008
16
    { &hf_rrlp_navKeplerianSet,
10009
16
      { "navKeplerianSet", "rrlp.navKeplerianSet_element",
10010
16
        FT_NONE, BASE_NONE, NULL, 0,
10011
16
        "NavModel_NAVKeplerianSet", HFILL }},
10012
16
    { &hf_rrlp_cnavKeplerianSet,
10013
16
      { "cnavKeplerianSet", "rrlp.cnavKeplerianSet_element",
10014
16
        FT_NONE, BASE_NONE, NULL, 0,
10015
16
        "NavModel_CNAVKeplerianSet", HFILL }},
10016
16
    { &hf_rrlp_glonassECEF,
10017
16
      { "glonassECEF", "rrlp.glonassECEF_element",
10018
16
        FT_NONE, BASE_NONE, NULL, 0,
10019
16
        "NavModel_GLONASSecef", HFILL }},
10020
16
    { &hf_rrlp_sbasECEF,
10021
16
      { "sbasECEF", "rrlp.sbasECEF_element",
10022
16
        FT_NONE, BASE_NONE, NULL, 0,
10023
16
        "NavModel_SBASecef", HFILL }},
10024
16
    { &hf_rrlp_bdsKeplerianSet_r12,
10025
16
      { "bdsKeplerianSet-r12", "rrlp.bdsKeplerianSet_r12_element",
10026
16
        FT_NONE, BASE_NONE, NULL, 0,
10027
16
        "NavModel_BDSKeplerianSet_r12", HFILL }},
10028
16
    { &hf_rrlp_keplerToe,
10029
16
      { "keplerToe", "rrlp.keplerToe",
10030
16
        FT_UINT32, BASE_DEC, NULL, 0,
10031
16
        "INTEGER_0_16383", HFILL }},
10032
16
    { &hf_rrlp_keplerW,
10033
16
      { "keplerW", "rrlp.keplerW",
10034
16
        FT_INT32, BASE_DEC, NULL, 0,
10035
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10036
16
    { &hf_rrlp_keplerDeltaN,
10037
16
      { "keplerDeltaN", "rrlp.keplerDeltaN",
10038
16
        FT_INT32, BASE_DEC, NULL, 0,
10039
16
        "INTEGER_M32768_32767", HFILL }},
10040
16
    { &hf_rrlp_keplerM0,
10041
16
      { "keplerM0", "rrlp.keplerM0",
10042
16
        FT_INT32, BASE_DEC, NULL, 0,
10043
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10044
16
    { &hf_rrlp_keplerOmegaDot,
10045
16
      { "keplerOmegaDot", "rrlp.keplerOmegaDot",
10046
16
        FT_INT32, BASE_DEC, NULL, 0,
10047
16
        "INTEGER_M8388608_8388607", HFILL }},
10048
16
    { &hf_rrlp_keplerE,
10049
16
      { "keplerE", "rrlp.keplerE",
10050
16
        FT_UINT32, BASE_DEC, NULL, 0,
10051
16
        "INTEGER_0_4294967295", HFILL }},
10052
16
    { &hf_rrlp_keplerIDot,
10053
16
      { "keplerIDot", "rrlp.keplerIDot",
10054
16
        FT_INT32, BASE_DEC, NULL, 0,
10055
16
        "INTEGER_M8192_8191", HFILL }},
10056
16
    { &hf_rrlp_keplerAPowerHalf,
10057
16
      { "keplerAPowerHalf", "rrlp.keplerAPowerHalf",
10058
16
        FT_UINT32, BASE_DEC, NULL, 0,
10059
16
        "INTEGER_0_4294967295", HFILL }},
10060
16
    { &hf_rrlp_keplerI0,
10061
16
      { "keplerI0", "rrlp.keplerI0",
10062
16
        FT_INT32, BASE_DEC, NULL, 0,
10063
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10064
16
    { &hf_rrlp_keplerOmega0,
10065
16
      { "keplerOmega0", "rrlp.keplerOmega0",
10066
16
        FT_INT32, BASE_DEC, NULL, 0,
10067
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10068
16
    { &hf_rrlp_keplerCrs,
10069
16
      { "keplerCrs", "rrlp.keplerCrs",
10070
16
        FT_INT32, BASE_DEC, NULL, 0,
10071
16
        "INTEGER_M32768_32767", HFILL }},
10072
16
    { &hf_rrlp_keplerCis,
10073
16
      { "keplerCis", "rrlp.keplerCis",
10074
16
        FT_INT32, BASE_DEC, NULL, 0,
10075
16
        "INTEGER_M32768_32767", HFILL }},
10076
16
    { &hf_rrlp_keplerCus,
10077
16
      { "keplerCus", "rrlp.keplerCus",
10078
16
        FT_INT32, BASE_DEC, NULL, 0,
10079
16
        "INTEGER_M32768_32767", HFILL }},
10080
16
    { &hf_rrlp_keplerCrc,
10081
16
      { "keplerCrc", "rrlp.keplerCrc",
10082
16
        FT_INT32, BASE_DEC, NULL, 0,
10083
16
        "INTEGER_M32768_32767", HFILL }},
10084
16
    { &hf_rrlp_keplerCic,
10085
16
      { "keplerCic", "rrlp.keplerCic",
10086
16
        FT_INT32, BASE_DEC, NULL, 0,
10087
16
        "INTEGER_M32768_32767", HFILL }},
10088
16
    { &hf_rrlp_keplerCuc,
10089
16
      { "keplerCuc", "rrlp.keplerCuc",
10090
16
        FT_INT32, BASE_DEC, NULL, 0,
10091
16
        "INTEGER_M32768_32767", HFILL }},
10092
16
    { &hf_rrlp_navURA,
10093
16
      { "navURA", "rrlp.navURA",
10094
16
        FT_UINT32, BASE_DEC, NULL, 0,
10095
16
        "INTEGER_0_15", HFILL }},
10096
16
    { &hf_rrlp_navFitFlag,
10097
16
      { "navFitFlag", "rrlp.navFitFlag",
10098
16
        FT_UINT32, BASE_DEC, NULL, 0,
10099
16
        "INTEGER_0_1", HFILL }},
10100
16
    { &hf_rrlp_navToe,
10101
16
      { "navToe", "rrlp.navToe",
10102
16
        FT_UINT32, BASE_DEC, NULL, 0,
10103
16
        "INTEGER_0_37799", HFILL }},
10104
16
    { &hf_rrlp_navOmega,
10105
16
      { "navOmega", "rrlp.navOmega",
10106
16
        FT_INT32, BASE_DEC, NULL, 0,
10107
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10108
16
    { &hf_rrlp_navDeltaN,
10109
16
      { "navDeltaN", "rrlp.navDeltaN",
10110
16
        FT_INT32, BASE_DEC, NULL, 0,
10111
16
        "INTEGER_M32768_32767", HFILL }},
10112
16
    { &hf_rrlp_navM0,
10113
16
      { "navM0", "rrlp.navM0",
10114
16
        FT_INT32, BASE_DEC, NULL, 0,
10115
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10116
16
    { &hf_rrlp_navOmegaADot,
10117
16
      { "navOmegaADot", "rrlp.navOmegaADot",
10118
16
        FT_INT32, BASE_DEC, NULL, 0,
10119
16
        "INTEGER_M8388608_8388607", HFILL }},
10120
16
    { &hf_rrlp_navE,
10121
16
      { "navE", "rrlp.navE",
10122
16
        FT_UINT32, BASE_DEC, NULL, 0,
10123
16
        "INTEGER_0_4294967295", HFILL }},
10124
16
    { &hf_rrlp_navIDot,
10125
16
      { "navIDot", "rrlp.navIDot",
10126
16
        FT_INT32, BASE_DEC, NULL, 0,
10127
16
        "INTEGER_M8192_8191", HFILL }},
10128
16
    { &hf_rrlp_navAPowerHalf,
10129
16
      { "navAPowerHalf", "rrlp.navAPowerHalf",
10130
16
        FT_UINT32, BASE_DEC, NULL, 0,
10131
16
        "INTEGER_0_4294967295", HFILL }},
10132
16
    { &hf_rrlp_navI0,
10133
16
      { "navI0", "rrlp.navI0",
10134
16
        FT_INT32, BASE_DEC, NULL, 0,
10135
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10136
16
    { &hf_rrlp_navOmegaA0,
10137
16
      { "navOmegaA0", "rrlp.navOmegaA0",
10138
16
        FT_INT32, BASE_DEC, NULL, 0,
10139
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10140
16
    { &hf_rrlp_navCrs,
10141
16
      { "navCrs", "rrlp.navCrs",
10142
16
        FT_INT32, BASE_DEC, NULL, 0,
10143
16
        "INTEGER_M32768_32767", HFILL }},
10144
16
    { &hf_rrlp_navCis,
10145
16
      { "navCis", "rrlp.navCis",
10146
16
        FT_INT32, BASE_DEC, NULL, 0,
10147
16
        "INTEGER_M32768_32767", HFILL }},
10148
16
    { &hf_rrlp_navCus,
10149
16
      { "navCus", "rrlp.navCus",
10150
16
        FT_INT32, BASE_DEC, NULL, 0,
10151
16
        "INTEGER_M32768_32767", HFILL }},
10152
16
    { &hf_rrlp_navCrc,
10153
16
      { "navCrc", "rrlp.navCrc",
10154
16
        FT_INT32, BASE_DEC, NULL, 0,
10155
16
        "INTEGER_M32768_32767", HFILL }},
10156
16
    { &hf_rrlp_navCic,
10157
16
      { "navCic", "rrlp.navCic",
10158
16
        FT_INT32, BASE_DEC, NULL, 0,
10159
16
        "INTEGER_M32768_32767", HFILL }},
10160
16
    { &hf_rrlp_navCuc,
10161
16
      { "navCuc", "rrlp.navCuc",
10162
16
        FT_INT32, BASE_DEC, NULL, 0,
10163
16
        "INTEGER_M32768_32767", HFILL }},
10164
16
    { &hf_rrlp_cnavTop,
10165
16
      { "cnavTop", "rrlp.cnavTop",
10166
16
        FT_UINT32, BASE_DEC, NULL, 0,
10167
16
        "INTEGER_0_2015", HFILL }},
10168
16
    { &hf_rrlp_cnavURAindex,
10169
16
      { "cnavURAindex", "rrlp.cnavURAindex",
10170
16
        FT_INT32, BASE_DEC, NULL, 0,
10171
16
        "INTEGER_M16_15", HFILL }},
10172
16
    { &hf_rrlp_cnavDeltaA,
10173
16
      { "cnavDeltaA", "rrlp.cnavDeltaA",
10174
16
        FT_INT32, BASE_DEC, NULL, 0,
10175
16
        "INTEGER_M33554432_33554431", HFILL }},
10176
16
    { &hf_rrlp_cnavAdot,
10177
16
      { "cnavAdot", "rrlp.cnavAdot",
10178
16
        FT_INT32, BASE_DEC, NULL, 0,
10179
16
        "INTEGER_M16777216_16777215", HFILL }},
10180
16
    { &hf_rrlp_cnavDeltaNo,
10181
16
      { "cnavDeltaNo", "rrlp.cnavDeltaNo",
10182
16
        FT_INT32, BASE_DEC, NULL, 0,
10183
16
        "INTEGER_M65536_65535", HFILL }},
10184
16
    { &hf_rrlp_cnavDeltaNoDot,
10185
16
      { "cnavDeltaNoDot", "rrlp.cnavDeltaNoDot",
10186
16
        FT_INT32, BASE_DEC, NULL, 0,
10187
16
        "INTEGER_M4194304_4194303", HFILL }},
10188
16
    { &hf_rrlp_cnavMo,
10189
16
      { "cnavMo", "rrlp.cnavMo",
10190
16
        FT_INT64, BASE_DEC, NULL, 0,
10191
16
        "INTEGER_M4294967296_4294967295", HFILL }},
10192
16
    { &hf_rrlp_cnavE,
10193
16
      { "cnavE", "rrlp.cnavE",
10194
16
        FT_UINT64, BASE_DEC, NULL, 0,
10195
16
        "INTEGER_0_8589934591", HFILL }},
10196
16
    { &hf_rrlp_cnavOmega,
10197
16
      { "cnavOmega", "rrlp.cnavOmega",
10198
16
        FT_INT64, BASE_DEC, NULL, 0,
10199
16
        "INTEGER_M4294967296_4294967295", HFILL }},
10200
16
    { &hf_rrlp_cnavOMEGA0,
10201
16
      { "cnavOMEGA0", "rrlp.cnavOMEGA0",
10202
16
        FT_INT64, BASE_DEC, NULL, 0,
10203
16
        "INTEGER_M4294967296_4294967295", HFILL }},
10204
16
    { &hf_rrlp_cnavDeltaOmegaDot,
10205
16
      { "cnavDeltaOmegaDot", "rrlp.cnavDeltaOmegaDot",
10206
16
        FT_INT32, BASE_DEC, NULL, 0,
10207
16
        "INTEGER_M65536_65535", HFILL }},
10208
16
    { &hf_rrlp_cnavIo,
10209
16
      { "cnavIo", "rrlp.cnavIo",
10210
16
        FT_INT64, BASE_DEC, NULL, 0,
10211
16
        "INTEGER_M4294967296_4294967295", HFILL }},
10212
16
    { &hf_rrlp_cnavIoDot,
10213
16
      { "cnavIoDot", "rrlp.cnavIoDot",
10214
16
        FT_INT32, BASE_DEC, NULL, 0,
10215
16
        "INTEGER_M16384_16383", HFILL }},
10216
16
    { &hf_rrlp_cnavCis,
10217
16
      { "cnavCis", "rrlp.cnavCis",
10218
16
        FT_INT32, BASE_DEC, NULL, 0,
10219
16
        "INTEGER_M32768_32767", HFILL }},
10220
16
    { &hf_rrlp_cnavCic,
10221
16
      { "cnavCic", "rrlp.cnavCic",
10222
16
        FT_INT32, BASE_DEC, NULL, 0,
10223
16
        "INTEGER_M32768_32767", HFILL }},
10224
16
    { &hf_rrlp_cnavCrs,
10225
16
      { "cnavCrs", "rrlp.cnavCrs",
10226
16
        FT_INT32, BASE_DEC, NULL, 0,
10227
16
        "INTEGER_M8388608_8388607", HFILL }},
10228
16
    { &hf_rrlp_cnavCrc,
10229
16
      { "cnavCrc", "rrlp.cnavCrc",
10230
16
        FT_INT32, BASE_DEC, NULL, 0,
10231
16
        "INTEGER_M8388608_8388607", HFILL }},
10232
16
    { &hf_rrlp_cnavCus,
10233
16
      { "cnavCus", "rrlp.cnavCus",
10234
16
        FT_INT32, BASE_DEC, NULL, 0,
10235
16
        "INTEGER_M1048576_1048575", HFILL }},
10236
16
    { &hf_rrlp_cnavCuc,
10237
16
      { "cnavCuc", "rrlp.cnavCuc",
10238
16
        FT_INT32, BASE_DEC, NULL, 0,
10239
16
        "INTEGER_M1048576_1048575", HFILL }},
10240
16
    { &hf_rrlp_gloEn,
10241
16
      { "gloEn", "rrlp.gloEn",
10242
16
        FT_UINT32, BASE_DEC, NULL, 0,
10243
16
        "INTEGER_0_31", HFILL }},
10244
16
    { &hf_rrlp_gloP1,
10245
16
      { "gloP1", "rrlp.gloP1",
10246
16
        FT_BYTES, BASE_NONE, NULL, 0,
10247
16
        "BIT_STRING_SIZE_2", HFILL }},
10248
16
    { &hf_rrlp_gloP2,
10249
16
      { "gloP2", "rrlp.gloP2",
10250
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10251
16
        "BOOLEAN", HFILL }},
10252
16
    { &hf_rrlp_gloM,
10253
16
      { "gloM", "rrlp.gloM",
10254
16
        FT_UINT32, BASE_DEC, NULL, 0,
10255
16
        "INTEGER_0_3", HFILL }},
10256
16
    { &hf_rrlp_gloX,
10257
16
      { "gloX", "rrlp.gloX",
10258
16
        FT_INT32, BASE_DEC, NULL, 0,
10259
16
        "INTEGER_M67108864_67108863", HFILL }},
10260
16
    { &hf_rrlp_gloXdot,
10261
16
      { "gloXdot", "rrlp.gloXdot",
10262
16
        FT_INT32, BASE_DEC, NULL, 0,
10263
16
        "INTEGER_M8388608_8388607", HFILL }},
10264
16
    { &hf_rrlp_gloXdotdot,
10265
16
      { "gloXdotdot", "rrlp.gloXdotdot",
10266
16
        FT_INT32, BASE_DEC, NULL, 0,
10267
16
        "INTEGER_M16_15", HFILL }},
10268
16
    { &hf_rrlp_gloY,
10269
16
      { "gloY", "rrlp.gloY",
10270
16
        FT_INT32, BASE_DEC, NULL, 0,
10271
16
        "INTEGER_M67108864_67108863", HFILL }},
10272
16
    { &hf_rrlp_gloYdot,
10273
16
      { "gloYdot", "rrlp.gloYdot",
10274
16
        FT_INT32, BASE_DEC, NULL, 0,
10275
16
        "INTEGER_M8388608_8388607", HFILL }},
10276
16
    { &hf_rrlp_gloYdotdot,
10277
16
      { "gloYdotdot", "rrlp.gloYdotdot",
10278
16
        FT_INT32, BASE_DEC, NULL, 0,
10279
16
        "INTEGER_M16_15", HFILL }},
10280
16
    { &hf_rrlp_gloZ,
10281
16
      { "gloZ", "rrlp.gloZ",
10282
16
        FT_INT32, BASE_DEC, NULL, 0,
10283
16
        "INTEGER_M67108864_67108863", HFILL }},
10284
16
    { &hf_rrlp_gloZdot,
10285
16
      { "gloZdot", "rrlp.gloZdot",
10286
16
        FT_INT32, BASE_DEC, NULL, 0,
10287
16
        "INTEGER_M8388608_8388607", HFILL }},
10288
16
    { &hf_rrlp_gloZdotdot,
10289
16
      { "gloZdotdot", "rrlp.gloZdotdot",
10290
16
        FT_INT32, BASE_DEC, NULL, 0,
10291
16
        "INTEGER_M16_15", HFILL }},
10292
16
    { &hf_rrlp_sbasTo,
10293
16
      { "sbasTo", "rrlp.sbasTo",
10294
16
        FT_UINT32, BASE_DEC, NULL, 0,
10295
16
        "INTEGER_0_5399", HFILL }},
10296
16
    { &hf_rrlp_sbasAccuracy,
10297
16
      { "sbasAccuracy", "rrlp.sbasAccuracy",
10298
16
        FT_BYTES, BASE_NONE, NULL, 0,
10299
16
        "BIT_STRING_SIZE_4", HFILL }},
10300
16
    { &hf_rrlp_sbasXg,
10301
16
      { "sbasXg", "rrlp.sbasXg",
10302
16
        FT_INT32, BASE_DEC, NULL, 0,
10303
16
        "INTEGER_M536870912_536870911", HFILL }},
10304
16
    { &hf_rrlp_sbasYg,
10305
16
      { "sbasYg", "rrlp.sbasYg",
10306
16
        FT_INT32, BASE_DEC, NULL, 0,
10307
16
        "INTEGER_M536870912_536870911", HFILL }},
10308
16
    { &hf_rrlp_sbasZg,
10309
16
      { "sbasZg", "rrlp.sbasZg",
10310
16
        FT_INT32, BASE_DEC, NULL, 0,
10311
16
        "INTEGER_M16777216_16777215", HFILL }},
10312
16
    { &hf_rrlp_sbasXgDot,
10313
16
      { "sbasXgDot", "rrlp.sbasXgDot",
10314
16
        FT_INT32, BASE_DEC, NULL, 0,
10315
16
        "INTEGER_M65536_65535", HFILL }},
10316
16
    { &hf_rrlp_sbasYgDot,
10317
16
      { "sbasYgDot", "rrlp.sbasYgDot",
10318
16
        FT_INT32, BASE_DEC, NULL, 0,
10319
16
        "INTEGER_M65536_65535", HFILL }},
10320
16
    { &hf_rrlp_sbasZgDot,
10321
16
      { "sbasZgDot", "rrlp.sbasZgDot",
10322
16
        FT_INT32, BASE_DEC, NULL, 0,
10323
16
        "INTEGER_M131072_131071", HFILL }},
10324
16
    { &hf_rrlp_sbasXgDotDot,
10325
16
      { "sbasXgDotDot", "rrlp.sbasXgDotDot",
10326
16
        FT_INT32, BASE_DEC, NULL, 0,
10327
16
        "INTEGER_M512_511", HFILL }},
10328
16
    { &hf_rrlp_sbagYgDotDot,
10329
16
      { "sbagYgDotDot", "rrlp.sbagYgDotDot",
10330
16
        FT_INT32, BASE_DEC, NULL, 0,
10331
16
        "INTEGER_M512_511", HFILL }},
10332
16
    { &hf_rrlp_sbasZgDotDot,
10333
16
      { "sbasZgDotDot", "rrlp.sbasZgDotDot",
10334
16
        FT_INT32, BASE_DEC, NULL, 0,
10335
16
        "INTEGER_M512_511", HFILL }},
10336
16
    { &hf_rrlp_bdsAODE_r12,
10337
16
      { "bdsAODE-r12", "rrlp.bdsAODE_r12",
10338
16
        FT_UINT32, BASE_DEC, NULL, 0,
10339
16
        "INTEGER_0_31", HFILL }},
10340
16
    { &hf_rrlp_bdsURAI_r12,
10341
16
      { "bdsURAI-r12", "rrlp.bdsURAI_r12",
10342
16
        FT_UINT32, BASE_DEC, NULL, 0,
10343
16
        "INTEGER_0_15", HFILL }},
10344
16
    { &hf_rrlp_bdsToe_r12,
10345
16
      { "bdsToe-r12", "rrlp.bdsToe_r12",
10346
16
        FT_UINT32, BASE_DEC, NULL, 0,
10347
16
        "INTEGER_0_131071", HFILL }},
10348
16
    { &hf_rrlp_bdsAPowerHalf_r12,
10349
16
      { "bdsAPowerHalf-r12", "rrlp.bdsAPowerHalf_r12",
10350
16
        FT_UINT32, BASE_DEC, NULL, 0,
10351
16
        "INTEGER_0_4294967295", HFILL }},
10352
16
    { &hf_rrlp_bdsE_r12,
10353
16
      { "bdsE-r12", "rrlp.bdsE_r12",
10354
16
        FT_UINT32, BASE_DEC, NULL, 0,
10355
16
        "INTEGER_0_4294967295", HFILL }},
10356
16
    { &hf_rrlp_bdsW_r12,
10357
16
      { "bdsW-r12", "rrlp.bdsW_r12",
10358
16
        FT_INT32, BASE_DEC, NULL, 0,
10359
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10360
16
    { &hf_rrlp_bdsDeltaN_r12,
10361
16
      { "bdsDeltaN-r12", "rrlp.bdsDeltaN_r12",
10362
16
        FT_INT32, BASE_DEC, NULL, 0,
10363
16
        "INTEGER_M32768_32767", HFILL }},
10364
16
    { &hf_rrlp_bdsM0_r12,
10365
16
      { "bdsM0-r12", "rrlp.bdsM0_r12",
10366
16
        FT_INT32, BASE_DEC, NULL, 0,
10367
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10368
16
    { &hf_rrlp_bdsOmega0_r12,
10369
16
      { "bdsOmega0-r12", "rrlp.bdsOmega0_r12",
10370
16
        FT_INT32, BASE_DEC, NULL, 0,
10371
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10372
16
    { &hf_rrlp_bdsOmegaDot_r12,
10373
16
      { "bdsOmegaDot-r12", "rrlp.bdsOmegaDot_r12",
10374
16
        FT_INT32, BASE_DEC, NULL, 0,
10375
16
        "INTEGER_M8388608_8388607", HFILL }},
10376
16
    { &hf_rrlp_bdsI0_r12,
10377
16
      { "bdsI0-r12", "rrlp.bdsI0_r12",
10378
16
        FT_INT32, BASE_DEC, NULL, 0,
10379
16
        "INTEGER_M2147483648_2147483647", HFILL }},
10380
16
    { &hf_rrlp_bdsIDot_r12,
10381
16
      { "bdsIDot-r12", "rrlp.bdsIDot_r12",
10382
16
        FT_INT32, BASE_DEC, NULL, 0,
10383
16
        "INTEGER_M8192_8191", HFILL }},
10384
16
    { &hf_rrlp_bdsCuc_r12,
10385
16
      { "bdsCuc-r12", "rrlp.bdsCuc_r12",
10386
16
        FT_INT32, BASE_DEC, NULL, 0,
10387
16
        "INTEGER_M131072_131071", HFILL }},
10388
16
    { &hf_rrlp_bdsCus_r12,
10389
16
      { "bdsCus-r12", "rrlp.bdsCus_r12",
10390
16
        FT_INT32, BASE_DEC, NULL, 0,
10391
16
        "INTEGER_M131072_131071", HFILL }},
10392
16
    { &hf_rrlp_bdsCrc_r12,
10393
16
      { "bdsCrc-r12", "rrlp.bdsCrc_r12",
10394
16
        FT_INT32, BASE_DEC, NULL, 0,
10395
16
        "INTEGER_M131072_131071", HFILL }},
10396
16
    { &hf_rrlp_bdsCrs_r12,
10397
16
      { "bdsCrs-r12", "rrlp.bdsCrs_r12",
10398
16
        FT_INT32, BASE_DEC, NULL, 0,
10399
16
        "INTEGER_M131072_131071", HFILL }},
10400
16
    { &hf_rrlp_bdsCic_r12,
10401
16
      { "bdsCic-r12", "rrlp.bdsCic_r12",
10402
16
        FT_INT32, BASE_DEC, NULL, 0,
10403
16
        "INTEGER_M131072_131071", HFILL }},
10404
16
    { &hf_rrlp_bdsCis_r12,
10405
16
      { "bdsCis-r12", "rrlp.bdsCis_r12",
10406
16
        FT_INT32, BASE_DEC, NULL, 0,
10407
16
        "INTEGER_M131072_131071", HFILL }},
10408
16
    { &hf_rrlp_standardClockModelList,
10409
16
      { "standardClockModelList", "rrlp.standardClockModelList",
10410
16
        FT_UINT32, BASE_DEC, NULL, 0,
10411
16
        "SeqOfStandardClockModelElement", HFILL }},
10412
16
    { &hf_rrlp_navClockModel,
10413
16
      { "navClockModel", "rrlp.navClockModel_element",
10414
16
        FT_NONE, BASE_NONE, NULL, 0,
10415
16
        NULL, HFILL }},
10416
16
    { &hf_rrlp_cnavClockModel,
10417
16
      { "cnavClockModel", "rrlp.cnavClockModel_element",
10418
16
        FT_NONE, BASE_NONE, NULL, 0,
10419
16
        NULL, HFILL }},
10420
16
    { &hf_rrlp_glonassClockModel,
10421
16
      { "glonassClockModel", "rrlp.glonassClockModel_element",
10422
16
        FT_NONE, BASE_NONE, NULL, 0,
10423
16
        NULL, HFILL }},
10424
16
    { &hf_rrlp_sbasClockModel,
10425
16
      { "sbasClockModel", "rrlp.sbasClockModel_element",
10426
16
        FT_NONE, BASE_NONE, NULL, 0,
10427
16
        NULL, HFILL }},
10428
16
    { &hf_rrlp_bdsClockModel_r12,
10429
16
      { "bdsClockModel-r12", "rrlp.bdsClockModel_r12_element",
10430
16
        FT_NONE, BASE_NONE, NULL, 0,
10431
16
        NULL, HFILL }},
10432
16
    { &hf_rrlp_SeqOfStandardClockModelElement_item,
10433
16
      { "StandardClockModelElement", "rrlp.StandardClockModelElement_element",
10434
16
        FT_NONE, BASE_NONE, NULL, 0,
10435
16
        NULL, HFILL }},
10436
16
    { &hf_rrlp_stanClockToc,
10437
16
      { "stanClockToc", "rrlp.stanClockToc",
10438
16
        FT_UINT32, BASE_DEC, NULL, 0,
10439
16
        "INTEGER_0_16383", HFILL }},
10440
16
    { &hf_rrlp_stanClockAF2,
10441
16
      { "stanClockAF2", "rrlp.stanClockAF2",
10442
16
        FT_INT32, BASE_DEC, NULL, 0,
10443
16
        "INTEGER_M32_31", HFILL }},
10444
16
    { &hf_rrlp_stanClockAF1,
10445
16
      { "stanClockAF1", "rrlp.stanClockAF1",
10446
16
        FT_INT32, BASE_DEC, NULL, 0,
10447
16
        "INTEGER_M1048576_1048575", HFILL }},
10448
16
    { &hf_rrlp_stanClockAF0,
10449
16
      { "stanClockAF0", "rrlp.stanClockAF0",
10450
16
        FT_INT32, BASE_DEC, NULL, 0,
10451
16
        "INTEGER_M1073741824_1073741823", HFILL }},
10452
16
    { &hf_rrlp_stanClockTgd,
10453
16
      { "stanClockTgd", "rrlp.stanClockTgd",
10454
16
        FT_INT32, BASE_DEC, NULL, 0,
10455
16
        "INTEGER_M512_511", HFILL }},
10456
16
    { &hf_rrlp_stanModelID,
10457
16
      { "stanModelID", "rrlp.stanModelID",
10458
16
        FT_UINT32, BASE_DEC, NULL, 0,
10459
16
        "INTEGER_0_1", HFILL }},
10460
16
    { &hf_rrlp_navToc,
10461
16
      { "navToc", "rrlp.navToc",
10462
16
        FT_UINT32, BASE_DEC, NULL, 0,
10463
16
        "INTEGER_0_37799", HFILL }},
10464
16
    { &hf_rrlp_navaf2,
10465
16
      { "navaf2", "rrlp.navaf2",
10466
16
        FT_INT32, BASE_DEC, NULL, 0,
10467
16
        "INTEGER_M128_127", HFILL }},
10468
16
    { &hf_rrlp_navaf1,
10469
16
      { "navaf1", "rrlp.navaf1",
10470
16
        FT_INT32, BASE_DEC, NULL, 0,
10471
16
        "INTEGER_M32768_32767", HFILL }},
10472
16
    { &hf_rrlp_navaf0,
10473
16
      { "navaf0", "rrlp.navaf0",
10474
16
        FT_INT32, BASE_DEC, NULL, 0,
10475
16
        "INTEGER_M2097152_2097151", HFILL }},
10476
16
    { &hf_rrlp_navTgd,
10477
16
      { "navTgd", "rrlp.navTgd",
10478
16
        FT_INT32, BASE_DEC, NULL, 0,
10479
16
        "INTEGER_M128_127", HFILL }},
10480
16
    { &hf_rrlp_cnavToc,
10481
16
      { "cnavToc", "rrlp.cnavToc",
10482
16
        FT_UINT32, BASE_DEC, NULL, 0,
10483
16
        "INTEGER_0_2015", HFILL }},
10484
16
    { &hf_rrlp_cnavURA0,
10485
16
      { "cnavURA0", "rrlp.cnavURA0",
10486
16
        FT_INT32, BASE_DEC, NULL, 0,
10487
16
        "INTEGER_M16_15", HFILL }},
10488
16
    { &hf_rrlp_cnavURA1,
10489
16
      { "cnavURA1", "rrlp.cnavURA1",
10490
16
        FT_UINT32, BASE_DEC, NULL, 0,
10491
16
        "INTEGER_0_7", HFILL }},
10492
16
    { &hf_rrlp_cnavURA2,
10493
16
      { "cnavURA2", "rrlp.cnavURA2",
10494
16
        FT_UINT32, BASE_DEC, NULL, 0,
10495
16
        "INTEGER_0_7", HFILL }},
10496
16
    { &hf_rrlp_cnavAf2,
10497
16
      { "cnavAf2", "rrlp.cnavAf2",
10498
16
        FT_INT32, BASE_DEC, NULL, 0,
10499
16
        "INTEGER_M512_511", HFILL }},
10500
16
    { &hf_rrlp_cnavAf1,
10501
16
      { "cnavAf1", "rrlp.cnavAf1",
10502
16
        FT_INT32, BASE_DEC, NULL, 0,
10503
16
        "INTEGER_M524288_524287", HFILL }},
10504
16
    { &hf_rrlp_cnavAf0,
10505
16
      { "cnavAf0", "rrlp.cnavAf0",
10506
16
        FT_INT32, BASE_DEC, NULL, 0,
10507
16
        "INTEGER_M33554432_33554431", HFILL }},
10508
16
    { &hf_rrlp_cnavTgd,
10509
16
      { "cnavTgd", "rrlp.cnavTgd",
10510
16
        FT_INT32, BASE_DEC, NULL, 0,
10511
16
        "INTEGER_M4096_4095", HFILL }},
10512
16
    { &hf_rrlp_cnavISCl1cp,
10513
16
      { "cnavISCl1cp", "rrlp.cnavISCl1cp",
10514
16
        FT_INT32, BASE_DEC, NULL, 0,
10515
16
        "INTEGER_M4096_4095", HFILL }},
10516
16
    { &hf_rrlp_cnavISCl1cd,
10517
16
      { "cnavISCl1cd", "rrlp.cnavISCl1cd",
10518
16
        FT_INT32, BASE_DEC, NULL, 0,
10519
16
        "INTEGER_M4096_4095", HFILL }},
10520
16
    { &hf_rrlp_cnavISCl1ca,
10521
16
      { "cnavISCl1ca", "rrlp.cnavISCl1ca",
10522
16
        FT_INT32, BASE_DEC, NULL, 0,
10523
16
        "INTEGER_M4096_4095", HFILL }},
10524
16
    { &hf_rrlp_cnavISCl2c,
10525
16
      { "cnavISCl2c", "rrlp.cnavISCl2c",
10526
16
        FT_INT32, BASE_DEC, NULL, 0,
10527
16
        "INTEGER_M4096_4095", HFILL }},
10528
16
    { &hf_rrlp_cnavISCl5i5,
10529
16
      { "cnavISCl5i5", "rrlp.cnavISCl5i5",
10530
16
        FT_INT32, BASE_DEC, NULL, 0,
10531
16
        "INTEGER_M4096_4095", HFILL }},
10532
16
    { &hf_rrlp_cnavISCl5q5,
10533
16
      { "cnavISCl5q5", "rrlp.cnavISCl5q5",
10534
16
        FT_INT32, BASE_DEC, NULL, 0,
10535
16
        "INTEGER_M4096_4095", HFILL }},
10536
16
    { &hf_rrlp_gloTau,
10537
16
      { "gloTau", "rrlp.gloTau",
10538
16
        FT_INT32, BASE_DEC, NULL, 0,
10539
16
        "INTEGER_M2097152_2097151", HFILL }},
10540
16
    { &hf_rrlp_gloGamma,
10541
16
      { "gloGamma", "rrlp.gloGamma",
10542
16
        FT_INT32, BASE_DEC, NULL, 0,
10543
16
        "INTEGER_M1024_1023", HFILL }},
10544
16
    { &hf_rrlp_gloDeltaTau,
10545
16
      { "gloDeltaTau", "rrlp.gloDeltaTau",
10546
16
        FT_INT32, BASE_DEC, NULL, 0,
10547
16
        "INTEGER_M16_15", HFILL }},
10548
16
    { &hf_rrlp_sbasAgfo,
10549
16
      { "sbasAgfo", "rrlp.sbasAgfo",
10550
16
        FT_INT32, BASE_DEC, NULL, 0,
10551
16
        "INTEGER_M2048_2047", HFILL }},
10552
16
    { &hf_rrlp_sbasAgf1,
10553
16
      { "sbasAgf1", "rrlp.sbasAgf1",
10554
16
        FT_INT32, BASE_DEC, NULL, 0,
10555
16
        "INTEGER_M128_127", HFILL }},
10556
16
    { &hf_rrlp_bdsAODC_r12,
10557
16
      { "bdsAODC-r12", "rrlp.bdsAODC_r12",
10558
16
        FT_UINT32, BASE_DEC, NULL, 0,
10559
16
        "INTEGER_0_31", HFILL }},
10560
16
    { &hf_rrlp_bdsToc_r12,
10561
16
      { "bdsToc-r12", "rrlp.bdsToc_r12",
10562
16
        FT_UINT32, BASE_DEC, NULL, 0,
10563
16
        "INTEGER_0_131071", HFILL }},
10564
16
    { &hf_rrlp_bdsA0_r12,
10565
16
      { "bdsA0-r12", "rrlp.bdsA0_r12",
10566
16
        FT_INT32, BASE_DEC, NULL, 0,
10567
16
        "INTEGER_M8388608_8388607", HFILL }},
10568
16
    { &hf_rrlp_bdsA1_r12,
10569
16
      { "bdsA1-r12", "rrlp.bdsA1_r12",
10570
16
        FT_INT32, BASE_DEC, NULL, 0,
10571
16
        "INTEGER_M2097152_2097151", HFILL }},
10572
16
    { &hf_rrlp_bdsA2_r12,
10573
16
      { "bdsA2-r12", "rrlp.bdsA2_r12",
10574
16
        FT_INT32, BASE_DEC, NULL, 0,
10575
16
        "INTEGER_M1024_1023", HFILL }},
10576
16
    { &hf_rrlp_bdsTgd1_r12,
10577
16
      { "bdsTgd1-r12", "rrlp.bdsTgd1_r12",
10578
16
        FT_INT32, BASE_DEC, NULL, 0,
10579
16
        "INTEGER_M512_511", HFILL }},
10580
16
    { &hf_rrlp_ganssBadSignalList,
10581
16
      { "ganssBadSignalList", "rrlp.ganssBadSignalList",
10582
16
        FT_UINT32, BASE_DEC, NULL, 0,
10583
16
        "SeqOfBadSignalElement", HFILL }},
10584
16
    { &hf_rrlp_SeqOfBadSignalElement_item,
10585
16
      { "BadSignalElement", "rrlp.BadSignalElement_element",
10586
16
        FT_NONE, BASE_NONE, NULL, 0,
10587
16
        NULL, HFILL }},
10588
16
    { &hf_rrlp_badSVID,
10589
16
      { "badSVID", "rrlp.badSVID",
10590
16
        FT_UINT32, BASE_DEC, NULL, 0,
10591
16
        "SVID", HFILL }},
10592
16
    { &hf_rrlp_badSignalID,
10593
16
      { "badSignalID", "rrlp.badSignalID",
10594
16
        FT_BYTES, BASE_NONE, NULL, 0,
10595
16
        "GANSSSignals", HFILL }},
10596
16
    { &hf_rrlp_ganssTOD_01,
10597
16
      { "ganssTOD", "rrlp.ganssTOD",
10598
16
        FT_UINT32, BASE_DEC, NULL, 0,
10599
16
        "INTEGER_0_59", HFILL }},
10600
16
    { &hf_rrlp_ganssDataBitsSatList,
10601
16
      { "ganssDataBitsSatList", "rrlp.ganssDataBitsSatList",
10602
16
        FT_UINT32, BASE_DEC, NULL, 0,
10603
16
        "SeqOfGanssDataBitsElement", HFILL }},
10604
16
    { &hf_rrlp_SeqOfGanssDataBitsElement_item,
10605
16
      { "GanssDataBitsElement", "rrlp.GanssDataBitsElement_element",
10606
16
        FT_NONE, BASE_NONE, NULL, 0,
10607
16
        NULL, HFILL }},
10608
16
    { &hf_rrlp_ganssDataBitsSgnList,
10609
16
      { "ganssDataBitsSgnList", "rrlp.ganssDataBitsSgnList",
10610
16
        FT_UINT32, BASE_DEC, NULL, 0,
10611
16
        "Seq_OfGANSSDataBitsSgn", HFILL }},
10612
16
    { &hf_rrlp_Seq_OfGANSSDataBitsSgn_item,
10613
16
      { "GANSSDataBitsSgnElement", "rrlp.GANSSDataBitsSgnElement_element",
10614
16
        FT_NONE, BASE_NONE, NULL, 0,
10615
16
        NULL, HFILL }},
10616
16
    { &hf_rrlp_ganssSignalType,
10617
16
      { "ganssSignalType", "rrlp.ganssSignalType",
10618
16
        FT_UINT32, BASE_DEC, NULL, 0,
10619
16
        "GANSSSignalID", HFILL }},
10620
16
    { &hf_rrlp_ganssDataBits,
10621
16
      { "ganssDataBits", "rrlp.ganssDataBits",
10622
16
        FT_UINT32, BASE_DEC, NULL, 0,
10623
16
        "SeqOf_GANSSDataBits", HFILL }},
10624
16
    { &hf_rrlp_SeqOf_GANSSDataBits_item,
10625
16
      { "GANSSDataBit", "rrlp.GANSSDataBit",
10626
16
        FT_UINT32, BASE_DEC, NULL, 0,
10627
16
        NULL, HFILL }},
10628
16
    { &hf_rrlp_ganssRefMeasAssistList,
10629
16
      { "ganssRefMeasAssistList", "rrlp.ganssRefMeasAssistList",
10630
16
        FT_UINT32, BASE_DEC, NULL, 0,
10631
16
        "SeqOfGANSSRefMeasurementElement", HFILL }},
10632
16
    { &hf_rrlp_SeqOfGANSSRefMeasurementElement_item,
10633
16
      { "GANSSRefMeasurementElement", "rrlp.GANSSRefMeasurementElement_element",
10634
16
        FT_NONE, BASE_NONE, NULL, 0,
10635
16
        NULL, HFILL }},
10636
16
    { &hf_rrlp_additionalDoppler,
10637
16
      { "additionalDoppler", "rrlp.additionalDoppler_element",
10638
16
        FT_NONE, BASE_NONE, NULL, 0,
10639
16
        "AdditionalDopplerFields", HFILL }},
10640
16
    { &hf_rrlp_intCodePhase_01,
10641
16
      { "intCodePhase", "rrlp.intCodePhase",
10642
16
        FT_UINT32, BASE_DEC, NULL, 0,
10643
16
        "INTEGER_0_127", HFILL }},
10644
16
    { &hf_rrlp_codePhaseSearchWindow_01,
10645
16
      { "codePhaseSearchWindow", "rrlp.codePhaseSearchWindow",
10646
16
        FT_UINT32, BASE_DEC, NULL, 0,
10647
16
        "INTEGER_0_31", HFILL }},
10648
16
    { &hf_rrlp_additionalAngle,
10649
16
      { "additionalAngle", "rrlp.additionalAngle_element",
10650
16
        FT_NONE, BASE_NONE, NULL, 0,
10651
16
        "AddionalAngleFields", HFILL }},
10652
16
    { &hf_rrlp_codePhase1023,
10653
16
      { "codePhase1023", "rrlp.codePhase1023",
10654
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10655
16
        "BOOLEAN", HFILL }},
10656
16
    { &hf_rrlp_dopplerUncertainty_01,
10657
16
      { "dopplerUncertainty", "rrlp.dopplerUncertainty",
10658
16
        FT_UINT32, BASE_DEC, NULL, 0,
10659
16
        "INTEGER_0_4", HFILL }},
10660
16
    { &hf_rrlp_GANSSRefMeasurementAssist_R10_Ext_item,
10661
16
      { "GANSSRefMeasurement-R10-Ext-Element", "rrlp.GANSSRefMeasurement_R10_Ext_Element_element",
10662
16
        FT_NONE, BASE_NONE, NULL, 0,
10663
16
        NULL, HFILL }},
10664
16
    { &hf_rrlp_azimuthLSB,
10665
16
      { "azimuthLSB", "rrlp.azimuthLSB",
10666
16
        FT_UINT32, BASE_DEC, NULL, 0,
10667
16
        "INTEGER_0_15", HFILL }},
10668
16
    { &hf_rrlp_elevationLSB,
10669
16
      { "elevationLSB", "rrlp.elevationLSB",
10670
16
        FT_UINT32, BASE_DEC, NULL, 0,
10671
16
        "INTEGER_0_15", HFILL }},
10672
16
    { &hf_rrlp_confidence,
10673
16
      { "confidence", "rrlp.confidence",
10674
16
        FT_UINT32, BASE_DEC, NULL, 0,
10675
16
        "INTEGER_0_100", HFILL }},
10676
16
    { &hf_rrlp_ganssRefMeasAssistList_01,
10677
16
      { "ganssRefMeasAssistList", "rrlp.ganssRefMeasAssistList",
10678
16
        FT_UINT32, BASE_DEC, NULL, 0,
10679
16
        "SeqOfGANSSRefMeasurementElement_R12", HFILL }},
10680
16
    { &hf_rrlp_SeqOfGANSSRefMeasurementElement_R12_item,
10681
16
      { "GANSSRefMeasurement-R12-Ext-Element", "rrlp.GANSSRefMeasurement_R12_Ext_Element_element",
10682
16
        FT_NONE, BASE_NONE, NULL, 0,
10683
16
        NULL, HFILL }},
10684
16
    { &hf_rrlp_dopplerUncertaintyExt,
10685
16
      { "dopplerUncertaintyExt", "rrlp.dopplerUncertaintyExt",
10686
16
        FT_UINT32, BASE_DEC, VALS(rrlp_T_dopplerUncertaintyExt_vals), 0,
10687
16
        NULL, HFILL }},
10688
16
    { &hf_rrlp_weekNumber_01,
10689
16
      { "weekNumber", "rrlp.weekNumber",
10690
16
        FT_UINT32, BASE_DEC, NULL, 0,
10691
16
        "INTEGER_0_255", HFILL }},
10692
16
    { &hf_rrlp_toa,
10693
16
      { "toa", "rrlp.toa",
10694
16
        FT_UINT32, BASE_DEC, NULL, 0,
10695
16
        "INTEGER_0_255", HFILL }},
10696
16
    { &hf_rrlp_ioda,
10697
16
      { "ioda", "rrlp.ioda",
10698
16
        FT_UINT32, BASE_DEC, NULL, 0,
10699
16
        "INTEGER_0_3", HFILL }},
10700
16
    { &hf_rrlp_ganssAlmanacList,
10701
16
      { "ganssAlmanacList", "rrlp.ganssAlmanacList",
10702
16
        FT_UINT32, BASE_DEC, NULL, 0,
10703
16
        "SeqOfGANSSAlmanacElement", HFILL }},
10704
16
    { &hf_rrlp_SeqOfGANSSAlmanacElement_item,
10705
16
      { "GANSSAlmanacElement", "rrlp.GANSSAlmanacElement",
10706
16
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAlmanacElement_vals), 0,
10707
16
        NULL, HFILL }},
10708
16
    { &hf_rrlp_keplerianAlmanacSet,
10709
16
      { "keplerianAlmanacSet", "rrlp.keplerianAlmanacSet_element",
10710
16
        FT_NONE, BASE_NONE, NULL, 0,
10711
16
        "Almanac_KeplerianSet", HFILL }},
10712
16
    { &hf_rrlp_keplerianNAVAlmanac,
10713
16
      { "keplerianNAVAlmanac", "rrlp.keplerianNAVAlmanac_element",
10714
16
        FT_NONE, BASE_NONE, NULL, 0,
10715
16
        "Almanac_NAVKeplerianSet", HFILL }},
10716
16
    { &hf_rrlp_keplerianReducedAlmanac,
10717
16
      { "keplerianReducedAlmanac", "rrlp.keplerianReducedAlmanac_element",
10718
16
        FT_NONE, BASE_NONE, NULL, 0,
10719
16
        "Almanac_ReducedKeplerianSet", HFILL }},
10720
16
    { &hf_rrlp_keplerianMidiAlmanac,
10721
16
      { "keplerianMidiAlmanac", "rrlp.keplerianMidiAlmanac_element",
10722
16
        FT_NONE, BASE_NONE, NULL, 0,
10723
16
        "Almanac_MidiAlmanacSet", HFILL }},
10724
16
    { &hf_rrlp_keplerianGLONASS,
10725
16
      { "keplerianGLONASS", "rrlp.keplerianGLONASS_element",
10726
16
        FT_NONE, BASE_NONE, NULL, 0,
10727
16
        "Almanac_GlonassAlmanacSet", HFILL }},
10728
16
    { &hf_rrlp_ecefSBASAlmanac,
10729
16
      { "ecefSBASAlmanac", "rrlp.ecefSBASAlmanac_element",
10730
16
        FT_NONE, BASE_NONE, NULL, 0,
10731
16
        "Almanac_ECEFsbasAlmanacSet", HFILL }},
10732
16
    { &hf_rrlp_keplerianBDSAlmanac_r12,
10733
16
      { "keplerianBDSAlmanac-r12", "rrlp.keplerianBDSAlmanac_r12_element",
10734
16
        FT_NONE, BASE_NONE, NULL, 0,
10735
16
        "Almanac_BDSAlmanacSet_r12", HFILL }},
10736
16
    { &hf_rrlp_kepAlmanacE,
10737
16
      { "kepAlmanacE", "rrlp.kepAlmanacE",
10738
16
        FT_UINT32, BASE_DEC, NULL, 0,
10739
16
        "INTEGER_0_2047", HFILL }},
10740
16
    { &hf_rrlp_kepAlmanacDeltaI,
10741
16
      { "kepAlmanacDeltaI", "rrlp.kepAlmanacDeltaI",
10742
16
        FT_INT32, BASE_DEC, NULL, 0,
10743
16
        "INTEGER_M1024_1023", HFILL }},
10744
16
    { &hf_rrlp_kepAlmanacOmegaDot,
10745
16
      { "kepAlmanacOmegaDot", "rrlp.kepAlmanacOmegaDot",
10746
16
        FT_INT32, BASE_DEC, NULL, 0,
10747
16
        "INTEGER_M1024_1023", HFILL }},
10748
16
    { &hf_rrlp_kepSVStatusINAV,
10749
16
      { "kepSVStatusINAV", "rrlp.kepSVStatusINAV",
10750
16
        FT_BYTES, BASE_NONE, NULL, 0,
10751
16
        "BIT_STRING_SIZE_4", HFILL }},
10752
16
    { &hf_rrlp_kepSVStatusFNAV,
10753
16
      { "kepSVStatusFNAV", "rrlp.kepSVStatusFNAV",
10754
16
        FT_BYTES, BASE_NONE, NULL, 0,
10755
16
        "BIT_STRING_SIZE_2", HFILL }},
10756
16
    { &hf_rrlp_kepAlmanacAPowerHalf,
10757
16
      { "kepAlmanacAPowerHalf", "rrlp.kepAlmanacAPowerHalf",
10758
16
        FT_INT32, BASE_DEC, NULL, 0,
10759
16
        "INTEGER_M4096_4095", HFILL }},
10760
16
    { &hf_rrlp_kepAlmanacOmega0,
10761
16
      { "kepAlmanacOmega0", "rrlp.kepAlmanacOmega0",
10762
16
        FT_INT32, BASE_DEC, NULL, 0,
10763
16
        "INTEGER_M32768_32767", HFILL }},
10764
16
    { &hf_rrlp_kepAlmanacW,
10765
16
      { "kepAlmanacW", "rrlp.kepAlmanacW",
10766
16
        FT_INT32, BASE_DEC, NULL, 0,
10767
16
        "INTEGER_M32768_32767", HFILL }},
10768
16
    { &hf_rrlp_kepAlmanacM0,
10769
16
      { "kepAlmanacM0", "rrlp.kepAlmanacM0",
10770
16
        FT_INT32, BASE_DEC, NULL, 0,
10771
16
        "INTEGER_M32768_32767", HFILL }},
10772
16
    { &hf_rrlp_kepAlmanacAF0,
10773
16
      { "kepAlmanacAF0", "rrlp.kepAlmanacAF0",
10774
16
        FT_INT32, BASE_DEC, NULL, 0,
10775
16
        "INTEGER_M32768_32767", HFILL }},
10776
16
    { &hf_rrlp_kepAlmanacAF1,
10777
16
      { "kepAlmanacAF1", "rrlp.kepAlmanacAF1",
10778
16
        FT_INT32, BASE_DEC, NULL, 0,
10779
16
        "INTEGER_M4096_4095", HFILL }},
10780
16
    { &hf_rrlp_navAlmE,
10781
16
      { "navAlmE", "rrlp.navAlmE",
10782
16
        FT_UINT32, BASE_DEC, NULL, 0,
10783
16
        "INTEGER_0_65535", HFILL }},
10784
16
    { &hf_rrlp_navAlmDeltaI,
10785
16
      { "navAlmDeltaI", "rrlp.navAlmDeltaI",
10786
16
        FT_INT32, BASE_DEC, NULL, 0,
10787
16
        "INTEGER_M32768_32767", HFILL }},
10788
16
    { &hf_rrlp_navAlmOMEGADOT,
10789
16
      { "navAlmOMEGADOT", "rrlp.navAlmOMEGADOT",
10790
16
        FT_INT32, BASE_DEC, NULL, 0,
10791
16
        "INTEGER_M32768_32767", HFILL }},
10792
16
    { &hf_rrlp_navAlmSVHealth,
10793
16
      { "navAlmSVHealth", "rrlp.navAlmSVHealth",
10794
16
        FT_UINT32, BASE_DEC, NULL, 0,
10795
16
        "INTEGER_0_255", HFILL }},
10796
16
    { &hf_rrlp_navAlmSqrtA,
10797
16
      { "navAlmSqrtA", "rrlp.navAlmSqrtA",
10798
16
        FT_UINT32, BASE_DEC, NULL, 0,
10799
16
        "INTEGER_0_16777215", HFILL }},
10800
16
    { &hf_rrlp_navAlmOMEGAo,
10801
16
      { "navAlmOMEGAo", "rrlp.navAlmOMEGAo",
10802
16
        FT_INT32, BASE_DEC, NULL, 0,
10803
16
        "INTEGER_M8388608_8388607", HFILL }},
10804
16
    { &hf_rrlp_navAlmOmega,
10805
16
      { "navAlmOmega", "rrlp.navAlmOmega",
10806
16
        FT_INT32, BASE_DEC, NULL, 0,
10807
16
        "INTEGER_M8388608_8388607", HFILL }},
10808
16
    { &hf_rrlp_navAlmMo,
10809
16
      { "navAlmMo", "rrlp.navAlmMo",
10810
16
        FT_INT32, BASE_DEC, NULL, 0,
10811
16
        "INTEGER_M8388608_8388607", HFILL }},
10812
16
    { &hf_rrlp_navAlmaf0,
10813
16
      { "navAlmaf0", "rrlp.navAlmaf0",
10814
16
        FT_INT32, BASE_DEC, NULL, 0,
10815
16
        "INTEGER_M1024_1023", HFILL }},
10816
16
    { &hf_rrlp_navAlmaf1,
10817
16
      { "navAlmaf1", "rrlp.navAlmaf1",
10818
16
        FT_INT32, BASE_DEC, NULL, 0,
10819
16
        "INTEGER_M1024_1023", HFILL }},
10820
16
    { &hf_rrlp_redAlmDeltaA,
10821
16
      { "redAlmDeltaA", "rrlp.redAlmDeltaA",
10822
16
        FT_INT32, BASE_DEC, NULL, 0,
10823
16
        "INTEGER_M128_127", HFILL }},
10824
16
    { &hf_rrlp_redAlmOmega0,
10825
16
      { "redAlmOmega0", "rrlp.redAlmOmega0",
10826
16
        FT_INT32, BASE_DEC, NULL, 0,
10827
16
        "INTEGER_M64_63", HFILL }},
10828
16
    { &hf_rrlp_redAlmPhi0,
10829
16
      { "redAlmPhi0", "rrlp.redAlmPhi0",
10830
16
        FT_INT32, BASE_DEC, NULL, 0,
10831
16
        "INTEGER_M64_63", HFILL }},
10832
16
    { &hf_rrlp_redAlmL1Health,
10833
16
      { "redAlmL1Health", "rrlp.redAlmL1Health",
10834
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10835
16
        "BOOLEAN", HFILL }},
10836
16
    { &hf_rrlp_redAlmL2Health,
10837
16
      { "redAlmL2Health", "rrlp.redAlmL2Health",
10838
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10839
16
        "BOOLEAN", HFILL }},
10840
16
    { &hf_rrlp_redAlmL5Health,
10841
16
      { "redAlmL5Health", "rrlp.redAlmL5Health",
10842
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10843
16
        "BOOLEAN", HFILL }},
10844
16
    { &hf_rrlp_midiAlmE,
10845
16
      { "midiAlmE", "rrlp.midiAlmE",
10846
16
        FT_UINT32, BASE_DEC, NULL, 0,
10847
16
        "INTEGER_0_2047", HFILL }},
10848
16
    { &hf_rrlp_midiAlmDeltaI,
10849
16
      { "midiAlmDeltaI", "rrlp.midiAlmDeltaI",
10850
16
        FT_INT32, BASE_DEC, NULL, 0,
10851
16
        "INTEGER_M1024_1023", HFILL }},
10852
16
    { &hf_rrlp_midiAlmOmegaDot,
10853
16
      { "midiAlmOmegaDot", "rrlp.midiAlmOmegaDot",
10854
16
        FT_INT32, BASE_DEC, NULL, 0,
10855
16
        "INTEGER_M1024_1023", HFILL }},
10856
16
    { &hf_rrlp_midiAlmSqrtA,
10857
16
      { "midiAlmSqrtA", "rrlp.midiAlmSqrtA",
10858
16
        FT_UINT32, BASE_DEC, NULL, 0,
10859
16
        "INTEGER_0_131071", HFILL }},
10860
16
    { &hf_rrlp_midiAlmOmega0,
10861
16
      { "midiAlmOmega0", "rrlp.midiAlmOmega0",
10862
16
        FT_INT32, BASE_DEC, NULL, 0,
10863
16
        "INTEGER_M32768_32767", HFILL }},
10864
16
    { &hf_rrlp_midiAlmOmega,
10865
16
      { "midiAlmOmega", "rrlp.midiAlmOmega",
10866
16
        FT_INT32, BASE_DEC, NULL, 0,
10867
16
        "INTEGER_M32768_32767", HFILL }},
10868
16
    { &hf_rrlp_midiAlmMo,
10869
16
      { "midiAlmMo", "rrlp.midiAlmMo",
10870
16
        FT_INT32, BASE_DEC, NULL, 0,
10871
16
        "INTEGER_M32768_32767", HFILL }},
10872
16
    { &hf_rrlp_midiAlmaf0,
10873
16
      { "midiAlmaf0", "rrlp.midiAlmaf0",
10874
16
        FT_INT32, BASE_DEC, NULL, 0,
10875
16
        "INTEGER_M1024_1023", HFILL }},
10876
16
    { &hf_rrlp_midiAlmaf1,
10877
16
      { "midiAlmaf1", "rrlp.midiAlmaf1",
10878
16
        FT_INT32, BASE_DEC, NULL, 0,
10879
16
        "INTEGER_M512_511", HFILL }},
10880
16
    { &hf_rrlp_midiAlmL1Health,
10881
16
      { "midiAlmL1Health", "rrlp.midiAlmL1Health",
10882
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10883
16
        "BOOLEAN", HFILL }},
10884
16
    { &hf_rrlp_midiAlmL2Health,
10885
16
      { "midiAlmL2Health", "rrlp.midiAlmL2Health",
10886
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10887
16
        "BOOLEAN", HFILL }},
10888
16
    { &hf_rrlp_midiAlmL5Health,
10889
16
      { "midiAlmL5Health", "rrlp.midiAlmL5Health",
10890
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10891
16
        "BOOLEAN", HFILL }},
10892
16
    { &hf_rrlp_gloAlmNA,
10893
16
      { "gloAlmNA", "rrlp.gloAlmNA",
10894
16
        FT_UINT32, BASE_DEC, NULL, 0,
10895
16
        "INTEGER_1_1461", HFILL }},
10896
16
    { &hf_rrlp_gloAlmnA,
10897
16
      { "gloAlmnA", "rrlp.gloAlmnA",
10898
16
        FT_UINT32, BASE_DEC, NULL, 0,
10899
16
        "INTEGER_1_24", HFILL }},
10900
16
    { &hf_rrlp_gloAlmHA,
10901
16
      { "gloAlmHA", "rrlp.gloAlmHA",
10902
16
        FT_UINT32, BASE_DEC, NULL, 0,
10903
16
        "INTEGER_0_31", HFILL }},
10904
16
    { &hf_rrlp_gloAlmLambdaA,
10905
16
      { "gloAlmLambdaA", "rrlp.gloAlmLambdaA",
10906
16
        FT_INT32, BASE_DEC, NULL, 0,
10907
16
        "INTEGER_M1048576_1048575", HFILL }},
10908
16
    { &hf_rrlp_gloAlmtlambdaA,
10909
16
      { "gloAlmtlambdaA", "rrlp.gloAlmtlambdaA",
10910
16
        FT_UINT32, BASE_DEC, NULL, 0,
10911
16
        "INTEGER_0_2097151", HFILL }},
10912
16
    { &hf_rrlp_gloAlmDeltaIa,
10913
16
      { "gloAlmDeltaIa", "rrlp.gloAlmDeltaIa",
10914
16
        FT_INT32, BASE_DEC, NULL, 0,
10915
16
        "INTEGER_M131072_131071", HFILL }},
10916
16
    { &hf_rrlp_gloAlmDeltaTA,
10917
16
      { "gloAlmDeltaTA", "rrlp.gloAlmDeltaTA",
10918
16
        FT_INT32, BASE_DEC, NULL, 0,
10919
16
        "INTEGER_M2097152_2097151", HFILL }},
10920
16
    { &hf_rrlp_gloAlmDeltaTdotA,
10921
16
      { "gloAlmDeltaTdotA", "rrlp.gloAlmDeltaTdotA",
10922
16
        FT_INT32, BASE_DEC, NULL, 0,
10923
16
        "INTEGER_M64_63", HFILL }},
10924
16
    { &hf_rrlp_gloAlmEpsilonA,
10925
16
      { "gloAlmEpsilonA", "rrlp.gloAlmEpsilonA",
10926
16
        FT_UINT32, BASE_DEC, NULL, 0,
10927
16
        "INTEGER_0_32767", HFILL }},
10928
16
    { &hf_rrlp_gloAlmOmegaA,
10929
16
      { "gloAlmOmegaA", "rrlp.gloAlmOmegaA",
10930
16
        FT_INT32, BASE_DEC, NULL, 0,
10931
16
        "INTEGER_M32768_32767", HFILL }},
10932
16
    { &hf_rrlp_gloAlmTauA,
10933
16
      { "gloAlmTauA", "rrlp.gloAlmTauA",
10934
16
        FT_INT32, BASE_DEC, NULL, 0,
10935
16
        "INTEGER_M512_511", HFILL }},
10936
16
    { &hf_rrlp_gloAlmCA,
10937
16
      { "gloAlmCA", "rrlp.gloAlmCA",
10938
16
        FT_UINT32, BASE_DEC, NULL, 0,
10939
16
        "INTEGER_0_1", HFILL }},
10940
16
    { &hf_rrlp_gloAlmMA,
10941
16
      { "gloAlmMA", "rrlp.gloAlmMA",
10942
16
        FT_BYTES, BASE_NONE, NULL, 0,
10943
16
        "BIT_STRING_SIZE_2", HFILL }},
10944
16
    { &hf_rrlp_sbasAlmDataID,
10945
16
      { "sbasAlmDataID", "rrlp.sbasAlmDataID",
10946
16
        FT_UINT32, BASE_DEC, NULL, 0,
10947
16
        "INTEGER_0_3", HFILL }},
10948
16
    { &hf_rrlp_sbasAlmHealth,
10949
16
      { "sbasAlmHealth", "rrlp.sbasAlmHealth",
10950
16
        FT_BYTES, BASE_NONE, NULL, 0,
10951
16
        "BIT_STRING_SIZE_8", HFILL }},
10952
16
    { &hf_rrlp_sbasAlmXg,
10953
16
      { "sbasAlmXg", "rrlp.sbasAlmXg",
10954
16
        FT_INT32, BASE_DEC, NULL, 0,
10955
16
        "INTEGER_M16384_16383", HFILL }},
10956
16
    { &hf_rrlp_sbasAlmYg,
10957
16
      { "sbasAlmYg", "rrlp.sbasAlmYg",
10958
16
        FT_INT32, BASE_DEC, NULL, 0,
10959
16
        "INTEGER_M16384_16383", HFILL }},
10960
16
    { &hf_rrlp_sbasAlmZg,
10961
16
      { "sbasAlmZg", "rrlp.sbasAlmZg",
10962
16
        FT_INT32, BASE_DEC, NULL, 0,
10963
16
        "INTEGER_M256_255", HFILL }},
10964
16
    { &hf_rrlp_sbasAlmXgdot,
10965
16
      { "sbasAlmXgdot", "rrlp.sbasAlmXgdot",
10966
16
        FT_INT32, BASE_DEC, NULL, 0,
10967
16
        "INTEGER_M4_3", HFILL }},
10968
16
    { &hf_rrlp_sbasAlmYgDot,
10969
16
      { "sbasAlmYgDot", "rrlp.sbasAlmYgDot",
10970
16
        FT_INT32, BASE_DEC, NULL, 0,
10971
16
        "INTEGER_M4_3", HFILL }},
10972
16
    { &hf_rrlp_sbasAlmZgDot,
10973
16
      { "sbasAlmZgDot", "rrlp.sbasAlmZgDot",
10974
16
        FT_INT32, BASE_DEC, NULL, 0,
10975
16
        "INTEGER_M8_7", HFILL }},
10976
16
    { &hf_rrlp_sbasAlmTo,
10977
16
      { "sbasAlmTo", "rrlp.sbasAlmTo",
10978
16
        FT_UINT32, BASE_DEC, NULL, 0,
10979
16
        "INTEGER_0_2047", HFILL }},
10980
16
    { &hf_rrlp_bdsAlmToa_r12,
10981
16
      { "bdsAlmToa-r12", "rrlp.bdsAlmToa_r12",
10982
16
        FT_UINT32, BASE_DEC, NULL, 0,
10983
16
        "INTEGER_0_255", HFILL }},
10984
16
    { &hf_rrlp_bdsAlmSqrtA_r12,
10985
16
      { "bdsAlmSqrtA-r12", "rrlp.bdsAlmSqrtA_r12",
10986
16
        FT_UINT32, BASE_DEC, NULL, 0,
10987
16
        "INTEGER_0_16777215", HFILL }},
10988
16
    { &hf_rrlp_bdsAlmE_r12,
10989
16
      { "bdsAlmE-r12", "rrlp.bdsAlmE_r12",
10990
16
        FT_UINT32, BASE_DEC, NULL, 0,
10991
16
        "INTEGER_0_131071", HFILL }},
10992
16
    { &hf_rrlp_bdsAlmW_r12,
10993
16
      { "bdsAlmW-r12", "rrlp.bdsAlmW_r12",
10994
16
        FT_INT32, BASE_DEC, NULL, 0,
10995
16
        "INTEGER_M8388608_8388607", HFILL }},
10996
16
    { &hf_rrlp_bdsAlmM0_r12,
10997
16
      { "bdsAlmM0-r12", "rrlp.bdsAlmM0_r12",
10998
16
        FT_INT32, BASE_DEC, NULL, 0,
10999
16
        "INTEGER_M8388608_8388607", HFILL }},
11000
16
    { &hf_rrlp_bdsAlmOmega0_r12,
11001
16
      { "bdsAlmOmega0-r12", "rrlp.bdsAlmOmega0_r12",
11002
16
        FT_INT32, BASE_DEC, NULL, 0,
11003
16
        "INTEGER_M8388608_8388607", HFILL }},
11004
16
    { &hf_rrlp_bdsAlmOmegaDot_r12,
11005
16
      { "bdsAlmOmegaDot-r12", "rrlp.bdsAlmOmegaDot_r12",
11006
16
        FT_INT32, BASE_DEC, NULL, 0,
11007
16
        "INTEGER_M65536_65535", HFILL }},
11008
16
    { &hf_rrlp_bdsAlmDeltaI_r12,
11009
16
      { "bdsAlmDeltaI-r12", "rrlp.bdsAlmDeltaI_r12",
11010
16
        FT_INT32, BASE_DEC, NULL, 0,
11011
16
        "INTEGER_M32768_32767", HFILL }},
11012
16
    { &hf_rrlp_bdsAlmA0_r12,
11013
16
      { "bdsAlmA0-r12", "rrlp.bdsAlmA0_r12",
11014
16
        FT_INT32, BASE_DEC, NULL, 0,
11015
16
        "INTEGER_M1024_1023", HFILL }},
11016
16
    { &hf_rrlp_bdsAlmA1_r12,
11017
16
      { "bdsAlmA1-r12", "rrlp.bdsAlmA1_r12",
11018
16
        FT_INT32, BASE_DEC, NULL, 0,
11019
16
        "INTEGER_M1024_1023", HFILL }},
11020
16
    { &hf_rrlp_bdsSvHealth_r12,
11021
16
      { "bdsSvHealth-r12", "rrlp.bdsSvHealth_r12",
11022
16
        FT_BYTES, BASE_NONE, NULL, 0,
11023
16
        "BIT_STRING_SIZE_9", HFILL }},
11024
16
    { &hf_rrlp_completeAlmanacProvided,
11025
16
      { "completeAlmanacProvided", "rrlp.completeAlmanacProvided",
11026
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
11027
16
        "BOOLEAN", HFILL }},
11028
16
    { &hf_rrlp_toa_ext,
11029
16
      { "toa-ext", "rrlp.toa_ext",
11030
16
        FT_UINT32, BASE_DEC, NULL, 0,
11031
16
        "INTEGER_256_1023", HFILL }},
11032
16
    { &hf_rrlp_ioda_ext,
11033
16
      { "ioda-ext", "rrlp.ioda_ext",
11034
16
        FT_UINT32, BASE_DEC, NULL, 0,
11035
16
        "INTEGER_4_15", HFILL }},
11036
16
    { &hf_rrlp_ganssUtcA1,
11037
16
      { "ganssUtcA1", "rrlp.ganssUtcA1",
11038
16
        FT_INT32, BASE_DEC, NULL, 0,
11039
16
        "INTEGER_M8388608_8388607", HFILL }},
11040
16
    { &hf_rrlp_ganssUtcA0,
11041
16
      { "ganssUtcA0", "rrlp.ganssUtcA0",
11042
16
        FT_INT32, BASE_DEC, NULL, 0,
11043
16
        "INTEGER_M2147483648_2147483647", HFILL }},
11044
16
    { &hf_rrlp_ganssUtcTot,
11045
16
      { "ganssUtcTot", "rrlp.ganssUtcTot",
11046
16
        FT_UINT32, BASE_DEC, NULL, 0,
11047
16
        "INTEGER_0_255", HFILL }},
11048
16
    { &hf_rrlp_ganssUtcWNt,
11049
16
      { "ganssUtcWNt", "rrlp.ganssUtcWNt",
11050
16
        FT_UINT32, BASE_DEC, NULL, 0,
11051
16
        "INTEGER_0_255", HFILL }},
11052
16
    { &hf_rrlp_ganssUtcDeltaTls,
11053
16
      { "ganssUtcDeltaTls", "rrlp.ganssUtcDeltaTls",
11054
16
        FT_INT32, BASE_DEC, NULL, 0,
11055
16
        "INTEGER_M128_127", HFILL }},
11056
16
    { &hf_rrlp_ganssUtcWNlsf,
11057
16
      { "ganssUtcWNlsf", "rrlp.ganssUtcWNlsf",
11058
16
        FT_UINT32, BASE_DEC, NULL, 0,
11059
16
        "INTEGER_0_255", HFILL }},
11060
16
    { &hf_rrlp_ganssUtcDN,
11061
16
      { "ganssUtcDN", "rrlp.ganssUtcDN",
11062
16
        FT_INT32, BASE_DEC, NULL, 0,
11063
16
        "INTEGER_M128_127", HFILL }},
11064
16
    { &hf_rrlp_ganssUtcDeltaTlsf,
11065
16
      { "ganssUtcDeltaTlsf", "rrlp.ganssUtcDeltaTlsf",
11066
16
        FT_INT32, BASE_DEC, NULL, 0,
11067
16
        "INTEGER_M128_127", HFILL }},
11068
16
    { &hf_rrlp_ganssEphemerisHeader,
11069
16
      { "ganssEphemerisHeader", "rrlp.ganssEphemerisHeader_element",
11070
16
        FT_NONE, BASE_NONE, NULL, 0,
11071
16
        "GANSSEphemerisExtensionHeader", HFILL }},
11072
16
    { &hf_rrlp_ganssReferenceSet,
11073
16
      { "ganssReferenceSet", "rrlp.ganssReferenceSet",
11074
16
        FT_UINT32, BASE_DEC, NULL, 0,
11075
16
        "SeqOfGANSSRefOrbit", HFILL }},
11076
16
    { &hf_rrlp_ganssephemerisDeltasMatrix,
11077
16
      { "ganssephemerisDeltasMatrix", "rrlp.ganssephemerisDeltasMatrix",
11078
16
        FT_UINT32, BASE_DEC, NULL, 0,
11079
16
        "GANSSEphemerisDeltaMatrix", HFILL }},
11080
16
    { &hf_rrlp_timeAtEstimation,
11081
16
      { "timeAtEstimation", "rrlp.timeAtEstimation_element",
11082
16
        FT_NONE, BASE_NONE, NULL, 0,
11083
16
        "GANSSEphemerisExtensionTime", HFILL }},
11084
16
    { &hf_rrlp_validityPeriod,
11085
16
      { "validityPeriod", "rrlp.validityPeriod",
11086
16
        FT_UINT32, BASE_DEC, NULL, 0,
11087
16
        "INTEGER_1_8", HFILL }},
11088
16
    { &hf_rrlp_ephemerisExtensionDuration,
11089
16
      { "ephemerisExtensionDuration", "rrlp.ephemerisExtensionDuration",
11090
16
        FT_UINT32, BASE_DEC, NULL, 0,
11091
16
        "INTEGER_1_512", HFILL }},
11092
16
    { &hf_rrlp_ganssEphExtDay,
11093
16
      { "ganssEphExtDay", "rrlp.ganssEphExtDay",
11094
16
        FT_UINT32, BASE_DEC, NULL, 0,
11095
16
        "INTEGER_0_8191", HFILL }},
11096
16
    { &hf_rrlp_ganssEphExtTOD,
11097
16
      { "ganssEphExtTOD", "rrlp.ganssEphExtTOD",
11098
16
        FT_UINT32, BASE_DEC, NULL, 0,
11099
16
        "GANSSTOD", HFILL }},
11100
16
    { &hf_rrlp_keplerToe_01,
11101
16
      { "keplerToe", "rrlp.keplerToe",
11102
16
        FT_UINT32, BASE_DEC, NULL, 0,
11103
16
        "INTEGER_0_37799", HFILL }},
11104
16
    { &hf_rrlp_SeqOfGANSSRefOrbit_item,
11105
16
      { "GANSSReferenceOrbit", "rrlp.GANSSReferenceOrbit_element",
11106
16
        FT_NONE, BASE_NONE, NULL, 0,
11107
16
        NULL, HFILL }},
11108
16
    { &hf_rrlp_ganssOrbitModel_01,
11109
16
      { "ganssOrbitModel", "rrlp.ganssOrbitModel_element",
11110
16
        FT_NONE, BASE_NONE, NULL, 0,
11111
16
        "ReferenceNavModel", HFILL }},
11112
16
    { &hf_rrlp_GANSSEphemerisDeltaMatrix_item,
11113
16
      { "GANSSEphemerisDeltaEpoch", "rrlp.GANSSEphemerisDeltaEpoch_element",
11114
16
        FT_NONE, BASE_NONE, NULL, 0,
11115
16
        NULL, HFILL }},
11116
16
    { &hf_rrlp_ganssDeltaEpochHeader,
11117
16
      { "ganssDeltaEpochHeader", "rrlp.ganssDeltaEpochHeader_element",
11118
16
        FT_NONE, BASE_NONE, NULL, 0,
11119
16
        NULL, HFILL }},
11120
16
    { &hf_rrlp_ganssDeltaElementList,
11121
16
      { "ganssDeltaElementList", "rrlp.ganssDeltaElementList",
11122
16
        FT_UINT32, BASE_DEC, NULL, 0,
11123
16
        NULL, HFILL }},
11124
16
    { &hf_rrlp_ephemerisDeltaSizes,
11125
16
      { "ephemerisDeltaSizes", "rrlp.ephemerisDeltaSizes_element",
11126
16
        FT_NONE, BASE_NONE, NULL, 0,
11127
16
        "GANSSEphemerisDeltaBitSizes", HFILL }},
11128
16
    { &hf_rrlp_ephemerisDeltaScales,
11129
16
      { "ephemerisDeltaScales", "rrlp.ephemerisDeltaScales_element",
11130
16
        FT_NONE, BASE_NONE, NULL, 0,
11131
16
        "GANSSEphemerisDeltaScales", HFILL }},
11132
16
    { &hf_rrlp_GANSSDeltaElementList_item,
11133
16
      { "GANSSDeltaElementList item", "rrlp.GANSSDeltaElementList_item",
11134
16
        FT_BYTES, BASE_NONE, NULL, 0,
11135
16
        "OCTET_STRING_SIZE_1_49", HFILL }},
11136
16
    { &hf_rrlp_bitsize_delta_omega,
11137
16
      { "bitsize-delta-omega", "rrlp.bitsize_delta_omega",
11138
16
        FT_UINT32, BASE_DEC, NULL, 0,
11139
16
        "INTEGER_1_32", HFILL }},
11140
16
    { &hf_rrlp_bitsize_delta_deltaN,
11141
16
      { "bitsize-delta-deltaN", "rrlp.bitsize_delta_deltaN",
11142
16
        FT_UINT32, BASE_DEC, NULL, 0,
11143
16
        "INTEGER_1_16", HFILL }},
11144
16
    { &hf_rrlp_bitsize_delta_m0,
11145
16
      { "bitsize-delta-m0", "rrlp.bitsize_delta_m0",
11146
16
        FT_UINT32, BASE_DEC, NULL, 0,
11147
16
        "INTEGER_1_32", HFILL }},
11148
16
    { &hf_rrlp_bitsize_delta_omegadot,
11149
16
      { "bitsize-delta-omegadot", "rrlp.bitsize_delta_omegadot",
11150
16
        FT_UINT32, BASE_DEC, NULL, 0,
11151
16
        "INTEGER_1_24", HFILL }},
11152
16
    { &hf_rrlp_bitsize_delta_e,
11153
16
      { "bitsize-delta-e", "rrlp.bitsize_delta_e",
11154
16
        FT_UINT32, BASE_DEC, NULL, 0,
11155
16
        "INTEGER_1_32", HFILL }},
11156
16
    { &hf_rrlp_bitsize_delta_idot,
11157
16
      { "bitsize-delta-idot", "rrlp.bitsize_delta_idot",
11158
16
        FT_UINT32, BASE_DEC, NULL, 0,
11159
16
        "INTEGER_1_14", HFILL }},
11160
16
    { &hf_rrlp_bitsize_delta_sqrtA,
11161
16
      { "bitsize-delta-sqrtA", "rrlp.bitsize_delta_sqrtA",
11162
16
        FT_UINT32, BASE_DEC, NULL, 0,
11163
16
        "INTEGER_1_32", HFILL }},
11164
16
    { &hf_rrlp_bitsize_delta_i0,
11165
16
      { "bitsize-delta-i0", "rrlp.bitsize_delta_i0",
11166
16
        FT_UINT32, BASE_DEC, NULL, 0,
11167
16
        "INTEGER_1_32", HFILL }},
11168
16
    { &hf_rrlp_bitsize_delta_omega0,
11169
16
      { "bitsize-delta-omega0", "rrlp.bitsize_delta_omega0",
11170
16
        FT_UINT32, BASE_DEC, NULL, 0,
11171
16
        "INTEGER_1_32", HFILL }},
11172
16
    { &hf_rrlp_bitsize_delta_crs,
11173
16
      { "bitsize-delta-crs", "rrlp.bitsize_delta_crs",
11174
16
        FT_UINT32, BASE_DEC, NULL, 0,
11175
16
        "INTEGER_1_16", HFILL }},
11176
16
    { &hf_rrlp_bitsize_delta_cis,
11177
16
      { "bitsize-delta-cis", "rrlp.bitsize_delta_cis",
11178
16
        FT_UINT32, BASE_DEC, NULL, 0,
11179
16
        "INTEGER_1_16", HFILL }},
11180
16
    { &hf_rrlp_bitsize_delta_cus,
11181
16
      { "bitsize-delta-cus", "rrlp.bitsize_delta_cus",
11182
16
        FT_UINT32, BASE_DEC, NULL, 0,
11183
16
        "INTEGER_1_16", HFILL }},
11184
16
    { &hf_rrlp_bitsize_delta_crc,
11185
16
      { "bitsize-delta-crc", "rrlp.bitsize_delta_crc",
11186
16
        FT_UINT32, BASE_DEC, NULL, 0,
11187
16
        "INTEGER_1_16", HFILL }},
11188
16
    { &hf_rrlp_bitsize_delta_cic,
11189
16
      { "bitsize-delta-cic", "rrlp.bitsize_delta_cic",
11190
16
        FT_UINT32, BASE_DEC, NULL, 0,
11191
16
        "INTEGER_1_16", HFILL }},
11192
16
    { &hf_rrlp_bitsize_delta_cuc,
11193
16
      { "bitsize-delta-cuc", "rrlp.bitsize_delta_cuc",
11194
16
        FT_UINT32, BASE_DEC, NULL, 0,
11195
16
        "INTEGER_1_16", HFILL }},
11196
16
    { &hf_rrlp_bitsize_delta_tgd1,
11197
16
      { "bitsize-delta-tgd1", "rrlp.bitsize_delta_tgd1",
11198
16
        FT_UINT32, BASE_DEC, NULL, 0,
11199
16
        "INTEGER_1_10", HFILL }},
11200
16
    { &hf_rrlp_bitsize_delta_tgd2,
11201
16
      { "bitsize-delta-tgd2", "rrlp.bitsize_delta_tgd2",
11202
16
        FT_UINT32, BASE_DEC, NULL, 0,
11203
16
        "INTEGER_1_10", HFILL }},
11204
16
    { &hf_rrlp_scale_delta_omega,
11205
16
      { "scale-delta-omega", "rrlp.scale_delta_omega",
11206
16
        FT_INT32, BASE_DEC, NULL, 0,
11207
16
        "INTEGER_M16_15", HFILL }},
11208
16
    { &hf_rrlp_scale_delta_deltaN,
11209
16
      { "scale-delta-deltaN", "rrlp.scale_delta_deltaN",
11210
16
        FT_INT32, BASE_DEC, NULL, 0,
11211
16
        "INTEGER_M16_15", HFILL }},
11212
16
    { &hf_rrlp_scale_delta_m0,
11213
16
      { "scale-delta-m0", "rrlp.scale_delta_m0",
11214
16
        FT_INT32, BASE_DEC, NULL, 0,
11215
16
        "INTEGER_M16_15", HFILL }},
11216
16
    { &hf_rrlp_scale_delta_omegadot,
11217
16
      { "scale-delta-omegadot", "rrlp.scale_delta_omegadot",
11218
16
        FT_INT32, BASE_DEC, NULL, 0,
11219
16
        "INTEGER_M16_15", HFILL }},
11220
16
    { &hf_rrlp_scale_delta_e,
11221
16
      { "scale-delta-e", "rrlp.scale_delta_e",
11222
16
        FT_INT32, BASE_DEC, NULL, 0,
11223
16
        "INTEGER_M16_15", HFILL }},
11224
16
    { &hf_rrlp_scale_delta_idot,
11225
16
      { "scale-delta-idot", "rrlp.scale_delta_idot",
11226
16
        FT_INT32, BASE_DEC, NULL, 0,
11227
16
        "INTEGER_M16_15", HFILL }},
11228
16
    { &hf_rrlp_scale_delta_sqrtA,
11229
16
      { "scale-delta-sqrtA", "rrlp.scale_delta_sqrtA",
11230
16
        FT_INT32, BASE_DEC, NULL, 0,
11231
16
        "INTEGER_M16_15", HFILL }},
11232
16
    { &hf_rrlp_scale_delta_i0,
11233
16
      { "scale-delta-i0", "rrlp.scale_delta_i0",
11234
16
        FT_INT32, BASE_DEC, NULL, 0,
11235
16
        "INTEGER_M16_15", HFILL }},
11236
16
    { &hf_rrlp_scale_delta_omega0,
11237
16
      { "scale-delta-omega0", "rrlp.scale_delta_omega0",
11238
16
        FT_INT32, BASE_DEC, NULL, 0,
11239
16
        "INTEGER_M16_15", HFILL }},
11240
16
    { &hf_rrlp_scale_delta_crs,
11241
16
      { "scale-delta-crs", "rrlp.scale_delta_crs",
11242
16
        FT_INT32, BASE_DEC, NULL, 0,
11243
16
        "INTEGER_M16_15", HFILL }},
11244
16
    { &hf_rrlp_scale_delta_cis,
11245
16
      { "scale-delta-cis", "rrlp.scale_delta_cis",
11246
16
        FT_INT32, BASE_DEC, NULL, 0,
11247
16
        "INTEGER_M16_15", HFILL }},
11248
16
    { &hf_rrlp_scale_delta_cus,
11249
16
      { "scale-delta-cus", "rrlp.scale_delta_cus",
11250
16
        FT_INT32, BASE_DEC, NULL, 0,
11251
16
        "INTEGER_M16_15", HFILL }},
11252
16
    { &hf_rrlp_scale_delta_crc,
11253
16
      { "scale-delta-crc", "rrlp.scale_delta_crc",
11254
16
        FT_INT32, BASE_DEC, NULL, 0,
11255
16
        "INTEGER_M16_15", HFILL }},
11256
16
    { &hf_rrlp_scale_delta_cic,
11257
16
      { "scale-delta-cic", "rrlp.scale_delta_cic",
11258
16
        FT_INT32, BASE_DEC, NULL, 0,
11259
16
        "INTEGER_M16_15", HFILL }},
11260
16
    { &hf_rrlp_scale_delta_cuc,
11261
16
      { "scale-delta-cuc", "rrlp.scale_delta_cuc",
11262
16
        FT_INT32, BASE_DEC, NULL, 0,
11263
16
        "INTEGER_M16_15", HFILL }},
11264
16
    { &hf_rrlp_scale_delta_tgd1,
11265
16
      { "scale-delta-tgd1", "rrlp.scale_delta_tgd1",
11266
16
        FT_INT32, BASE_DEC, NULL, 0,
11267
16
        "INTEGER_M16_15", HFILL }},
11268
16
    { &hf_rrlp_scale_delta_tgd2,
11269
16
      { "scale-delta-tgd2", "rrlp.scale_delta_tgd2",
11270
16
        FT_INT32, BASE_DEC, NULL, 0,
11271
16
        "INTEGER_M16_15", HFILL }},
11272
16
    { &hf_rrlp_ganssBeginTime,
11273
16
      { "ganssBeginTime", "rrlp.ganssBeginTime_element",
11274
16
        FT_NONE, BASE_NONE, NULL, 0,
11275
16
        "GANSSEphemerisExtensionTime", HFILL }},
11276
16
    { &hf_rrlp_ganssEndTime,
11277
16
      { "ganssEndTime", "rrlp.ganssEndTime_element",
11278
16
        FT_NONE, BASE_NONE, NULL, 0,
11279
16
        "GANSSEphemerisExtensionTime", HFILL }},
11280
16
    { &hf_rrlp_ganssSatEventsInfo,
11281
16
      { "ganssSatEventsInfo", "rrlp.ganssSatEventsInfo_element",
11282
16
        FT_NONE, BASE_NONE, NULL, 0,
11283
16
        NULL, HFILL }},
11284
16
    { &hf_rrlp_eventOccured,
11285
16
      { "eventOccured", "rrlp.eventOccured",
11286
16
        FT_BYTES, BASE_NONE, NULL, 0,
11287
16
        "BIT_STRING_SIZE_64", HFILL }},
11288
16
    { &hf_rrlp_futureEventNoted,
11289
16
      { "futureEventNoted", "rrlp.futureEventNoted",
11290
16
        FT_BYTES, BASE_NONE, NULL, 0,
11291
16
        "BIT_STRING_SIZE_64", HFILL }},
11292
16
    { &hf_rrlp_utcModel2,
11293
16
      { "utcModel2", "rrlp.utcModel2_element",
11294
16
        FT_NONE, BASE_NONE, NULL, 0,
11295
16
        "UTCmodelSet2", HFILL }},
11296
16
    { &hf_rrlp_utcModel3,
11297
16
      { "utcModel3", "rrlp.utcModel3_element",
11298
16
        FT_NONE, BASE_NONE, NULL, 0,
11299
16
        "UTCmodelSet3", HFILL }},
11300
16
    { &hf_rrlp_utcModel4,
11301
16
      { "utcModel4", "rrlp.utcModel4_element",
11302
16
        FT_NONE, BASE_NONE, NULL, 0,
11303
16
        "UTCmodelSet4", HFILL }},
11304
16
    { &hf_rrlp_utcModel5_r12,
11305
16
      { "utcModel5-r12", "rrlp.utcModel5_r12_element",
11306
16
        FT_NONE, BASE_NONE, NULL, 0,
11307
16
        "UTCmodelSet5_r12", HFILL }},
11308
16
    { &hf_rrlp_utcA0_01,
11309
16
      { "utcA0", "rrlp.utcA0",
11310
16
        FT_INT32, BASE_DEC, NULL, 0,
11311
16
        "INTEGER_M32768_32767", HFILL }},
11312
16
    { &hf_rrlp_utcA1_01,
11313
16
      { "utcA1", "rrlp.utcA1",
11314
16
        FT_INT32, BASE_DEC, NULL, 0,
11315
16
        "INTEGER_M4096_4095", HFILL }},
11316
16
    { &hf_rrlp_utcA2,
11317
16
      { "utcA2", "rrlp.utcA2",
11318
16
        FT_INT32, BASE_DEC, NULL, 0,
11319
16
        "INTEGER_M64_63", HFILL }},
11320
16
    { &hf_rrlp_utcTot_01,
11321
16
      { "utcTot", "rrlp.utcTot",
11322
16
        FT_UINT32, BASE_DEC, NULL, 0,
11323
16
        "INTEGER_0_65535", HFILL }},
11324
16
    { &hf_rrlp_utcWNot,
11325
16
      { "utcWNot", "rrlp.utcWNot",
11326
16
        FT_UINT32, BASE_DEC, NULL, 0,
11327
16
        "INTEGER_0_8191", HFILL }},
11328
16
    { &hf_rrlp_utcDN_bit_str,
11329
16
      { "utcDN", "rrlp.utcDN_bit_str",
11330
16
        FT_BYTES, BASE_NONE, NULL, 0,
11331
16
        "BIT_STRING_SIZE_4", HFILL }},
11332
16
    { &hf_rrlp_nA,
11333
16
      { "nA", "rrlp.nA",
11334
16
        FT_UINT32, BASE_DEC, NULL, 0,
11335
16
        "INTEGER_1_1461", HFILL }},
11336
16
    { &hf_rrlp_tauC,
11337
16
      { "tauC", "rrlp.tauC",
11338
16
        FT_INT32, BASE_DEC, NULL, 0,
11339
16
        "INTEGER_M2147483648_2147483647", HFILL }},
11340
16
    { &hf_rrlp_b1,
11341
16
      { "b1", "rrlp.b1",
11342
16
        FT_INT32, BASE_DEC, NULL, 0,
11343
16
        "INTEGER_M1024_1023", HFILL }},
11344
16
    { &hf_rrlp_b2,
11345
16
      { "b2", "rrlp.b2",
11346
16
        FT_INT32, BASE_DEC, NULL, 0,
11347
16
        "INTEGER_M512_511", HFILL }},
11348
16
    { &hf_rrlp_kp,
11349
16
      { "kp", "rrlp.kp",
11350
16
        FT_BYTES, BASE_NONE, NULL, 0,
11351
16
        "BIT_STRING_SIZE_2", HFILL }},
11352
16
    { &hf_rrlp_utcA1wnt,
11353
16
      { "utcA1wnt", "rrlp.utcA1wnt",
11354
16
        FT_INT32, BASE_DEC, NULL, 0,
11355
16
        "INTEGER_M8388608_8388607", HFILL }},
11356
16
    { &hf_rrlp_utcA0wnt,
11357
16
      { "utcA0wnt", "rrlp.utcA0wnt",
11358
16
        FT_INT32, BASE_DEC, NULL, 0,
11359
16
        "INTEGER_M2147483648_2147483647", HFILL }},
11360
16
    { &hf_rrlp_utcStandardID,
11361
16
      { "utcStandardID", "rrlp.utcStandardID",
11362
16
        FT_UINT32, BASE_DEC, NULL, 0,
11363
16
        "INTEGER_0_7", HFILL }},
11364
16
    { &hf_rrlp_utcA0_r12,
11365
16
      { "utcA0-r12", "rrlp.utcA0_r12",
11366
16
        FT_INT32, BASE_DEC, NULL, 0,
11367
16
        "INTEGER_M2147483648_2147483647", HFILL }},
11368
16
    { &hf_rrlp_utcA1_r12,
11369
16
      { "utcA1-r12", "rrlp.utcA1_r12",
11370
16
        FT_INT32, BASE_DEC, NULL, 0,
11371
16
        "INTEGER_M8388608_8388607", HFILL }},
11372
16
    { &hf_rrlp_utcDeltaTls_r12,
11373
16
      { "utcDeltaTls-r12", "rrlp.utcDeltaTls_r12",
11374
16
        FT_INT32, BASE_DEC, NULL, 0,
11375
16
        "INTEGER_M128_127", HFILL }},
11376
16
    { &hf_rrlp_utcWNlsf_r12,
11377
16
      { "utcWNlsf-r12", "rrlp.utcWNlsf_r12",
11378
16
        FT_UINT32, BASE_DEC, NULL, 0,
11379
16
        "INTEGER_0_255", HFILL }},
11380
16
    { &hf_rrlp_utcDN_r12,
11381
16
      { "utcDN-r12", "rrlp.utcDN_r12",
11382
16
        FT_UINT32, BASE_DEC, NULL, 0,
11383
16
        "INTEGER_0_255", HFILL }},
11384
16
    { &hf_rrlp_utcDeltaTlsf_r12,
11385
16
      { "utcDeltaTlsf-r12", "rrlp.utcDeltaTlsf_r12",
11386
16
        FT_INT32, BASE_DEC, NULL, 0,
11387
16
        "INTEGER_M128_127", HFILL }},
11388
16
    { &hf_rrlp_ganssID1,
11389
16
      { "ganssID1", "rrlp.ganssID1",
11390
16
        FT_UINT32, BASE_DEC, NULL, 0,
11391
16
        "GANSS_ID1", HFILL }},
11392
16
    { &hf_rrlp_ganssID3,
11393
16
      { "ganssID3", "rrlp.ganssID3",
11394
16
        FT_UINT32, BASE_DEC, NULL, 0,
11395
16
        "GANSS_ID3", HFILL }},
11396
16
    { &hf_rrlp_GANSS_ID1_item,
11397
16
      { "GANSS-ID1-element", "rrlp.GANSS_ID1_element_element",
11398
16
        FT_NONE, BASE_NONE, NULL, 0,
11399
16
        NULL, HFILL }},
11400
16
    { &hf_rrlp_signalsAvailable,
11401
16
      { "signalsAvailable", "rrlp.signalsAvailable",
11402
16
        FT_BYTES, BASE_NONE, NULL, 0,
11403
16
        "GANSSSignals", HFILL }},
11404
16
    { &hf_rrlp_GANSS_ID3_item,
11405
16
      { "GANSS-ID3-element", "rrlp.GANSS_ID3_element_element",
11406
16
        FT_NONE, BASE_NONE, NULL, 0,
11407
16
        NULL, HFILL }},
11408
16
    { &hf_rrlp_channelNumber,
11409
16
      { "channelNumber", "rrlp.channelNumber",
11410
16
        FT_INT32, BASE_DEC, NULL, 0,
11411
16
        "INTEGER_M7_13", HFILL }},
11412
16
    { &hf_rrlp_GANSSDiffCorrectionsValidityPeriod_item,
11413
16
      { "DGANSSExtensionSgnTypeElement", "rrlp.DGANSSExtensionSgnTypeElement_element",
11414
16
        FT_NONE, BASE_NONE, NULL, 0,
11415
16
        NULL, HFILL }},
11416
16
    { &hf_rrlp_dganssExtensionSgnList,
11417
16
      { "dganssExtensionSgnList", "rrlp.dganssExtensionSgnList",
11418
16
        FT_UINT32, BASE_DEC, NULL, 0,
11419
16
        "SeqOfDGANSSExtensionSgnElement", HFILL }},
11420
16
    { &hf_rrlp_SeqOfDGANSSExtensionSgnElement_item,
11421
16
      { "DGANSSExtensionSgnElement", "rrlp.DGANSSExtensionSgnElement_element",
11422
16
        FT_NONE, BASE_NONE, NULL, 0,
11423
16
        NULL, HFILL }},
11424
16
    { &hf_rrlp_udreGrowthRate,
11425
16
      { "udreGrowthRate", "rrlp.udreGrowthRate",
11426
16
        FT_UINT32, BASE_DEC, NULL, 0,
11427
16
        "INTEGER_0_7", HFILL }},
11428
16
    { &hf_rrlp_udreValidityTime,
11429
16
      { "udreValidityTime", "rrlp.udreValidityTime",
11430
16
        FT_UINT32, BASE_DEC, NULL, 0,
11431
16
        "INTEGER_0_7", HFILL }},
11432
16
    { &hf_rrlp_add_GPS_controlHeader,
11433
16
      { "add-GPS-controlHeader", "rrlp.add_GPS_controlHeader_element",
11434
16
        FT_NONE, BASE_NONE, NULL, 0,
11435
16
        NULL, HFILL }},
11436
16
    { &hf_rrlp_gpsEphemerisExtension,
11437
16
      { "gpsEphemerisExtension", "rrlp.gpsEphemerisExtension_element",
11438
16
        FT_NONE, BASE_NONE, NULL, 0,
11439
16
        NULL, HFILL }},
11440
16
    { &hf_rrlp_gpsEphemerisExtensionCheck,
11441
16
      { "gpsEphemerisExtensionCheck", "rrlp.gpsEphemerisExtensionCheck_element",
11442
16
        FT_NONE, BASE_NONE, NULL, 0,
11443
16
        NULL, HFILL }},
11444
16
    { &hf_rrlp_dgpsCorrectionsValidityPeriod,
11445
16
      { "dgpsCorrectionsValidityPeriod", "rrlp.dgpsCorrectionsValidityPeriod",
11446
16
        FT_UINT32, BASE_DEC, NULL, 0,
11447
16
        NULL, HFILL }},
11448
16
    { &hf_rrlp_gpsReferenceTime_R10_Ext,
11449
16
      { "gpsReferenceTime-R10-Ext", "rrlp.gpsReferenceTime_R10_Ext_element",
11450
16
        FT_NONE, BASE_NONE, NULL, 0,
11451
16
        NULL, HFILL }},
11452
16
    { &hf_rrlp_gpsAcquisAssist_R10_Ext,
11453
16
      { "gpsAcquisAssist-R10-Ext", "rrlp.gpsAcquisAssist_R10_Ext",
11454
16
        FT_UINT32, BASE_DEC, NULL, 0,
11455
16
        NULL, HFILL }},
11456
16
    { &hf_rrlp_gpsAlmanac_R10_Ext,
11457
16
      { "gpsAlmanac-R10-Ext", "rrlp.gpsAlmanac_R10_Ext_element",
11458
16
        FT_NONE, BASE_NONE, NULL, 0,
11459
16
        NULL, HFILL }},
11460
16
    { &hf_rrlp_gpsAcquisAssist_R12_Ext,
11461
16
      { "gpsAcquisAssist-R12-Ext", "rrlp.gpsAcquisAssist_R12_Ext_element",
11462
16
        FT_NONE, BASE_NONE, NULL, 0,
11463
16
        NULL, HFILL }},
11464
16
    { &hf_rrlp_af2,
11465
16
      { "af2", "rrlp.af2",
11466
16
        FT_INT32, BASE_DEC, NULL, 0,
11467
16
        "INTEGER_M128_127", HFILL }},
11468
16
    { &hf_rrlp_af1,
11469
16
      { "af1", "rrlp.af1",
11470
16
        FT_INT32, BASE_DEC, NULL, 0,
11471
16
        "INTEGER_M32768_32767", HFILL }},
11472
16
    { &hf_rrlp_af0,
11473
16
      { "af0", "rrlp.af0",
11474
16
        FT_INT32, BASE_DEC, NULL, 0,
11475
16
        "INTEGER_M2097152_2097151", HFILL }},
11476
16
    { &hf_rrlp_tgd,
11477
16
      { "tgd", "rrlp.tgd",
11478
16
        FT_INT32, BASE_DEC, NULL, 0,
11479
16
        "INTEGER_M128_127", HFILL }},
11480
16
    { &hf_rrlp_gpsEphemerisHeader,
11481
16
      { "gpsEphemerisHeader", "rrlp.gpsEphemerisHeader_element",
11482
16
        FT_NONE, BASE_NONE, NULL, 0,
11483
16
        "GPSEphemerisExtensionHeader", HFILL }},
11484
16
    { &hf_rrlp_gpsReferenceSet,
11485
16
      { "gpsReferenceSet", "rrlp.gpsReferenceSet",
11486
16
        FT_UINT32, BASE_DEC, NULL, 0,
11487
16
        "SeqOfGPSRefOrbit", HFILL }},
11488
16
    { &hf_rrlp_gpsephemerisDeltaMatrix,
11489
16
      { "gpsephemerisDeltaMatrix", "rrlp.gpsephemerisDeltaMatrix",
11490
16
        FT_UINT32, BASE_DEC, NULL, 0,
11491
16
        NULL, HFILL }},
11492
16
    { &hf_rrlp_timeofEstimation,
11493
16
      { "timeofEstimation", "rrlp.timeofEstimation_element",
11494
16
        FT_NONE, BASE_NONE, NULL, 0,
11495
16
        "GPSEphemerisExtensionTime", HFILL }},
11496
16
    { &hf_rrlp_SeqOfGPSRefOrbit_item,
11497
16
      { "GPSReferenceOrbit", "rrlp.GPSReferenceOrbit_element",
11498
16
        FT_NONE, BASE_NONE, NULL, 0,
11499
16
        NULL, HFILL }},
11500
16
    { &hf_rrlp_gpsOrbitModel,
11501
16
      { "gpsOrbitModel", "rrlp.gpsOrbitModel_element",
11502
16
        FT_NONE, BASE_NONE, NULL, 0,
11503
16
        "ReferenceNavModel", HFILL }},
11504
16
    { &hf_rrlp_gpsClockModel,
11505
16
      { "gpsClockModel", "rrlp.gpsClockModel_element",
11506
16
        FT_NONE, BASE_NONE, NULL, 0,
11507
16
        NULL, HFILL }},
11508
16
    { &hf_rrlp_GPSEphemerisDeltaMatrix_item,
11509
16
      { "GPSEphemerisDeltaEpoch", "rrlp.GPSEphemerisDeltaEpoch_element",
11510
16
        FT_NONE, BASE_NONE, NULL, 0,
11511
16
        NULL, HFILL }},
11512
16
    { &hf_rrlp_gpsDeltaEpochHeader,
11513
16
      { "gpsDeltaEpochHeader", "rrlp.gpsDeltaEpochHeader_element",
11514
16
        FT_NONE, BASE_NONE, NULL, 0,
11515
16
        NULL, HFILL }},
11516
16
    { &hf_rrlp_gpsDeltaElementList,
11517
16
      { "gpsDeltaElementList", "rrlp.gpsDeltaElementList",
11518
16
        FT_UINT32, BASE_DEC, NULL, 0,
11519
16
        NULL, HFILL }},
11520
16
    { &hf_rrlp_ephemerisDeltaSizes_01,
11521
16
      { "ephemerisDeltaSizes", "rrlp.ephemerisDeltaSizes_element",
11522
16
        FT_NONE, BASE_NONE, NULL, 0,
11523
16
        "GPSEphemerisDeltaBitSizes", HFILL }},
11524
16
    { &hf_rrlp_ephemerisDeltaScales_01,
11525
16
      { "ephemerisDeltaScales", "rrlp.ephemerisDeltaScales_element",
11526
16
        FT_NONE, BASE_NONE, NULL, 0,
11527
16
        "GPSEphemerisDeltaScales", HFILL }},
11528
16
    { &hf_rrlp_GPSDeltaElementList_item,
11529
16
      { "GPSDeltaElementList item", "rrlp.GPSDeltaElementList_item",
11530
16
        FT_BYTES, BASE_NONE, NULL, 0,
11531
16
        "OCTET_STRING_SIZE_1_47", HFILL }},
11532
16
    { &hf_rrlp_bitsize_delta_tgd,
11533
16
      { "bitsize-delta-tgd", "rrlp.bitsize_delta_tgd",
11534
16
        FT_UINT32, BASE_DEC, NULL, 0,
11535
16
        "INTEGER_1_10", HFILL }},
11536
16
    { &hf_rrlp_scale_delta_tgd,
11537
16
      { "scale-delta-tgd", "rrlp.scale_delta_tgd",
11538
16
        FT_INT32, BASE_DEC, NULL, 0,
11539
16
        "INTEGER_M16_15", HFILL }},
11540
16
    { &hf_rrlp_gpsBeginTime,
11541
16
      { "gpsBeginTime", "rrlp.gpsBeginTime_element",
11542
16
        FT_NONE, BASE_NONE, NULL, 0,
11543
16
        "GPSEphemerisExtensionTime", HFILL }},
11544
16
    { &hf_rrlp_gpsEndTime,
11545
16
      { "gpsEndTime", "rrlp.gpsEndTime_element",
11546
16
        FT_NONE, BASE_NONE, NULL, 0,
11547
16
        "GPSEphemerisExtensionTime", HFILL }},
11548
16
    { &hf_rrlp_gpsSatEventsInfo,
11549
16
      { "gpsSatEventsInfo", "rrlp.gpsSatEventsInfo_element",
11550
16
        FT_NONE, BASE_NONE, NULL, 0,
11551
16
        NULL, HFILL }},
11552
16
    { &hf_rrlp_eventOccured_01,
11553
16
      { "eventOccured", "rrlp.eventOccured",
11554
16
        FT_BYTES, BASE_NONE, NULL, 0,
11555
16
        "BIT_STRING_SIZE_32", HFILL }},
11556
16
    { &hf_rrlp_futureEventNoted_01,
11557
16
      { "futureEventNoted", "rrlp.futureEventNoted",
11558
16
        FT_BYTES, BASE_NONE, NULL, 0,
11559
16
        "BIT_STRING_SIZE_32", HFILL }},
11560
16
    { &hf_rrlp_DGPSCorrectionsValidityPeriod_item,
11561
16
      { "DGPSExtensionSatElement", "rrlp.DGPSExtensionSatElement_element",
11562
16
        FT_NONE, BASE_NONE, NULL, 0,
11563
16
        NULL, HFILL }},
11564
16
    { &hf_rrlp_gpsWeekCycleNumber,
11565
16
      { "gpsWeekCycleNumber", "rrlp.gpsWeekCycleNumber",
11566
16
        FT_UINT32, BASE_DEC, NULL, 0,
11567
16
        "INTEGER_0_7", HFILL }},
11568
16
    { &hf_rrlp_GPSAcquisAssist_R10_Ext_item,
11569
16
      { "GPSAcquisAssist-R10-Ext-Element", "rrlp.GPSAcquisAssist_R10_Ext_Element_element",
11570
16
        FT_NONE, BASE_NONE, NULL, 0,
11571
16
        NULL, HFILL }},
11572
16
    { &hf_rrlp_acquisList_01,
11573
16
      { "acquisList", "rrlp.acquisList",
11574
16
        FT_UINT32, BASE_DEC, NULL, 0,
11575
16
        "SeqOfGPSAcquisAssist_R12_Ext", HFILL }},
11576
16
    { &hf_rrlp_SeqOfGPSAcquisAssist_R12_Ext_item,
11577
16
      { "GPSAcquisAssist-R12-Ext-Element", "rrlp.GPSAcquisAssist_R12_Ext_Element_element",
11578
16
        FT_NONE, BASE_NONE, NULL, 0,
11579
16
        NULL, HFILL }},
11580
16
    { &hf_rrlp_dopplerUncertaintyExt_01,
11581
16
      { "dopplerUncertaintyExt", "rrlp.dopplerUncertaintyExt",
11582
16
        FT_UINT32, BASE_DEC, VALS(rrlp_T_dopplerUncertaintyExt_01_vals), 0,
11583
16
        "T_dopplerUncertaintyExt_01", HFILL }},
11584
16
    { &hf_rrlp_velEstimate,
11585
16
      { "velEstimate", "rrlp.velEstimate",
11586
16
        FT_BYTES, BASE_NONE, NULL, 0,
11587
16
        "VelocityEstimate", HFILL }},
11588
16
    { &hf_rrlp_ganssLocationInfo,
11589
16
      { "ganssLocationInfo", "rrlp.ganssLocationInfo_element",
11590
16
        FT_NONE, BASE_NONE, NULL, 0,
11591
16
        NULL, HFILL }},
11592
16
    { &hf_rrlp_ganssMeasureInfo,
11593
16
      { "ganssMeasureInfo", "rrlp.ganssMeasureInfo_element",
11594
16
        FT_NONE, BASE_NONE, NULL, 0,
11595
16
        NULL, HFILL }},
11596
16
    { &hf_rrlp_referenceFrame,
11597
16
      { "referenceFrame", "rrlp.referenceFrame_element",
11598
16
        FT_NONE, BASE_NONE, NULL, 0,
11599
16
        NULL, HFILL }},
11600
16
    { &hf_rrlp_ganssTODm,
11601
16
      { "ganssTODm", "rrlp.ganssTODm",
11602
16
        FT_UINT32, BASE_DEC, NULL, 0,
11603
16
        NULL, HFILL }},
11604
16
    { &hf_rrlp_ganssTODFrac,
11605
16
      { "ganssTODFrac", "rrlp.ganssTODFrac",
11606
16
        FT_UINT32, BASE_DEC, NULL, 0,
11607
16
        "INTEGER_0_16384", HFILL }},
11608
16
    { &hf_rrlp_posData,
11609
16
      { "posData", "rrlp.posData",
11610
16
        FT_BYTES, BASE_NONE, NULL, 0,
11611
16
        "PositionData", HFILL }},
11612
16
    { &hf_rrlp_stationaryIndication,
11613
16
      { "stationaryIndication", "rrlp.stationaryIndication",
11614
16
        FT_UINT32, BASE_DEC, NULL, 0,
11615
16
        "INTEGER_0_1", HFILL }},
11616
16
    { &hf_rrlp_referenceFN,
11617
16
      { "referenceFN", "rrlp.referenceFN",
11618
16
        FT_UINT32, BASE_DEC, NULL, 0,
11619
16
        "INTEGER_0_65535", HFILL }},
11620
16
    { &hf_rrlp_referenceFNMSB,
11621
16
      { "referenceFNMSB", "rrlp.referenceFNMSB",
11622
16
        FT_UINT32, BASE_DEC, NULL, 0,
11623
16
        "INTEGER_0_63", HFILL }},
11624
16
    { &hf_rrlp_ganssMsrSetList,
11625
16
      { "ganssMsrSetList", "rrlp.ganssMsrSetList",
11626
16
        FT_UINT32, BASE_DEC, NULL, 0,
11627
16
        "SeqOfGANSS_MsrSetElement", HFILL }},
11628
16
    { &hf_rrlp_SeqOfGANSS_MsrSetElement_item,
11629
16
      { "GANSS-MsrSetElement", "rrlp.GANSS_MsrSetElement_element",
11630
16
        FT_NONE, BASE_NONE, NULL, 0,
11631
16
        NULL, HFILL }},
11632
16
    { &hf_rrlp_deltaGANSSTOD,
11633
16
      { "deltaGANSSTOD", "rrlp.deltaGANSSTOD",
11634
16
        FT_UINT32, BASE_DEC, NULL, 0,
11635
16
        "INTEGER_0_127", HFILL }},
11636
16
    { &hf_rrlp_ganss_MsrElementList,
11637
16
      { "ganss-MsrElementList", "rrlp.ganss_MsrElementList",
11638
16
        FT_UINT32, BASE_DEC, NULL, 0,
11639
16
        "SeqOfGANSS_MsrElement", HFILL }},
11640
16
    { &hf_rrlp_SeqOfGANSS_MsrElement_item,
11641
16
      { "GANSS-MsrElement", "rrlp.GANSS_MsrElement_element",
11642
16
        FT_NONE, BASE_NONE, NULL, 0,
11643
16
        NULL, HFILL }},
11644
16
    { &hf_rrlp_ganss_SgnTypeList,
11645
16
      { "ganss-SgnTypeList", "rrlp.ganss_SgnTypeList",
11646
16
        FT_UINT32, BASE_DEC, NULL, 0,
11647
16
        "SeqOfGANSS_SgnTypeElement", HFILL }},
11648
16
    { &hf_rrlp_SeqOfGANSS_SgnTypeElement_item,
11649
16
      { "GANSS-SgnTypeElement", "rrlp.GANSS_SgnTypeElement_element",
11650
16
        FT_NONE, BASE_NONE, NULL, 0,
11651
16
        NULL, HFILL }},
11652
16
    { &hf_rrlp_ganssCodePhaseAmbiguity,
11653
16
      { "ganssCodePhaseAmbiguity", "rrlp.ganssCodePhaseAmbiguity",
11654
16
        FT_UINT32, BASE_DEC, NULL, 0,
11655
16
        "INTEGER_0_127", HFILL }},
11656
16
    { &hf_rrlp_ganss_SgnList,
11657
16
      { "ganss-SgnList", "rrlp.ganss_SgnList",
11658
16
        FT_UINT32, BASE_DEC, NULL, 0,
11659
16
        "SeqOfGANSS_SgnElement", HFILL }},
11660
16
    { &hf_rrlp_SeqOfGANSS_SgnElement_item,
11661
16
      { "GANSS-SgnElement", "rrlp.GANSS_SgnElement_element",
11662
16
        FT_NONE, BASE_NONE, NULL, 0,
11663
16
        NULL, HFILL }},
11664
16
    { &hf_rrlp_mpathDet,
11665
16
      { "mpathDet", "rrlp.mpathDet",
11666
16
        FT_UINT32, BASE_DEC, VALS(rrlp_MpathIndic_vals), 0,
11667
16
        "MpathIndic", HFILL }},
11668
16
    { &hf_rrlp_carrierQualityInd,
11669
16
      { "carrierQualityInd", "rrlp.carrierQualityInd",
11670
16
        FT_UINT32, BASE_DEC, NULL, 0,
11671
16
        "INTEGER_0_3", HFILL }},
11672
16
    { &hf_rrlp_codePhase_01,
11673
16
      { "codePhase", "rrlp.codePhase",
11674
16
        FT_UINT32, BASE_DEC, NULL, 0,
11675
16
        "INTEGER_0_2097151", HFILL }},
11676
16
    { &hf_rrlp_integerCodePhase,
11677
16
      { "integerCodePhase", "rrlp.integerCodePhase",
11678
16
        FT_UINT32, BASE_DEC, NULL, 0,
11679
16
        "INTEGER_0_127", HFILL }},
11680
16
    { &hf_rrlp_codePhaseRMSError,
11681
16
      { "codePhaseRMSError", "rrlp.codePhaseRMSError",
11682
16
        FT_UINT32, BASE_DEC, NULL, 0,
11683
16
        "INTEGER_0_63", HFILL }},
11684
16
    { &hf_rrlp_adr,
11685
16
      { "adr", "rrlp.adr",
11686
16
        FT_UINT32, BASE_DEC, NULL, 0,
11687
16
        "INTEGER_0_33554431", HFILL }},
11688
16
    { &hf_rrlp_dbds_RefTime_r12,
11689
16
      { "dbds-RefTime-r12", "rrlp.dbds_RefTime_r12",
11690
16
        FT_UINT32, BASE_DEC, NULL, 0,
11691
16
        "INTEGER_0_3599", HFILL }},
11692
16
    { &hf_rrlp_bds_SgnTypeList_r12,
11693
16
      { "bds-SgnTypeList-r12", "rrlp.bds_SgnTypeList_r12",
11694
16
        FT_UINT32, BASE_DEC, NULL, 0,
11695
16
        NULL, HFILL }},
11696
16
    { &hf_rrlp_BDS_SgnTypeList_r12_item,
11697
16
      { "BDS-SgnTypeElement-r12", "rrlp.BDS_SgnTypeElement_r12_element",
11698
16
        FT_NONE, BASE_NONE, NULL, 0,
11699
16
        NULL, HFILL }},
11700
16
    { &hf_rrlp_dbds_CorrectionList_r12,
11701
16
      { "dbds-CorrectionList-r12", "rrlp.dbds_CorrectionList_r12",
11702
16
        FT_UINT32, BASE_DEC, NULL, 0,
11703
16
        NULL, HFILL }},
11704
16
    { &hf_rrlp_DBDS_CorrectionList_r12_item,
11705
16
      { "DBDS-CorrectionElement-r12", "rrlp.DBDS_CorrectionElement_r12_element",
11706
16
        FT_NONE, BASE_NONE, NULL, 0,
11707
16
        NULL, HFILL }},
11708
16
    { &hf_rrlp_bds_UDREI_r12,
11709
16
      { "bds-UDREI-r12", "rrlp.bds_UDREI_r12",
11710
16
        FT_UINT32, BASE_DEC, NULL, 0,
11711
16
        "INTEGER_0_15", HFILL }},
11712
16
    { &hf_rrlp_bds_RURAI_r12,
11713
16
      { "bds-RURAI-r12", "rrlp.bds_RURAI_r12",
11714
16
        FT_UINT32, BASE_DEC, NULL, 0,
11715
16
        "INTEGER_0_15", HFILL }},
11716
16
    { &hf_rrlp_bds_ECC_DeltaT_r12,
11717
16
      { "bds-ECC-DeltaT-r12", "rrlp.bds_ECC_DeltaT_r12",
11718
16
        FT_INT32, BASE_DEC, NULL, 0,
11719
16
        "INTEGER_M4096_4095", HFILL }},
11720
16
    { &hf_rrlp_bds_RefTime_r12,
11721
16
      { "bds-RefTime-r12", "rrlp.bds_RefTime_r12",
11722
16
        FT_UINT32, BASE_DEC, NULL, 0,
11723
16
        "INTEGER_0_3599", HFILL }},
11724
16
    { &hf_rrlp_gridIonList_r12,
11725
16
      { "gridIonList-r12", "rrlp.gridIonList_r12",
11726
16
        FT_UINT32, BASE_DEC, NULL, 0,
11727
16
        NULL, HFILL }},
11728
16
    { &hf_rrlp_GridIonList_r12_item,
11729
16
      { "GridIonElement-r12", "rrlp.GridIonElement_r12_element",
11730
16
        FT_NONE, BASE_NONE, NULL, 0,
11731
16
        NULL, HFILL }},
11732
16
    { &hf_rrlp_igp_ID_r12,
11733
16
      { "igp-ID-r12", "rrlp.igp_ID_r12",
11734
16
        FT_UINT32, BASE_DEC, NULL, 0,
11735
16
        "INTEGER_1_320", HFILL }},
11736
16
    { &hf_rrlp_dt_r12,
11737
16
      { "dt-r12", "rrlp.dt_r12",
11738
16
        FT_UINT32, BASE_DEC, NULL, 0,
11739
16
        "INTEGER_0_511", HFILL }},
11740
16
    { &hf_rrlp_givei_r12,
11741
16
      { "givei-r12", "rrlp.givei_r12",
11742
16
        FT_UINT32, BASE_DEC, NULL, 0,
11743
16
        "INTEGER_0_15", HFILL }},
11744
16
    { &hf_rrlp_nonGANSSpositionMethods,
11745
16
      { "nonGANSSpositionMethods", "rrlp.nonGANSSpositionMethods",
11746
16
        FT_BYTES, BASE_NONE, NULL, 0,
11747
16
        NULL, HFILL }},
11748
16
    { &hf_rrlp_multipleMeasurementSets,
11749
16
      { "multipleMeasurementSets", "rrlp.multipleMeasurementSets",
11750
16
        FT_BYTES, BASE_NONE, NULL, 0,
11751
16
        NULL, HFILL }},
11752
16
    { &hf_rrlp_GANSSPositionMethods_item,
11753
16
      { "GANSSPositionMethod", "rrlp.GANSSPositionMethod_element",
11754
16
        FT_NONE, BASE_NONE, NULL, 0,
11755
16
        NULL, HFILL }},
11756
16
    { &hf_rrlp_gANSSPositioningMethodTypes,
11757
16
      { "gANSSPositioningMethodTypes", "rrlp.gANSSPositioningMethodTypes",
11758
16
        FT_BYTES, BASE_NONE, NULL, 0,
11759
16
        NULL, HFILL }},
11760
16
    { &hf_rrlp_gANSSSignals,
11761
16
      { "gANSSSignals", "rrlp.gANSSSignals",
11762
16
        FT_BYTES, BASE_NONE, NULL, 0,
11763
16
        NULL, HFILL }},
11764
16
    { &hf_rrlp_sbasID,
11765
16
      { "sbasID", "rrlp.sbasID",
11766
16
        FT_BYTES, BASE_NONE, NULL, 0,
11767
16
        NULL, HFILL }},
11768
16
    { &hf_rrlp_gpsAssistance,
11769
16
      { "gpsAssistance", "rrlp.gpsAssistance",
11770
16
        FT_BYTES, BASE_NONE, NULL, 0,
11771
16
        NULL, HFILL }},
11772
16
    { &hf_rrlp_gANSSAssistanceSet,
11773
16
      { "gANSSAssistanceSet", "rrlp.gANSSAssistanceSet_element",
11774
16
        FT_NONE, BASE_NONE, NULL, 0,
11775
16
        NULL, HFILL }},
11776
16
    { &hf_rrlp_gANSSAdditionalAssistanceChoices,
11777
16
      { "gANSSAdditionalAssistanceChoices", "rrlp.gANSSAdditionalAssistanceChoices",
11778
16
        FT_UINT32, BASE_DEC, NULL, 0,
11779
16
        NULL, HFILL }},
11780
16
    { &hf_rrlp_commonGANSSAssistance,
11781
16
      { "commonGANSSAssistance", "rrlp.commonGANSSAssistance",
11782
16
        FT_BYTES, BASE_NONE, NULL, 0,
11783
16
        NULL, HFILL }},
11784
16
    { &hf_rrlp_specificGANSSAssistance,
11785
16
      { "specificGANSSAssistance", "rrlp.specificGANSSAssistance",
11786
16
        FT_UINT32, BASE_DEC, NULL, 0,
11787
16
        NULL, HFILL }},
11788
16
    { &hf_rrlp_SpecificGANSSAssistance_item,
11789
16
      { "GANSSAssistanceForOneGANSS", "rrlp.GANSSAssistanceForOneGANSS_element",
11790
16
        FT_NONE, BASE_NONE, NULL, 0,
11791
16
        NULL, HFILL }},
11792
16
    { &hf_rrlp_gANSSAssistance,
11793
16
      { "gANSSAssistance", "rrlp.gANSSAssistance",
11794
16
        FT_BYTES, BASE_NONE, NULL, 0,
11795
16
        NULL, HFILL }},
11796
16
    { &hf_rrlp_GANSSAdditionalAssistanceChoices_item,
11797
16
      { "GANSSAdditionalAssistanceChoicesForOneGANSS", "rrlp.GANSSAdditionalAssistanceChoicesForOneGANSS_element",
11798
16
        FT_NONE, BASE_NONE, NULL, 0,
11799
16
        NULL, HFILL }},
11800
16
    { &hf_rrlp_ganssClockModelChoice,
11801
16
      { "ganssClockModelChoice", "rrlp.ganssClockModelChoice",
11802
16
        FT_BYTES, BASE_NONE, NULL, 0,
11803
16
        "GANSSModelID", HFILL }},
11804
16
    { &hf_rrlp_gannsOrbitModelChoice,
11805
16
      { "gannsOrbitModelChoice", "rrlp.gannsOrbitModelChoice",
11806
16
        FT_BYTES, BASE_NONE, NULL, 0,
11807
16
        "GANSSModelID", HFILL }},
11808
16
    { &hf_rrlp_ganssAlmanacModelChoice,
11809
16
      { "ganssAlmanacModelChoice", "rrlp.ganssAlmanacModelChoice",
11810
16
        FT_BYTES, BASE_NONE, NULL, 0,
11811
16
        "GANSSModelID", HFILL }},
11812
16
    { &hf_rrlp_ganssAdditionalUTCModelChoice,
11813
16
      { "ganssAdditionalUTCModelChoice", "rrlp.ganssAdditionalUTCModelChoice",
11814
16
        FT_BYTES, BASE_NONE, NULL, 0,
11815
16
        "GANSSModelID", HFILL }},
11816
16
    { &hf_rrlp_cellSet1,
11817
16
      { "cellSet1", "rrlp.cellSet1_element",
11818
16
        FT_NONE, BASE_NONE, NULL, 0,
11819
16
        "CellSet", HFILL }},
11820
16
    { &hf_rrlp_cellSet2,
11821
16
      { "cellSet2", "rrlp.cellSet2_element",
11822
16
        FT_NONE, BASE_NONE, NULL, 0,
11823
16
        "CellSet", HFILL }},
11824
16
    { &hf_rrlp_cellSet3,
11825
16
      { "cellSet3", "rrlp.cellSet3_element",
11826
16
        FT_NONE, BASE_NONE, NULL, 0,
11827
16
        "CellSet", HFILL }},
11828
16
    { &hf_rrlp_cellSet4,
11829
16
      { "cellSet4", "rrlp.cellSet4_element",
11830
16
        FT_NONE, BASE_NONE, NULL, 0,
11831
16
        "CellSet", HFILL }},
11832
16
    { &hf_rrlp_cellSet5,
11833
16
      { "cellSet5", "rrlp.cellSet5_element",
11834
16
        FT_NONE, BASE_NONE, NULL, 0,
11835
16
        "CellSet", HFILL }},
11836
16
    { &hf_rrlp_cellSet6,
11837
16
      { "cellSet6", "rrlp.cellSet6_element",
11838
16
        FT_NONE, BASE_NONE, NULL, 0,
11839
16
        "CellSet", HFILL }},
11840
16
    { &hf_rrlp_cellSet7,
11841
16
      { "cellSet7", "rrlp.cellSet7_element",
11842
16
        FT_NONE, BASE_NONE, NULL, 0,
11843
16
        "CellSet", HFILL }},
11844
16
    { &hf_rrlp_cellSet8,
11845
16
      { "cellSet8", "rrlp.cellSet8_element",
11846
16
        FT_NONE, BASE_NONE, NULL, 0,
11847
16
        "CellSet", HFILL }},
11848
16
    { &hf_rrlp_cell1,
11849
16
      { "cell1", "rrlp.cell1_element",
11850
16
        FT_NONE, BASE_NONE, NULL, 0,
11851
16
        "CellInfo", HFILL }},
11852
16
    { &hf_rrlp_cell2,
11853
16
      { "cell2", "rrlp.cell2_element",
11854
16
        FT_NONE, BASE_NONE, NULL, 0,
11855
16
        "CellInfo", HFILL }},
11856
16
    { &hf_rrlp_cell3,
11857
16
      { "cell3", "rrlp.cell3_element",
11858
16
        FT_NONE, BASE_NONE, NULL, 0,
11859
16
        "CellInfo", HFILL }},
11860
16
    { &hf_rrlp_cell4,
11861
16
      { "cell4", "rrlp.cell4_element",
11862
16
        FT_NONE, BASE_NONE, NULL, 0,
11863
16
        "CellInfo", HFILL }},
11864
16
    { &hf_rrlp_cell5,
11865
16
      { "cell5", "rrlp.cell5_element",
11866
16
        FT_NONE, BASE_NONE, NULL, 0,
11867
16
        "CellInfo", HFILL }},
11868
16
    { &hf_rrlp_cell6,
11869
16
      { "cell6", "rrlp.cell6_element",
11870
16
        FT_NONE, BASE_NONE, NULL, 0,
11871
16
        "CellInfo", HFILL }},
11872
16
    { &hf_rrlp_bsic_01,
11873
16
      { "bsic", "rrlp.bsic",
11874
16
        FT_UINT32, BASE_DEC, NULL, 0,
11875
16
        "INTEGER_0_511", HFILL }},
11876
16
    { &hf_rrlp_arfcn,
11877
16
      { "arfcn", "rrlp.arfcn",
11878
16
        FT_UINT32, BASE_DEC, NULL, 0,
11879
16
        "INTEGER_0_1023", HFILL }},
11880
16
    { &hf_rrlp_oTDMeasurementInfo1,
11881
16
      { "oTDMeasurementInfo1", "rrlp.oTDMeasurementInfo1_element",
11882
16
        FT_NONE, BASE_NONE, NULL, 0,
11883
16
        "OTDMeasurementInfo", HFILL }},
11884
16
    { &hf_rrlp_oTDMeasurementInfo2,
11885
16
      { "oTDMeasurementInfo2", "rrlp.oTDMeasurementInfo2_element",
11886
16
        FT_NONE, BASE_NONE, NULL, 0,
11887
16
        "OTDMeasurementInfo", HFILL }},
11888
16
    { &hf_rrlp_oTDMeasurementInfo3,
11889
16
      { "oTDMeasurementInfo3", "rrlp.oTDMeasurementInfo3_element",
11890
16
        FT_NONE, BASE_NONE, NULL, 0,
11891
16
        "OTDMeasurementInfo", HFILL }},
11892
16
    { &hf_rrlp_oTDMeasurementInfo4,
11893
16
      { "oTDMeasurementInfo4", "rrlp.oTDMeasurementInfo4_element",
11894
16
        FT_NONE, BASE_NONE, NULL, 0,
11895
16
        "OTDMeasurementInfo", HFILL }},
11896
16
    { &hf_rrlp_oTDMeasurementInfo5,
11897
16
      { "oTDMeasurementInfo5", "rrlp.oTDMeasurementInfo5_element",
11898
16
        FT_NONE, BASE_NONE, NULL, 0,
11899
16
        "OTDMeasurementInfo", HFILL }},
11900
16
    { &hf_rrlp_oTDMeasurementInfo6,
11901
16
      { "oTDMeasurementInfo6", "rrlp.oTDMeasurementInfo6_element",
11902
16
        FT_NONE, BASE_NONE, NULL, 0,
11903
16
        "OTDMeasurementInfo", HFILL }},
11904
16
    { &hf_rrlp_oTDMeasurementInfo7,
11905
16
      { "oTDMeasurementInfo7", "rrlp.oTDMeasurementInfo7_element",
11906
16
        FT_NONE, BASE_NONE, NULL, 0,
11907
16
        "OTDMeasurementInfo", HFILL }},
11908
16
    { &hf_rrlp_reportedCell,
11909
16
      { "reportedCell", "rrlp.reportedCell",
11910
16
        FT_UINT32, BASE_DEC, VALS(rrlp_CellType_vals), 0,
11911
16
        "CellType", HFILL }},
11912
16
    { &hf_rrlp_msSyncAccuracy,
11913
16
      { "msSyncAccuracy", "rrlp.msSyncAccuracy",
11914
16
        FT_UINT32, BASE_DEC, NULL, 0,
11915
16
        "INTEGER_0_15", HFILL }},
11916
16
    { &hf_rrlp_observedTimeDiff,
11917
16
      { "observedTimeDiff", "rrlp.observedTimeDiff",
11918
16
        FT_UINT32, BASE_DEC, NULL, 0,
11919
16
        "INTEGER_0_999", HFILL }},
11920
16
    { &hf_rrlp_configuredNeighbourCellIdx,
11921
16
      { "configuredNeighbourCellIdx", "rrlp.configuredNeighbourCellIdx",
11922
16
        FT_UINT32, BASE_DEC, NULL, 0,
11923
16
        "INTEGER_1_48", HFILL }},
11924
16
    { &hf_rrlp_detectedNeighbourCell,
11925
16
      { "detectedNeighbourCell", "rrlp.detectedNeighbourCell_element",
11926
16
        FT_NONE, BASE_NONE, NULL, 0,
11927
16
        "CellInfo", HFILL }},
11928
16
    { &hf_rrlp_rxLEVMeasurementInfo1,
11929
16
      { "rxLEVMeasurementInfo1", "rrlp.rxLEVMeasurementInfo1_element",
11930
16
        FT_NONE, BASE_NONE, NULL, 0,
11931
16
        "RXLEVMeasurementInfo", HFILL }},
11932
16
    { &hf_rrlp_rxLEVMeasurementInfo2,
11933
16
      { "rxLEVMeasurementInfo2", "rrlp.rxLEVMeasurementInfo2_element",
11934
16
        FT_NONE, BASE_NONE, NULL, 0,
11935
16
        "RXLEVMeasurementInfo", HFILL }},
11936
16
    { &hf_rrlp_rxLEVMeasurementInfo3,
11937
16
      { "rxLEVMeasurementInfo3", "rrlp.rxLEVMeasurementInfo3_element",
11938
16
        FT_NONE, BASE_NONE, NULL, 0,
11939
16
        "RXLEVMeasurementInfo", HFILL }},
11940
16
    { &hf_rrlp_rxLEVMeasurementInfo4,
11941
16
      { "rxLEVMeasurementInfo4", "rrlp.rxLEVMeasurementInfo4_element",
11942
16
        FT_NONE, BASE_NONE, NULL, 0,
11943
16
        "RXLEVMeasurementInfo", HFILL }},
11944
16
    { &hf_rrlp_rxLEVMeasurementInfo5,
11945
16
      { "rxLEVMeasurementInfo5", "rrlp.rxLEVMeasurementInfo5_element",
11946
16
        FT_NONE, BASE_NONE, NULL, 0,
11947
16
        "RXLEVMeasurementInfo", HFILL }},
11948
16
    { &hf_rrlp_rxLEVMeasurementInfo6,
11949
16
      { "rxLEVMeasurementInfo6", "rrlp.rxLEVMeasurementInfo6_element",
11950
16
        FT_NONE, BASE_NONE, NULL, 0,
11951
16
        "RXLEVMeasurementInfo", HFILL }},
11952
16
    { &hf_rrlp_rxLEV,
11953
16
      { "rxLEV", "rrlp.rxLEV",
11954
16
        FT_UINT32, BASE_DEC, NULL, 0,
11955
16
        "INTEGER_0_63", HFILL }},
11956
16
    { &hf_rrlp_rlc_Data_Block,
11957
16
      { "rlc-Data-Block", "rrlp.rlc_Data_Block_element",
11958
16
        FT_NONE, BASE_NONE, NULL, 0,
11959
16
        NULL, HFILL }},
11960
16
    { &hf_rrlp_access_Burst,
11961
16
      { "access-Burst", "rrlp.access_Burst_element",
11962
16
        FT_NONE, BASE_NONE, NULL, 0,
11963
16
        NULL, HFILL }},
11964
16
    { &hf_rrlp_extended_Access_Burst,
11965
16
      { "extended-Access-Burst", "rrlp.extended_Access_Burst_element",
11966
16
        FT_NONE, BASE_NONE, NULL, 0,
11967
16
        NULL, HFILL }},
11968
16
    { &hf_rrlp_spare,
11969
16
      { "spare", "rrlp.spare_element",
11970
16
        FT_NONE, BASE_NONE, NULL, 0,
11971
16
        NULL, HFILL }},
11972
16
    { &hf_rrlp_random_ID1,
11973
16
      { "random-ID1", "rrlp.random_ID1",
11974
16
        FT_UINT32, BASE_DEC, NULL, 0,
11975
16
        "INTEGER_0_65535", HFILL }},
11976
16
    { &hf_rrlp_random_ID2,
11977
16
      { "random-ID2", "rrlp.random_ID2",
11978
16
        FT_UINT32, BASE_DEC, NULL, 0,
11979
16
        "INTEGER_0_65535", HFILL }},
11980
16
    { &hf_rrlp_random_ID3,
11981
16
      { "random-ID3", "rrlp.random_ID3",
11982
16
        FT_UINT32, BASE_DEC, NULL, 0,
11983
16
        "INTEGER_0_65535", HFILL }},
11984
16
    { &hf_rrlp_random_ID4,
11985
16
      { "random-ID4", "rrlp.random_ID4",
11986
16
        FT_UINT32, BASE_DEC, NULL, 0,
11987
16
        "INTEGER_0_65535", HFILL }},
11988
16
    { &hf_rrlp_random_ID5,
11989
16
      { "random-ID5", "rrlp.random_ID5",
11990
16
        FT_UINT32, BASE_DEC, NULL, 0,
11991
16
        "INTEGER_0_65535", HFILL }},
11992
16
    { &hf_rrlp_random_ID6,
11993
16
      { "random-ID6", "rrlp.random_ID6",
11994
16
        FT_UINT32, BASE_DEC, NULL, 0,
11995
16
        "INTEGER_0_65535", HFILL }},
11996
16
    { &hf_rrlp_random_ID7,
11997
16
      { "random-ID7", "rrlp.random_ID7",
11998
16
        FT_UINT32, BASE_DEC, NULL, 0,
11999
16
        "INTEGER_0_65535", HFILL }},
12000
16
    { &hf_rrlp_random_ID8,
12001
16
      { "random-ID8", "rrlp.random_ID8",
12002
16
        FT_UINT32, BASE_DEC, NULL, 0,
12003
16
        "INTEGER_0_65535", HFILL }},
12004
16
    { &hf_rrlp_random_ID9,
12005
16
      { "random-ID9", "rrlp.random_ID9",
12006
16
        FT_UINT32, BASE_DEC, NULL, 0,
12007
16
        "INTEGER_0_65535", HFILL }},
12008
16
    { &hf_rrlp_short_BSS_ID,
12009
16
      { "short-BSS-ID", "rrlp.short_BSS_ID",
12010
16
        FT_UINT32, BASE_DEC, NULL, 0,
12011
16
        "INTEGER_0_7", HFILL }},
12012
16
    { &hf_rrlp_co_sited_cell_Set_Member1,
12013
16
      { "co-sited-cell-Set-Member1", "rrlp.co_sited_cell_Set_Member1_element",
12014
16
        FT_NONE, BASE_NONE, NULL, 0,
12015
16
        "Co_Sited_Cell_Set_Member", HFILL }},
12016
16
    { &hf_rrlp_co_sited_cell_set_Member2,
12017
16
      { "co-sited-cell-set-Member2", "rrlp.co_sited_cell_set_Member2_element",
12018
16
        FT_NONE, BASE_NONE, NULL, 0,
12019
16
        "Co_Sited_Cell_Set_Member", HFILL }},
12020
16
    { &hf_rrlp_co_sited_cell_set_Member3,
12021
16
      { "co-sited-cell-set-Member3", "rrlp.co_sited_cell_set_Member3_element",
12022
16
        FT_NONE, BASE_NONE, NULL, 0,
12023
16
        "Co_Sited_Cell_Set_Member", HFILL }},
12024
16
    { &hf_rrlp_co_sited_cell_set_Member4,
12025
16
      { "co-sited-cell-set-Member4", "rrlp.co_sited_cell_set_Member4_element",
12026
16
        FT_NONE, BASE_NONE, NULL, 0,
12027
16
        "Co_Sited_Cell_Set_Member", HFILL }},
12028
16
    { &hf_rrlp_co_sited_cell_set_Member5,
12029
16
      { "co-sited-cell-set-Member5", "rrlp.co_sited_cell_set_Member5_element",
12030
16
        FT_NONE, BASE_NONE, NULL, 0,
12031
16
        "Co_Sited_Cell_Set_Member", HFILL }},
12032
16
    { &hf_rrlp_co_sited_cell_set_Member6,
12033
16
      { "co-sited-cell-set-Member6", "rrlp.co_sited_cell_set_Member6_element",
12034
16
        FT_NONE, BASE_NONE, NULL, 0,
12035
16
        "Co_Sited_Cell_Set_Member", HFILL }},
12036
16
    { &hf_rrlp_bsic_Info,
12037
16
      { "bsic-Info", "rrlp.bsic_Info_element",
12038
16
        FT_NONE, BASE_NONE, NULL, 0,
12039
16
        NULL, HFILL }},
12040
16
    { &hf_rrlp_cell_Set_Member1,
12041
16
      { "cell-Set-Member1", "rrlp.cell_Set_Member1_element",
12042
16
        FT_NONE, BASE_NONE, NULL, 0,
12043
16
        "Cell_Set_Member", HFILL }},
12044
16
    { &hf_rrlp_cell_set_Member2,
12045
16
      { "cell-set-Member2", "rrlp.cell_set_Member2_element",
12046
16
        FT_NONE, BASE_NONE, NULL, 0,
12047
16
        "Cell_Set_Member", HFILL }},
12048
16
    { &hf_rrlp_cell_set_Member3,
12049
16
      { "cell-set-Member3", "rrlp.cell_set_Member3_element",
12050
16
        FT_NONE, BASE_NONE, NULL, 0,
12051
16
        "Cell_Set_Member", HFILL }},
12052
16
    { &hf_rrlp_cell_set_Member4,
12053
16
      { "cell-set-Member4", "rrlp.cell_set_Member4_element",
12054
16
        FT_NONE, BASE_NONE, NULL, 0,
12055
16
        "Cell_Set_Member", HFILL }},
12056
16
    { &hf_rrlp_cell_set_Member5,
12057
16
      { "cell-set-Member5", "rrlp.cell_set_Member5_element",
12058
16
        FT_NONE, BASE_NONE, NULL, 0,
12059
16
        "Cell_Set_Member", HFILL }},
12060
16
    { &hf_rrlp_cell_set_Member6,
12061
16
      { "cell-set-Member6", "rrlp.cell_set_Member6_element",
12062
16
        FT_NONE, BASE_NONE, NULL, 0,
12063
16
        "Cell_Set_Member", HFILL }},
12064
16
    { &hf_rrlp_short_ID,
12065
16
      { "short-ID", "rrlp.short_ID",
12066
16
        FT_UINT32, BASE_DEC, NULL, 0,
12067
16
        "INTEGER_0_255", HFILL }},
12068
16
    { &hf_rrlp_ec_cell_information,
12069
16
      { "ec-cell-information", "rrlp.ec_cell_information",
12070
16
        FT_UINT32, BASE_DEC, VALS(rrlp_T_ec_cell_information_vals), 0,
12071
16
        NULL, HFILL }},
12072
16
    { &hf_rrlp_ec_RACH_Control_Parameters,
12073
16
      { "ec-RACH-Control-Parameters", "rrlp.ec_RACH_Control_Parameters_element",
12074
16
        FT_NONE, BASE_NONE, NULL, 0,
12075
16
        NULL, HFILL }},
12076
16
    { &hf_rrlp_default_ec_RACH_Control_Parameters,
12077
16
      { "default-ec-RACH-Control-Parameters", "rrlp.default_ec_RACH_Control_Parameters_element",
12078
16
        FT_NONE, BASE_NONE, NULL, 0,
12079
16
        NULL, HFILL }},
12080
16
    { &hf_rrlp_peo_cell_information,
12081
16
      { "peo-cell-information", "rrlp.peo_cell_information",
12082
16
        FT_UINT32, BASE_DEC, VALS(rrlp_T_peo_cell_information_vals), 0,
12083
16
        NULL, HFILL }},
12084
16
    { &hf_rrlp_rach_Control_Parameters,
12085
16
      { "rach-Control-Parameters", "rrlp.rach_Control_Parameters_element",
12086
16
        FT_NONE, BASE_NONE, NULL, 0,
12087
16
        NULL, HFILL }},
12088
16
    { &hf_rrlp_default_rach_Control_Parameters,
12089
16
      { "default-rach-Control-Parameters", "rrlp.default_rach_Control_Parameters_element",
12090
16
        FT_NONE, BASE_NONE, NULL, 0,
12091
16
        NULL, HFILL }},
12092
16
    { &hf_rrlp_radio_Frequency_Colour_Code,
12093
16
      { "radio-Frequency-Colour-Code", "rrlp.radio_Frequency_Colour_Code",
12094
16
        FT_UINT32, BASE_DEC, NULL, 0,
12095
16
        "INTEGER_0_7", HFILL }},
12096
16
    { &hf_rrlp_network_Colour_Code,
12097
16
      { "network-Colour-Code", "rrlp.network_Colour_Code",
12098
16
        FT_UINT32, BASE_DEC, NULL, 0,
12099
16
        "INTEGER_0_7", HFILL }},
12100
16
    { &hf_rrlp_base_station_Colour_Code,
12101
16
      { "base-station-Colour-Code", "rrlp.base_station_Colour_Code",
12102
16
        FT_UINT32, BASE_DEC, NULL, 0,
12103
16
        "INTEGER_0_7", HFILL }},
12104
16
    { &hf_rrlp_ec_BS_CC_CHANS,
12105
16
      { "ec-BS-CC-CHANS", "rrlp.ec_BS_CC_CHANS",
12106
16
        FT_UINT32, BASE_DEC, NULL, 0,
12107
16
        "INTEGER_0_3", HFILL }},
12108
16
    { &hf_rrlp_ec_RXLEV_ACCESS_MIN,
12109
16
      { "ec-RXLEV-ACCESS-MIN", "rrlp.ec_RXLEV_ACCESS_MIN",
12110
16
        FT_UINT32, BASE_DEC, NULL, 0,
12111
16
        "INTEGER_0_63", HFILL }},
12112
16
    { &hf_rrlp_ms_TXPWR_MAX_CCH,
12113
16
      { "ms-TXPWR-MAX-CCH", "rrlp.ms_TXPWR_MAX_CCH",
12114
16
        FT_UINT32, BASE_DEC, NULL, 0,
12115
16
        "INTEGER_0_31", HFILL }},
12116
16
    { &hf_rrlp_lb_MS_TXPWR_MAX_CCH,
12117
16
      { "lb-MS-TXPWR-MAX-CCH", "rrlp.lb_MS_TXPWR_MAX_CCH",
12118
16
        FT_UINT32, BASE_DEC, NULL, 0,
12119
16
        "INTEGER_0_31", HFILL }},
12120
16
    { &hf_rrlp_cell_SELECTION_RLA_MARGIN,
12121
16
      { "cell-SELECTION-RLA-MARGIN", "rrlp.cell_SELECTION_RLA_MARGIN",
12122
16
        FT_UINT32, BASE_DEC, NULL, 0,
12123
16
        "INTEGER_0_7", HFILL }},
12124
16
    { &hf_rrlp_dl_CC_Selection,
12125
16
      { "dl-CC-Selection", "rrlp.dl_CC_Selection",
12126
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12127
16
        "BOOLEAN", HFILL }},
12128
16
    { &hf_rrlp_bt_Threshold_DL,
12129
16
      { "bt-Threshold-DL", "rrlp.bt_Threshold_DL",
12130
16
        FT_UINT32, BASE_DEC, NULL, 0,
12131
16
        "INTEGER_0_31", HFILL }},
12132
16
    { &hf_rrlp_cc2_Range_DL,
12133
16
      { "cc2-Range-DL", "rrlp.cc2_Range_DL",
12134
16
        FT_UINT32, BASE_DEC, NULL, 0,
12135
16
        "INTEGER_0_31", HFILL }},
12136
16
    { &hf_rrlp_cc3_Range_DL,
12137
16
      { "cc3-Range-DL", "rrlp.cc3_Range_DL",
12138
16
        FT_UINT32, BASE_DEC, NULL, 0,
12139
16
        "INTEGER_0_31", HFILL }},
12140
16
    { &hf_rrlp_bt_Threshold_UL,
12141
16
      { "bt-Threshold-UL", "rrlp.bt_Threshold_UL",
12142
16
        FT_UINT32, BASE_DEC, NULL, 0,
12143
16
        "INTEGER_0_31", HFILL }},
12144
16
    { &hf_rrlp_cc2_Range_UL,
12145
16
      { "cc2-Range-UL", "rrlp.cc2_Range_UL",
12146
16
        FT_UINT32, BASE_DEC, NULL, 0,
12147
16
        "INTEGER_0_31", HFILL }},
12148
16
    { &hf_rrlp_cc3_Range_UL,
12149
16
      { "cc3-Range-UL", "rrlp.cc3_Range_UL",
12150
16
        FT_UINT32, BASE_DEC, NULL, 0,
12151
16
        "INTEGER_0_31", HFILL }},
12152
16
    { &hf_rrlp_cc4_Range_UL,
12153
16
      { "cc4-Range-UL", "rrlp.cc4_Range_UL",
12154
16
        FT_UINT32, BASE_DEC, NULL, 0,
12155
16
        "INTEGER_0_31", HFILL }},
12156
16
    { &hf_rrlp_bsPWR,
12157
16
      { "bsPWR", "rrlp.bsPWR",
12158
16
        FT_UINT32, BASE_DEC, NULL, 0,
12159
16
        "INTEGER_0_63", HFILL }},
12160
16
    { &hf_rrlp_dl_Signal_Strength_Step_Size,
12161
16
      { "dl-Signal-Strength-Step-Size", "rrlp.dl_Signal_Strength_Step_Size",
12162
16
        FT_UINT32, BASE_DEC, NULL, 0,
12163
16
        "INTEGER_0_3", HFILL }},
12164
16
    { &hf_rrlp_ec_Reduced_PDCH_Allocation,
12165
16
      { "ec-Reduced-PDCH-Allocation", "rrlp.ec_Reduced_PDCH_Allocation",
12166
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12167
16
        "BOOLEAN", HFILL }},
12168
16
    { &hf_rrlp_ec_Max_Retrans,
12169
16
      { "ec-Max-Retrans", "rrlp.ec_Max_Retrans",
12170
16
        FT_INT32, BASE_DEC, NULL, 0,
12171
16
        "INTEGER", HFILL }},
12172
16
    { &hf_rrlp_sm,
12173
16
      { "sm", "rrlp.sm",
12174
16
        FT_UINT32, BASE_DEC, NULL, 0,
12175
16
        "INTEGER_0_3", HFILL }},
12176
16
    { &hf_rrlp_tm,
12177
16
      { "tm", "rrlp.tm",
12178
16
        FT_UINT32, BASE_DEC, NULL, 0,
12179
16
        "INTEGER_0_3", HFILL }},
12180
16
    { &hf_rrlp_access_Timeslots,
12181
16
      { "access-Timeslots", "rrlp.access_Timeslots",
12182
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12183
16
        "BOOLEAN", HFILL }},
12184
16
    { &hf_rrlp_alpha,
12185
16
      { "alpha", "rrlp.alpha",
12186
16
        FT_UINT32, BASE_DEC, NULL, 0,
12187
16
        "INTEGER_0_15", HFILL }},
12188
16
    { &hf_rrlp_t3168,
12189
16
      { "t3168", "rrlp.t3168",
12190
16
        FT_UINT32, BASE_DEC, NULL, 0,
12191
16
        "INTEGER_0_7", HFILL }},
12192
16
    { &hf_rrlp_t3192,
12193
16
      { "t3192", "rrlp.t3192",
12194
16
        FT_UINT32, BASE_DEC, NULL, 0,
12195
16
        "INTEGER_0_7", HFILL }},
12196
16
    { &hf_rrlp_t3226,
12197
16
      { "t3226", "rrlp.t3226",
12198
16
        FT_UINT32, BASE_DEC, NULL, 0,
12199
16
        "INTEGER_0_7", HFILL }},
12200
16
    { &hf_rrlp_t3248,
12201
16
      { "t3248", "rrlp.t3248",
12202
16
        FT_UINT32, BASE_DEC, NULL, 0,
12203
16
        "INTEGER_0_3", HFILL }},
12204
16
    { &hf_rrlp_mta_BITMAP,
12205
16
      { "mta-BITMAP", "rrlp.mta_BITMAP_element",
12206
16
        FT_NONE, BASE_NONE, NULL, 0,
12207
16
        NULL, HFILL }},
12208
16
    { &hf_rrlp_rxlev_ACCESS_MIN,
12209
16
      { "rxlev-ACCESS-MIN", "rrlp.rxlev_ACCESS_MIN",
12210
16
        FT_UINT32, BASE_DEC, NULL, 0,
12211
16
        "INTEGER_0_63", HFILL }},
12212
16
    { &hf_rrlp_max_Retrans,
12213
16
      { "max-Retrans", "rrlp.max_Retrans",
12214
16
        FT_UINT32, BASE_DEC, NULL, 0,
12215
16
        "INTEGER_0_3", HFILL }},
12216
16
    { &hf_rrlp_tx_integer,
12217
16
      { "tx-integer", "rrlp.tx_integer",
12218
16
        FT_UINT32, BASE_DEC, NULL, 0,
12219
16
        "INTEGER_0_15", HFILL }},
12220
16
    { &hf_rrlp_mta_RLC_Data_Block_method,
12221
16
      { "mta-RLC-Data-Block-method", "rrlp.mta_RLC_Data_Block_method",
12222
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12223
16
        "BOOLEAN", HFILL }},
12224
16
    { &hf_rrlp_mta_Access_Burst_method,
12225
16
      { "mta-Access-Burst-method", "rrlp.mta_Access_Burst_method",
12226
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12227
16
        "BOOLEAN", HFILL }},
12228
16
    { &hf_rrlp_mta_Extended_Access_Burst_method,
12229
16
      { "mta-Extended-Access-Burst-method", "rrlp.mta_Extended_Access_Burst_method",
12230
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12231
16
        "BOOLEAN", HFILL }},
12232
16
    { &hf_rrlp_mta_spare,
12233
16
      { "mta-spare", "rrlp.mta_spare",
12234
16
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12235
16
        "BOOLEAN", HFILL }},
12236
16
    { &hf_rrlp_mta_access_security_method,
12237
16
      { "mta-access-security-method", "rrlp.mta_access_security_method_element",
12238
16
        FT_NONE, BASE_NONE, NULL, 0,
12239
16
        NULL, HFILL }},
12240
16
    { &hf_rrlp_bss_duplication_detection_method,
12241
16
      { "bss-duplication-detection-method", "rrlp.bss_duplication_detection_method_element",
12242
16
        FT_NONE, BASE_NONE, NULL, 0,
12243
16
        NULL, HFILL }},
12244
16
    { &hf_rrlp_GANSSPositioningMethod_gps,
12245
16
      { "gps", "rrlp.GANSSPositioningMethod.gps",
12246
16
        FT_BOOLEAN, 8, NULL, 0x80,
12247
16
        NULL, HFILL }},
12248
16
    { &hf_rrlp_GANSSPositioningMethod_galileo,
12249
16
      { "galileo", "rrlp.GANSSPositioningMethod.galileo",
12250
16
        FT_BOOLEAN, 8, NULL, 0x40,
12251
16
        NULL, HFILL }},
12252
16
    { &hf_rrlp_GANSSPositioningMethod_sbas,
12253
16
      { "sbas", "rrlp.GANSSPositioningMethod.sbas",
12254
16
        FT_BOOLEAN, 8, NULL, 0x20,
12255
16
        NULL, HFILL }},
12256
16
    { &hf_rrlp_GANSSPositioningMethod_modernizedGPS,
12257
16
      { "modernizedGPS", "rrlp.GANSSPositioningMethod.modernizedGPS",
12258
16
        FT_BOOLEAN, 8, NULL, 0x10,
12259
16
        NULL, HFILL }},
12260
16
    { &hf_rrlp_GANSSPositioningMethod_qzss,
12261
16
      { "qzss", "rrlp.GANSSPositioningMethod.qzss",
12262
16
        FT_BOOLEAN, 8, NULL, 0x08,
12263
16
        NULL, HFILL }},
12264
16
    { &hf_rrlp_GANSSPositioningMethod_glonass,
12265
16
      { "glonass", "rrlp.GANSSPositioningMethod.glonass",
12266
16
        FT_BOOLEAN, 8, NULL, 0x04,
12267
16
        NULL, HFILL }},
12268
16
    { &hf_rrlp_GANSSPositioningMethod_bd,
12269
16
      { "bd", "rrlp.GANSSPositioningMethod.bd",
12270
16
        FT_BOOLEAN, 8, NULL, 0x02,
12271
16
        NULL, HFILL }},
12272
16
    { &hf_rrlp_PositionData_e_otd,
12273
16
      { "e-otd", "rrlp.PositionData.e.otd",
12274
16
        FT_BOOLEAN, 8, NULL, 0x80,
12275
16
        NULL, HFILL }},
12276
16
    { &hf_rrlp_PositionData_gps,
12277
16
      { "gps", "rrlp.PositionData.gps",
12278
16
        FT_BOOLEAN, 8, NULL, 0x40,
12279
16
        NULL, HFILL }},
12280
16
    { &hf_rrlp_PositionData_galileo,
12281
16
      { "galileo", "rrlp.PositionData.galileo",
12282
16
        FT_BOOLEAN, 8, NULL, 0x20,
12283
16
        NULL, HFILL }},
12284
16
    { &hf_rrlp_PositionData_sbas,
12285
16
      { "sbas", "rrlp.PositionData.sbas",
12286
16
        FT_BOOLEAN, 8, NULL, 0x10,
12287
16
        NULL, HFILL }},
12288
16
    { &hf_rrlp_PositionData_modernizedGPS,
12289
16
      { "modernizedGPS", "rrlp.PositionData.modernizedGPS",
12290
16
        FT_BOOLEAN, 8, NULL, 0x08,
12291
16
        NULL, HFILL }},
12292
16
    { &hf_rrlp_PositionData_qzss,
12293
16
      { "qzss", "rrlp.PositionData.qzss",
12294
16
        FT_BOOLEAN, 8, NULL, 0x04,
12295
16
        NULL, HFILL }},
12296
16
    { &hf_rrlp_PositionData_glonass,
12297
16
      { "glonass", "rrlp.PositionData.glonass",
12298
16
        FT_BOOLEAN, 8, NULL, 0x02,
12299
16
        NULL, HFILL }},
12300
16
    { &hf_rrlp_PositionData_bds,
12301
16
      { "bds", "rrlp.PositionData.bds",
12302
16
        FT_BOOLEAN, 8, NULL, 0x01,
12303
16
        NULL, HFILL }},
12304
16
    { &hf_rrlp_NonGANSSPositionMethods_msAssistedEOTD,
12305
16
      { "msAssistedEOTD", "rrlp.NonGANSSPositionMethods.msAssistedEOTD",
12306
16
        FT_BOOLEAN, 8, NULL, 0x80,
12307
16
        NULL, HFILL }},
12308
16
    { &hf_rrlp_NonGANSSPositionMethods_msBasedEOTD,
12309
16
      { "msBasedEOTD", "rrlp.NonGANSSPositionMethods.msBasedEOTD",
12310
16
        FT_BOOLEAN, 8, NULL, 0x40,
12311
16
        NULL, HFILL }},
12312
16
    { &hf_rrlp_NonGANSSPositionMethods_msAssistedGPS,
12313
16
      { "msAssistedGPS", "rrlp.NonGANSSPositionMethods.msAssistedGPS",
12314
16
        FT_BOOLEAN, 8, NULL, 0x20,
12315
16
        NULL, HFILL }},
12316
16
    { &hf_rrlp_NonGANSSPositionMethods_msBasedGPS,
12317
16
      { "msBasedGPS", "rrlp.NonGANSSPositionMethods.msBasedGPS",
12318
16
        FT_BOOLEAN, 8, NULL, 0x10,
12319
16
        NULL, HFILL }},
12320
16
    { &hf_rrlp_NonGANSSPositionMethods_standaloneGPS,
12321
16
      { "standaloneGPS", "rrlp.NonGANSSPositionMethods.standaloneGPS",
12322
16
        FT_BOOLEAN, 8, NULL, 0x08,
12323
16
        NULL, HFILL }},
12324
16
    { &hf_rrlp_GANSSPositioningMethodTypes_msAssisted,
12325
16
      { "msAssisted", "rrlp.GANSSPositioningMethodTypes.msAssisted",
12326
16
        FT_BOOLEAN, 8, NULL, 0x80,
12327
16
        NULL, HFILL }},
12328
16
    { &hf_rrlp_GANSSPositioningMethodTypes_msBased,
12329
16
      { "msBased", "rrlp.GANSSPositioningMethodTypes.msBased",
12330
16
        FT_BOOLEAN, 8, NULL, 0x40,
12331
16
        NULL, HFILL }},
12332
16
    { &hf_rrlp_GANSSPositioningMethodTypes_standalone,
12333
16
      { "standalone", "rrlp.GANSSPositioningMethodTypes.standalone",
12334
16
        FT_BOOLEAN, 8, NULL, 0x20,
12335
16
        NULL, HFILL }},
12336
16
    { &hf_rrlp_GANSSSignals_signal1,
12337
16
      { "signal1", "rrlp.GANSSSignals.signal1",
12338
16
        FT_BOOLEAN, 8, NULL, 0x80,
12339
16
        NULL, HFILL }},
12340
16
    { &hf_rrlp_GANSSSignals_signal2,
12341
16
      { "signal2", "rrlp.GANSSSignals.signal2",
12342
16
        FT_BOOLEAN, 8, NULL, 0x40,
12343
16
        NULL, HFILL }},
12344
16
    { &hf_rrlp_GANSSSignals_signal3,
12345
16
      { "signal3", "rrlp.GANSSSignals.signal3",
12346
16
        FT_BOOLEAN, 8, NULL, 0x20,
12347
16
        NULL, HFILL }},
12348
16
    { &hf_rrlp_GANSSSignals_signal4,
12349
16
      { "signal4", "rrlp.GANSSSignals.signal4",
12350
16
        FT_BOOLEAN, 8, NULL, 0x10,
12351
16
        NULL, HFILL }},
12352
16
    { &hf_rrlp_GANSSSignals_signal5,
12353
16
      { "signal5", "rrlp.GANSSSignals.signal5",
12354
16
        FT_BOOLEAN, 8, NULL, 0x08,
12355
16
        NULL, HFILL }},
12356
16
    { &hf_rrlp_GANSSSignals_signal6,
12357
16
      { "signal6", "rrlp.GANSSSignals.signal6",
12358
16
        FT_BOOLEAN, 8, NULL, 0x04,
12359
16
        NULL, HFILL }},
12360
16
    { &hf_rrlp_GANSSSignals_signal7,
12361
16
      { "signal7", "rrlp.GANSSSignals.signal7",
12362
16
        FT_BOOLEAN, 8, NULL, 0x02,
12363
16
        NULL, HFILL }},
12364
16
    { &hf_rrlp_GANSSSignals_signal8,
12365
16
      { "signal8", "rrlp.GANSSSignals.signal8",
12366
16
        FT_BOOLEAN, 8, NULL, 0x01,
12367
16
        NULL, HFILL }},
12368
16
    { &hf_rrlp_SBASID_waas,
12369
16
      { "waas", "rrlp.SBASID.waas",
12370
16
        FT_BOOLEAN, 8, NULL, 0x80,
12371
16
        NULL, HFILL }},
12372
16
    { &hf_rrlp_SBASID_egnos,
12373
16
      { "egnos", "rrlp.SBASID.egnos",
12374
16
        FT_BOOLEAN, 8, NULL, 0x40,
12375
16
        NULL, HFILL }},
12376
16
    { &hf_rrlp_SBASID_masas,
12377
16
      { "masas", "rrlp.SBASID.masas",
12378
16
        FT_BOOLEAN, 8, NULL, 0x20,
12379
16
        NULL, HFILL }},
12380
16
    { &hf_rrlp_SBASID_gagan,
12381
16
      { "gagan", "rrlp.SBASID.gagan",
12382
16
        FT_BOOLEAN, 8, NULL, 0x10,
12383
16
        NULL, HFILL }},
12384
16
    { &hf_rrlp_MultipleMeasurementSets_eotd,
12385
16
      { "eotd", "rrlp.MultipleMeasurementSets.eotd",
12386
16
        FT_BOOLEAN, 8, NULL, 0x80,
12387
16
        NULL, HFILL }},
12388
16
    { &hf_rrlp_MultipleMeasurementSets_gps,
12389
16
      { "gps", "rrlp.MultipleMeasurementSets.gps",
12390
16
        FT_BOOLEAN, 8, NULL, 0x40,
12391
16
        NULL, HFILL }},
12392
16
    { &hf_rrlp_MultipleMeasurementSets_ganss,
12393
16
      { "ganss", "rrlp.MultipleMeasurementSets.ganss",
12394
16
        FT_BOOLEAN, 8, NULL, 0x20,
12395
16
        NULL, HFILL }},
12396
16
    { &hf_rrlp_GPSAssistance_almanac,
12397
16
      { "almanac", "rrlp.GPSAssistance.almanac",
12398
16
        FT_BOOLEAN, 8, NULL, 0x80,
12399
16
        NULL, HFILL }},
12400
16
    { &hf_rrlp_GPSAssistance_uTCmodel,
12401
16
      { "uTCmodel", "rrlp.GPSAssistance.uTCmodel",
12402
16
        FT_BOOLEAN, 8, NULL, 0x40,
12403
16
        NULL, HFILL }},
12404
16
    { &hf_rrlp_GPSAssistance_ionosphericModel,
12405
16
      { "ionosphericModel", "rrlp.GPSAssistance.ionosphericModel",
12406
16
        FT_BOOLEAN, 8, NULL, 0x20,
12407
16
        NULL, HFILL }},
12408
16
    { &hf_rrlp_GPSAssistance_navigationmodel,
12409
16
      { "navigationmodel", "rrlp.GPSAssistance.navigationmodel",
12410
16
        FT_BOOLEAN, 8, NULL, 0x10,
12411
16
        NULL, HFILL }},
12412
16
    { &hf_rrlp_GPSAssistance_dGPScorrections,
12413
16
      { "dGPScorrections", "rrlp.GPSAssistance.dGPScorrections",
12414
16
        FT_BOOLEAN, 8, NULL, 0x08,
12415
16
        NULL, HFILL }},
12416
16
    { &hf_rrlp_GPSAssistance_referenceLocation,
12417
16
      { "referenceLocation", "rrlp.GPSAssistance.referenceLocation",
12418
16
        FT_BOOLEAN, 8, NULL, 0x04,
12419
16
        NULL, HFILL }},
12420
16
    { &hf_rrlp_GPSAssistance_referenceTime,
12421
16
      { "referenceTime", "rrlp.GPSAssistance.referenceTime",
12422
16
        FT_BOOLEAN, 8, NULL, 0x02,
12423
16
        NULL, HFILL }},
12424
16
    { &hf_rrlp_GPSAssistance_acquisitionAssistance,
12425
16
      { "acquisitionAssistance", "rrlp.GPSAssistance.acquisitionAssistance",
12426
16
        FT_BOOLEAN, 8, NULL, 0x01,
12427
16
        NULL, HFILL }},
12428
16
    { &hf_rrlp_GPSAssistance_realTimeIntegrity,
12429
16
      { "realTimeIntegrity", "rrlp.GPSAssistance.realTimeIntegrity",
12430
16
        FT_BOOLEAN, 8, NULL, 0x80,
12431
16
        NULL, HFILL }},
12432
16
    { &hf_rrlp_GPSAssistance_ephemerisExtension,
12433
16
      { "ephemerisExtension", "rrlp.GPSAssistance.ephemerisExtension",
12434
16
        FT_BOOLEAN, 8, NULL, 0x40,
12435
16
        NULL, HFILL }},
12436
16
    { &hf_rrlp_GPSAssistance_ephemerisExtensionCheck,
12437
16
      { "ephemerisExtensionCheck", "rrlp.GPSAssistance.ephemerisExtensionCheck",
12438
16
        FT_BOOLEAN, 8, NULL, 0x20,
12439
16
        NULL, HFILL }},
12440
16
    { &hf_rrlp_GPSAssistance_gPSAcquisAssist_R12_Ext,
12441
16
      { "gPSAcquisAssist-R12-Ext", "rrlp.GPSAssistance.gPSAcquisAssist.R12.Ext",
12442
16
        FT_BOOLEAN, 8, NULL, 0x10,
12443
16
        NULL, HFILL }},
12444
16
    { &hf_rrlp_CommonGANSSAssistance_referenceTime,
12445
16
      { "referenceTime", "rrlp.CommonGANSSAssistance.referenceTime",
12446
16
        FT_BOOLEAN, 8, NULL, 0x80,
12447
16
        NULL, HFILL }},
12448
16
    { &hf_rrlp_CommonGANSSAssistance_referenceLocation,
12449
16
      { "referenceLocation", "rrlp.CommonGANSSAssistance.referenceLocation",
12450
16
        FT_BOOLEAN, 8, NULL, 0x40,
12451
16
        NULL, HFILL }},
12452
16
    { &hf_rrlp_CommonGANSSAssistance_spare_bit2,
12453
16
      { "spare_bit2", "rrlp.CommonGANSSAssistance.spare.bit2",
12454
16
        FT_BOOLEAN, 8, NULL, 0x20,
12455
16
        NULL, HFILL }},
12456
16
    { &hf_rrlp_CommonGANSSAssistance_ionosphericModel,
12457
16
      { "ionosphericModel", "rrlp.CommonGANSSAssistance.ionosphericModel",
12458
16
        FT_BOOLEAN, 8, NULL, 0x10,
12459
16
        NULL, HFILL }},
12460
16
    { &hf_rrlp_CommonGANSSAssistance_addIonosphericModel,
12461
16
      { "addIonosphericModel", "rrlp.CommonGANSSAssistance.addIonosphericModel",
12462
16
        FT_BOOLEAN, 8, NULL, 0x08,
12463
16
        NULL, HFILL }},
12464
16
    { &hf_rrlp_CommonGANSSAssistance_earthOrientationParam,
12465
16
      { "earthOrientationParam", "rrlp.CommonGANSSAssistance.earthOrientationParam",
12466
16
        FT_BOOLEAN, 8, NULL, 0x04,
12467
16
        NULL, HFILL }},
12468
16
    { &hf_rrlp_GANSSAssistance_realTimeIntegrity,
12469
16
      { "realTimeIntegrity", "rrlp.GANSSAssistance.realTimeIntegrity",
12470
16
        FT_BOOLEAN, 8, NULL, 0x80,
12471
16
        NULL, HFILL }},
12472
16
    { &hf_rrlp_GANSSAssistance_differentialCorrections,
12473
16
      { "differentialCorrections", "rrlp.GANSSAssistance.differentialCorrections",
12474
16
        FT_BOOLEAN, 8, NULL, 0x40,
12475
16
        NULL, HFILL }},
12476
16
    { &hf_rrlp_GANSSAssistance_almanac,
12477
16
      { "almanac", "rrlp.GANSSAssistance.almanac",
12478
16
        FT_BOOLEAN, 8, NULL, 0x20,
12479
16
        NULL, HFILL }},
12480
16
    { &hf_rrlp_GANSSAssistance_referenceMeasurementInformation,
12481
16
      { "referenceMeasurementInformation", "rrlp.GANSSAssistance.referenceMeasurementInformation",
12482
16
        FT_BOOLEAN, 8, NULL, 0x10,
12483
16
        NULL, HFILL }},
12484
16
    { &hf_rrlp_GANSSAssistance_navigationModel,
12485
16
      { "navigationModel", "rrlp.GANSSAssistance.navigationModel",
12486
16
        FT_BOOLEAN, 8, NULL, 0x08,
12487
16
        NULL, HFILL }},
12488
16
    { &hf_rrlp_GANSSAssistance_timeModelGNSS_UTC,
12489
16
      { "timeModelGNSS-UTC", "rrlp.GANSSAssistance.timeModelGNSS.UTC",
12490
16
        FT_BOOLEAN, 8, NULL, 0x04,
12491
16
        NULL, HFILL }},
12492
16
    { &hf_rrlp_GANSSAssistance_timeModelGNSS_GNSS,
12493
16
      { "timeModelGNSS-GNSS", "rrlp.GANSSAssistance.timeModelGNSS.GNSS",
12494
16
        FT_BOOLEAN, 8, NULL, 0x02,
12495
16
        NULL, HFILL }},
12496
16
    { &hf_rrlp_GANSSAssistance_databitassistance,
12497
16
      { "databitassistance", "rrlp.GANSSAssistance.databitassistance",
12498
16
        FT_BOOLEAN, 8, NULL, 0x01,
12499
16
        NULL, HFILL }},
12500
16
    { &hf_rrlp_GANSSAssistance_ephemerisExtension,
12501
16
      { "ephemerisExtension", "rrlp.GANSSAssistance.ephemerisExtension",
12502
16
        FT_BOOLEAN, 8, NULL, 0x80,
12503
16
        NULL, HFILL }},
12504
16
    { &hf_rrlp_GANSSAssistance_ephemerisExtensionCheck,
12505
16
      { "ephemerisExtensionCheck", "rrlp.GANSSAssistance.ephemerisExtensionCheck",
12506
16
        FT_BOOLEAN, 8, NULL, 0x40,
12507
16
        NULL, HFILL }},
12508
16
    { &hf_rrlp_GANSSAssistance_addUTCmodel,
12509
16
      { "addUTCmodel", "rrlp.GANSSAssistance.addUTCmodel",
12510
16
        FT_BOOLEAN, 8, NULL, 0x20,
12511
16
        NULL, HFILL }},
12512
16
    { &hf_rrlp_GANSSAssistance_auxiliaryInformation,
12513
16
      { "auxiliaryInformation", "rrlp.GANSSAssistance.auxiliaryInformation",
12514
16
        FT_BOOLEAN, 8, NULL, 0x10,
12515
16
        NULL, HFILL }},
12516
16
    { &hf_rrlp_GANSSAssistance_gANSSRefMeasurementAssist_R12_Ext,
12517
16
      { "gANSSRefMeasurementAssist-R12-Ext", "rrlp.GANSSAssistance.gANSSRefMeasurementAssist.R12.Ext",
12518
16
        FT_BOOLEAN, 8, NULL, 0x08,
12519
16
        NULL, HFILL }},
12520
16
    { &hf_rrlp_GANSSAssistance_bdsDifferentialCorrections_r12,
12521
16
      { "bdsDifferentialCorrections-r12", "rrlp.GANSSAssistance.bdsDifferentialCorrections.r12",
12522
16
        FT_BOOLEAN, 8, NULL, 0x04,
12523
16
        NULL, HFILL }},
12524
16
    { &hf_rrlp_GANSSAssistance_bdsGridModel_r12,
12525
16
      { "bdsGridModel-r12", "rrlp.GANSSAssistance.bdsGridModel.r12",
12526
16
        FT_BOOLEAN, 8, NULL, 0x02,
12527
16
        NULL, HFILL }},
12528
16
    { &hf_rrlp_GANSSModelID_model1,
12529
16
      { "model1", "rrlp.GANSSModelID.model1",
12530
16
        FT_BOOLEAN, 8, NULL, 0x80,
12531
16
        NULL, HFILL }},
12532
16
    { &hf_rrlp_GANSSModelID_model2,
12533
16
      { "model2", "rrlp.GANSSModelID.model2",
12534
16
        FT_BOOLEAN, 8, NULL, 0x40,
12535
16
        NULL, HFILL }},
12536
16
    { &hf_rrlp_GANSSModelID_model3,
12537
16
      { "model3", "rrlp.GANSSModelID.model3",
12538
16
        FT_BOOLEAN, 8, NULL, 0x20,
12539
16
        NULL, HFILL }},
12540
16
    { &hf_rrlp_GANSSModelID_model4,
12541
16
      { "model4", "rrlp.GANSSModelID.model4",
12542
16
        FT_BOOLEAN, 8, NULL, 0x10,
12543
16
        NULL, HFILL }},
12544
16
    { &hf_rrlp_GANSSModelID_model5,
12545
16
      { "model5", "rrlp.GANSSModelID.model5",
12546
16
        FT_BOOLEAN, 8, NULL, 0x08,
12547
16
        NULL, HFILL }},
12548
16
    { &hf_rrlp_GANSSModelID_model6,
12549
16
      { "model6", "rrlp.GANSSModelID.model6",
12550
16
        FT_BOOLEAN, 8, NULL, 0x04,
12551
16
        NULL, HFILL }},
12552
16
    { &hf_rrlp_GANSSModelID_model7,
12553
16
      { "model7", "rrlp.GANSSModelID.model7",
12554
16
        FT_BOOLEAN, 8, NULL, 0x02,
12555
16
        NULL, HFILL }},
12556
16
    { &hf_rrlp_GANSSModelID_model8,
12557
16
      { "model8", "rrlp.GANSSModelID.model8",
12558
16
        FT_BOOLEAN, 8, NULL, 0x01,
12559
16
        NULL, HFILL }},
12560
16
  };
12561
12562
  /* List of subtrees */
12563
16
  static int *ett[] = {
12564
16
    &ett_rrlp,
12565
16
    &ett_rrlp_ExtensionContainer,
12566
16
    &ett_rrlp_PrivateExtensionList,
12567
16
    &ett_rrlp_PrivateExtension,
12568
16
    &ett_rrlp_PCS_Extensions,
12569
16
    &ett_rrlp_PDU,
12570
16
    &ett_rrlp_RRLP_Component,
12571
16
    &ett_rrlp_MsrPosition_Req,
12572
16
    &ett_rrlp_MsrPosition_Rsp,
12573
16
    &ett_rrlp_AssistanceData,
12574
16
    &ett_rrlp_ProtocolError,
12575
16
    &ett_rrlp_PosCapability_Req,
12576
16
    &ett_rrlp_PosCapability_Rsp,
12577
16
    &ett_rrlp_PosMTA_Req,
12578
16
    &ett_rrlp_MultilaterationOTD_Req,
12579
16
    &ett_rrlp_MultilaterationOTD_Rsp,
12580
16
    &ett_rrlp_PositionInstruct,
12581
16
    &ett_rrlp_MethodType,
12582
16
    &ett_rrlp_AccuracyOpt,
12583
16
    &ett_rrlp_ReferenceAssistData,
12584
16
    &ett_rrlp_MsrAssistData,
12585
16
    &ett_rrlp_SeqOfMsrAssistBTS,
12586
16
    &ett_rrlp_MsrAssistBTS,
12587
16
    &ett_rrlp_SystemInfoAssistData,
12588
16
    &ett_rrlp_SeqOfSystemInfoAssistBTS,
12589
16
    &ett_rrlp_SystemInfoAssistBTS,
12590
16
    &ett_rrlp_AssistBTSData,
12591
16
    &ett_rrlp_CalcAssistanceBTS,
12592
16
    &ett_rrlp_ReferenceWGS84,
12593
16
    &ett_rrlp_MultipleSets,
12594
16
    &ett_rrlp_ReferenceIdentity,
12595
16
    &ett_rrlp_SeqOfReferenceIdentityType,
12596
16
    &ett_rrlp_ReferenceIdentityType,
12597
16
    &ett_rrlp_BSICAndCarrier,
12598
16
    &ett_rrlp_CellIDAndLAC,
12599
16
    &ett_rrlp_OTD_MeasureInfo,
12600
16
    &ett_rrlp_SeqOfOTD_MsrElementRest,
12601
16
    &ett_rrlp_OTD_MsrElementFirst,
12602
16
    &ett_rrlp_SeqOfOTD_FirstSetMsrs,
12603
16
    &ett_rrlp_OTD_MsrElementRest,
12604
16
    &ett_rrlp_SeqOfOTD_MsrsOfOtherSets,
12605
16
    &ett_rrlp_TOA_MeasurementsOfRef,
12606
16
    &ett_rrlp_OTD_MsrsOfOtherSets,
12607
16
    &ett_rrlp_OTD_Measurement,
12608
16
    &ett_rrlp_OTD_MeasurementWithID,
12609
16
    &ett_rrlp_EOTDQuality,
12610
16
    &ett_rrlp_NeighborIdentity,
12611
16
    &ett_rrlp_MultiFrameCarrier,
12612
16
    &ett_rrlp_LocationInfo,
12613
16
    &ett_rrlp_GPS_MeasureInfo,
12614
16
    &ett_rrlp_SeqOfGPS_MsrSetElement,
12615
16
    &ett_rrlp_GPS_MsrSetElement,
12616
16
    &ett_rrlp_SeqOfGPS_MsrElement,
12617
16
    &ett_rrlp_GPS_MsrElement,
12618
16
    &ett_rrlp_LocationError,
12619
16
    &ett_rrlp_AdditionalAssistanceData,
12620
16
    &ett_rrlp_GPS_AssistData,
12621
16
    &ett_rrlp_ControlHeader,
12622
16
    &ett_rrlp_ReferenceTime,
12623
16
    &ett_rrlp_GPSTime,
12624
16
    &ett_rrlp_GPSTOWAssist,
12625
16
    &ett_rrlp_GPSTOWAssistElement,
12626
16
    &ett_rrlp_GSMTime,
12627
16
    &ett_rrlp_RefLocation,
12628
16
    &ett_rrlp_DGPSCorrections,
12629
16
    &ett_rrlp_SeqOfSatElement,
12630
16
    &ett_rrlp_SatElement,
12631
16
    &ett_rrlp_NavigationModel,
12632
16
    &ett_rrlp_SeqOfNavModelElement,
12633
16
    &ett_rrlp_NavModelElement,
12634
16
    &ett_rrlp_SatStatus,
12635
16
    &ett_rrlp_UncompressedEphemeris,
12636
16
    &ett_rrlp_EphemerisSubframe1Reserved,
12637
16
    &ett_rrlp_IonosphericModel,
12638
16
    &ett_rrlp_UTCModel,
12639
16
    &ett_rrlp_Almanac,
12640
16
    &ett_rrlp_SeqOfAlmanacElement,
12641
16
    &ett_rrlp_AlmanacElement,
12642
16
    &ett_rrlp_AcquisAssist,
12643
16
    &ett_rrlp_SeqOfAcquisElement,
12644
16
    &ett_rrlp_TimeRelation,
12645
16
    &ett_rrlp_AcquisElement,
12646
16
    &ett_rrlp_AddionalDopplerFields,
12647
16
    &ett_rrlp_AddionalAngleFields,
12648
16
    &ett_rrlp_SeqOf_BadSatelliteSet,
12649
16
    &ett_rrlp_Rel98_MsrPosition_Req_Extension,
12650
16
    &ett_rrlp_Rel98_AssistanceData_Extension,
12651
16
    &ett_rrlp_Rel98_Ext_ExpOTD,
12652
16
    &ett_rrlp_MsrAssistData_R98_ExpOTD,
12653
16
    &ett_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD,
12654
16
    &ett_rrlp_MsrAssistBTS_R98_ExpOTD,
12655
16
    &ett_rrlp_SystemInfoAssistData_R98_ExpOTD,
12656
16
    &ett_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD,
12657
16
    &ett_rrlp_SystemInfoAssistBTS_R98_ExpOTD,
12658
16
    &ett_rrlp_AssistBTSData_R98_ExpOTD,
12659
16
    &ett_rrlp_GPSTimeAssistanceMeasurements,
12660
16
    &ett_rrlp_Rel_98_MsrPosition_Rsp_Extension,
12661
16
    &ett_rrlp_T_rel_98_Ext_MeasureInfo,
12662
16
    &ett_rrlp_OTD_MeasureInfo_R98_Ext,
12663
16
    &ett_rrlp_OTD_MsrElementFirst_R98_Ext,
12664
16
    &ett_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext,
12665
16
    &ett_rrlp_Rel_5_MsrPosition_Rsp_Extension,
12666
16
    &ett_rrlp_Extended_reference,
12667
16
    &ett_rrlp_Rel5_MsrPosition_Req_Extension,
12668
16
    &ett_rrlp_Rel5_AssistanceData_Extension,
12669
16
    &ett_rrlp_Rel_5_ProtocolError_Extension,
12670
16
    &ett_rrlp_Rel7_MsrPosition_Req_Extension,
12671
16
    &ett_rrlp_GANSSPositioningMethod,
12672
16
    &ett_rrlp_GANSS_AssistData,
12673
16
    &ett_rrlp_GANSS_ControlHeader,
12674
16
    &ett_rrlp_GANSSCommonAssistData,
12675
16
    &ett_rrlp_SeqOfGANSSGenericAssistDataElement,
12676
16
    &ett_rrlp_GANSSGenericAssistDataElement,
12677
16
    &ett_rrlp_GANSSReferenceTime,
12678
16
    &ett_rrlp_GANSSRefTimeInfo,
12679
16
    &ett_rrlp_GANSSReferenceTime_R10_Ext,
12680
16
    &ett_rrlp_GANSSTOD_GSMTimeAssociation,
12681
16
    &ett_rrlp_GANSSRefLocation,
12682
16
    &ett_rrlp_GANSSIonosphericModel,
12683
16
    &ett_rrlp_GANSSIonosphereModel,
12684
16
    &ett_rrlp_GANSSIonoStormFlags,
12685
16
    &ett_rrlp_GANSSAddIonosphericModel,
12686
16
    &ett_rrlp_GANSSEarthOrientParam,
12687
16
    &ett_rrlp_SeqOfGANSSTimeModel,
12688
16
    &ett_rrlp_GANSSTimeModelElement,
12689
16
    &ett_rrlp_SeqOfGANSSTimeModel_R10_Ext,
12690
16
    &ett_rrlp_GANSSTimeModelElement_R10_Ext,
12691
16
    &ett_rrlp_GANSSDiffCorrections,
12692
16
    &ett_rrlp_SeqOfSgnTypeElement,
12693
16
    &ett_rrlp_SgnTypeElement,
12694
16
    &ett_rrlp_SeqOfDGANSSSgnElement,
12695
16
    &ett_rrlp_DGANSSSgnElement,
12696
16
    &ett_rrlp_GANSSNavModel,
12697
16
    &ett_rrlp_SeqOfGANSSSatelliteElement,
12698
16
    &ett_rrlp_GANSSSatelliteElement,
12699
16
    &ett_rrlp_GANSSOrbitModel,
12700
16
    &ett_rrlp_NavModel_KeplerianSet,
12701
16
    &ett_rrlp_NavModel_NAVKeplerianSet,
12702
16
    &ett_rrlp_NavModel_CNAVKeplerianSet,
12703
16
    &ett_rrlp_NavModel_GLONASSecef,
12704
16
    &ett_rrlp_NavModel_SBASecef,
12705
16
    &ett_rrlp_NavModel_BDSKeplerianSet_r12,
12706
16
    &ett_rrlp_GANSSClockModel,
12707
16
    &ett_rrlp_SeqOfStandardClockModelElement,
12708
16
    &ett_rrlp_StandardClockModelElement,
12709
16
    &ett_rrlp_NAVclockModel,
12710
16
    &ett_rrlp_CNAVclockModel,
12711
16
    &ett_rrlp_GLONASSclockModel,
12712
16
    &ett_rrlp_SBASclockModel,
12713
16
    &ett_rrlp_BDSClockModel_r12,
12714
16
    &ett_rrlp_GANSSRealTimeIntegrity,
12715
16
    &ett_rrlp_SeqOfBadSignalElement,
12716
16
    &ett_rrlp_BadSignalElement,
12717
16
    &ett_rrlp_GANSSDataBitAssist,
12718
16
    &ett_rrlp_SeqOfGanssDataBitsElement,
12719
16
    &ett_rrlp_GanssDataBitsElement,
12720
16
    &ett_rrlp_Seq_OfGANSSDataBitsSgn,
12721
16
    &ett_rrlp_GANSSDataBitsSgnElement,
12722
16
    &ett_rrlp_SeqOf_GANSSDataBits,
12723
16
    &ett_rrlp_GANSSRefMeasurementAssist,
12724
16
    &ett_rrlp_SeqOfGANSSRefMeasurementElement,
12725
16
    &ett_rrlp_GANSSRefMeasurementElement,
12726
16
    &ett_rrlp_AdditionalDopplerFields,
12727
16
    &ett_rrlp_GANSSRefMeasurementAssist_R10_Ext,
12728
16
    &ett_rrlp_GANSSRefMeasurement_R10_Ext_Element,
12729
16
    &ett_rrlp_GANSSRefMeasurementAssist_R12_Ext,
12730
16
    &ett_rrlp_SeqOfGANSSRefMeasurementElement_R12,
12731
16
    &ett_rrlp_GANSSRefMeasurement_R12_Ext_Element,
12732
16
    &ett_rrlp_GANSSAlmanacModel,
12733
16
    &ett_rrlp_SeqOfGANSSAlmanacElement,
12734
16
    &ett_rrlp_GANSSAlmanacElement,
12735
16
    &ett_rrlp_Almanac_KeplerianSet,
12736
16
    &ett_rrlp_Almanac_NAVKeplerianSet,
12737
16
    &ett_rrlp_Almanac_ReducedKeplerianSet,
12738
16
    &ett_rrlp_Almanac_MidiAlmanacSet,
12739
16
    &ett_rrlp_Almanac_GlonassAlmanacSet,
12740
16
    &ett_rrlp_Almanac_ECEFsbasAlmanacSet,
12741
16
    &ett_rrlp_Almanac_BDSAlmanacSet_r12,
12742
16
    &ett_rrlp_GANSSAlmanacModel_R10_Ext,
12743
16
    &ett_rrlp_GANSSAlmanacModel_R12_Ext,
12744
16
    &ett_rrlp_GANSSUTCModel,
12745
16
    &ett_rrlp_GANSSEphemerisExtension,
12746
16
    &ett_rrlp_GANSSEphemerisExtensionHeader,
12747
16
    &ett_rrlp_GANSSEphemerisExtensionTime,
12748
16
    &ett_rrlp_ReferenceNavModel,
12749
16
    &ett_rrlp_SeqOfGANSSRefOrbit,
12750
16
    &ett_rrlp_GANSSReferenceOrbit,
12751
16
    &ett_rrlp_GANSSEphemerisDeltaMatrix,
12752
16
    &ett_rrlp_GANSSEphemerisDeltaEpoch,
12753
16
    &ett_rrlp_GANSSDeltaEpochHeader,
12754
16
    &ett_rrlp_GANSSDeltaElementList,
12755
16
    &ett_rrlp_GANSSEphemerisDeltaBitSizes,
12756
16
    &ett_rrlp_GANSSEphemerisDeltaScales,
12757
16
    &ett_rrlp_GANSSEphemerisExtensionCheck,
12758
16
    &ett_rrlp_GANSSSatEventsInfo,
12759
16
    &ett_rrlp_GANSSAddUTCModel,
12760
16
    &ett_rrlp_UTCmodelSet2,
12761
16
    &ett_rrlp_UTCmodelSet3,
12762
16
    &ett_rrlp_UTCmodelSet4,
12763
16
    &ett_rrlp_UTCmodelSet5_r12,
12764
16
    &ett_rrlp_GANSSAuxiliaryInformation,
12765
16
    &ett_rrlp_GANSS_ID1,
12766
16
    &ett_rrlp_GANSS_ID1_element,
12767
16
    &ett_rrlp_GANSS_ID3,
12768
16
    &ett_rrlp_GANSS_ID3_element,
12769
16
    &ett_rrlp_GANSSDiffCorrectionsValidityPeriod,
12770
16
    &ett_rrlp_DGANSSExtensionSgnTypeElement,
12771
16
    &ett_rrlp_SeqOfDGANSSExtensionSgnElement,
12772
16
    &ett_rrlp_DGANSSExtensionSgnElement,
12773
16
    &ett_rrlp_Add_GPS_AssistData,
12774
16
    &ett_rrlp_Add_GPS_ControlHeader,
12775
16
    &ett_rrlp_GPSClockModel,
12776
16
    &ett_rrlp_GPSEphemerisExtension,
12777
16
    &ett_rrlp_GPSEphemerisExtensionHeader,
12778
16
    &ett_rrlp_GPSEphemerisExtensionTime,
12779
16
    &ett_rrlp_SeqOfGPSRefOrbit,
12780
16
    &ett_rrlp_GPSReferenceOrbit,
12781
16
    &ett_rrlp_GPSEphemerisDeltaMatrix,
12782
16
    &ett_rrlp_GPSEphemerisDeltaEpoch,
12783
16
    &ett_rrlp_GPSDeltaEpochHeader,
12784
16
    &ett_rrlp_GPSDeltaElementList,
12785
16
    &ett_rrlp_GPSEphemerisDeltaBitSizes,
12786
16
    &ett_rrlp_GPSEphemerisDeltaScales,
12787
16
    &ett_rrlp_GPSEphemerisExtensionCheck,
12788
16
    &ett_rrlp_GPSSatEventsInfo,
12789
16
    &ett_rrlp_DGPSCorrectionsValidityPeriod,
12790
16
    &ett_rrlp_DGPSExtensionSatElement,
12791
16
    &ett_rrlp_GPSReferenceTime_R10_Ext,
12792
16
    &ett_rrlp_GPSAcquisAssist_R10_Ext,
12793
16
    &ett_rrlp_GPSAcquisAssist_R10_Ext_Element,
12794
16
    &ett_rrlp_GPSAcquisAssist_R12_Ext,
12795
16
    &ett_rrlp_SeqOfGPSAcquisAssist_R12_Ext,
12796
16
    &ett_rrlp_GPSAcquisAssist_R12_Ext_Element,
12797
16
    &ett_rrlp_GPSAlmanac_R10_Ext,
12798
16
    &ett_rrlp_Rel_7_MsrPosition_Rsp_Extension,
12799
16
    &ett_rrlp_GANSSLocationInfo,
12800
16
    &ett_rrlp_PositionData,
12801
16
    &ett_rrlp_ReferenceFrame,
12802
16
    &ett_rrlp_GANSSMeasureInfo,
12803
16
    &ett_rrlp_SeqOfGANSS_MsrSetElement,
12804
16
    &ett_rrlp_GANSS_MsrSetElement,
12805
16
    &ett_rrlp_SeqOfGANSS_MsrElement,
12806
16
    &ett_rrlp_GANSS_MsrElement,
12807
16
    &ett_rrlp_SeqOfGANSS_SgnTypeElement,
12808
16
    &ett_rrlp_GANSS_SgnTypeElement,
12809
16
    &ett_rrlp_SeqOfGANSS_SgnElement,
12810
16
    &ett_rrlp_GANSS_SgnElement,
12811
16
    &ett_rrlp_Rel7_AssistanceData_Extension,
12812
16
    &ett_rrlp_BDS_DiffCorrections_r12,
12813
16
    &ett_rrlp_BDS_SgnTypeList_r12,
12814
16
    &ett_rrlp_BDS_SgnTypeElement_r12,
12815
16
    &ett_rrlp_DBDS_CorrectionList_r12,
12816
16
    &ett_rrlp_DBDS_CorrectionElement_r12,
12817
16
    &ett_rrlp_BDS_GridModelParameter_r12,
12818
16
    &ett_rrlp_GridIonList_r12,
12819
16
    &ett_rrlp_GridIonElement_r12,
12820
16
    &ett_rrlp_PosCapabilities,
12821
16
    &ett_rrlp_NonGANSSPositionMethods,
12822
16
    &ett_rrlp_GANSSPositionMethods,
12823
16
    &ett_rrlp_GANSSPositionMethod,
12824
16
    &ett_rrlp_GANSSPositioningMethodTypes,
12825
16
    &ett_rrlp_GANSSSignals,
12826
16
    &ett_rrlp_SBASID,
12827
16
    &ett_rrlp_MultipleMeasurementSets,
12828
16
    &ett_rrlp_AssistanceSupported,
12829
16
    &ett_rrlp_GPSAssistance,
12830
16
    &ett_rrlp_GANSSAssistanceSet,
12831
16
    &ett_rrlp_CommonGANSSAssistance,
12832
16
    &ett_rrlp_SpecificGANSSAssistance,
12833
16
    &ett_rrlp_GANSSAssistanceForOneGANSS,
12834
16
    &ett_rrlp_GANSSAssistance,
12835
16
    &ett_rrlp_GANSSAdditionalAssistanceChoices,
12836
16
    &ett_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS,
12837
16
    &ett_rrlp_GANSSModelID,
12838
16
    &ett_rrlp_AssistanceNeeded,
12839
16
    &ett_rrlp_CellSets,
12840
16
    &ett_rrlp_CellSet,
12841
16
    &ett_rrlp_CellInfo,
12842
16
    &ett_rrlp_OTDMeasurementResults,
12843
16
    &ett_rrlp_OTDMeasurementInfo,
12844
16
    &ett_rrlp_CellType,
12845
16
    &ett_rrlp_RXLEVMeasurementResults,
12846
16
    &ett_rrlp_RXLEVMeasurementInfo,
12847
16
    &ett_rrlp_MTA_Method,
12848
16
    &ett_rrlp_Random_ID_Set,
12849
16
    &ett_rrlp_Extended_Access_Burst,
12850
16
    &ett_rrlp_Co_Sited_Cells,
12851
16
    &ett_rrlp_Co_Sited_Cell_Set_Member,
12852
16
    &ett_rrlp_Cell_Set,
12853
16
    &ett_rrlp_Cell_Set_Member,
12854
16
    &ett_rrlp_T_ec_cell_information,
12855
16
    &ett_rrlp_T_peo_cell_information,
12856
16
    &ett_rrlp_BSIC_Info,
12857
16
    &ett_rrlp_EC_RACH_Control_Parameters,
12858
16
    &ett_rrlp_RACH_Control_Parameters,
12859
16
    &ett_rrlp_MTA_BITMAP,
12860
16
    &ett_rrlp_MTA_Security,
12861
16
  };
12862
12863
12864
  /* Register protocol */
12865
16
  proto_rrlp = proto_register_protocol("Radio Resource LCS Protocol (RRLP)", "RRLP", "rrlp");
12866
16
  register_dissector("rrlp", dissect_PDU_PDU, proto_rrlp);
12867
12868
  /* Register fields and subtrees */
12869
16
  proto_register_field_array(proto_rrlp, hf, array_length(hf));
12870
16
  proto_register_subtree_array(ett, array_length(ett));
12871
12872
12873
16
}
12874
12875
12876
/*--- proto_reg_handoff_rrlp ---------------------------------------*/
12877
void
12878
proto_reg_handoff_rrlp(void)
12879
16
{
12880
12881
16
}
12882
12883