Coverage Report

Created: 2026-05-14 06:28

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
7
#define maxNumOfPrivateExtensions      10
1375
124
#define maxExt_GeographicalInformation 20
1376
0
#define maxGPSAssistanceData           40
1377
0
#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
19
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
19
  offset = dissect_per_object_identifier(tvb, offset, actx, tree, hf_index, NULL);
1391
1392
19
  return offset;
1393
19
}
1394
1395
1396
1397
static unsigned
1398
7
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
7
  increment_dissection_depth_by_n(actx->pinfo, 1);
1401
7
  offset = dissect_per_open_type(tvb, offset, actx, tree, hf_index, NULL);
1402
1403
7
  decrement_dissection_depth_by_n(actx->pinfo, 1);
1404
7
  return offset;
1405
7
}
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
19
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
19
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1417
19
                                   ett_rrlp_PrivateExtension, PrivateExtension_sequence);
1418
1419
19
  return offset;
1420
19
}
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
7
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
7
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
1430
7
                                                  ett_rrlp_PrivateExtensionList, PrivateExtensionList_sequence_of,
1431
7
                                                  1, maxNumOfPrivateExtensions, false);
1432
1433
7
  return offset;
1434
7
}
1435
1436
1437
static const per_sequence_t PCS_Extensions_sequence[] = {
1438
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
1439
};
1440
1441
static unsigned
1442
4
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
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1444
4
                                   ett_rrlp_PCS_Extensions, PCS_Extensions_sequence);
1445
1446
4
  return offset;
1447
4
}
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
32
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
32
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1459
32
                                   ett_rrlp_ExtensionContainer, ExtensionContainer_sequence);
1460
1461
32
  return offset;
1462
32
}
1463
1464
1465
1466
static unsigned
1467
124
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
124
tvbuff_t *parameter_tvb = NULL;
1470
1471
124
    offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
1472
124
                                       1, maxExt_GeographicalInformation, false, &parameter_tvb);
1473
1474
1475
124
  if(parameter_tvb)
1476
123
  dissect_geographical_description(parameter_tvb, actx->pinfo, tree);
1477
1478
124
  return offset;
1479
124
}
1480
1481
1482
1483
static unsigned
1484
12
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
12
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
1486
12
                                       4, 7, false, NULL);
1487
1488
12
  return offset;
1489
12
}
1490
1491
1492
1493
static unsigned
1494
1.18k
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
1.18k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1496
1.18k
                                                            0U, 7U, NULL, false);
1497
1498
1.18k
  return offset;
1499
1.18k
}
1500
1501
1502
1503
static unsigned
1504
18
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
18
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1506
18
                                                            0U, 127U, NULL, false);
1507
1508
18
  return offset;
1509
18
}
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
7
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
7
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1520
7
                                   ett_rrlp_AccuracyOpt, AccuracyOpt_sequence);
1521
1522
7
  return offset;
1523
7
}
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
24
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
24
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1545
24
                                 ett_rrlp_MethodType, MethodType_choice,
1546
24
                                 NULL);
1547
1548
24
  return offset;
1549
24
}
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
23
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
23
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1563
23
                                     3, NULL, false, 0, NULL);
1564
1565
23
  return offset;
1566
23
}
1567
1568
1569
1570
static unsigned
1571
23
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
23
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1573
23
                                                            0U, 7U, NULL, false);
1574
1575
23
  return offset;
1576
23
}
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
23
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
23
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1589
23
                                     2, NULL, false, 0, NULL);
1590
1591
23
  return offset;
1592
23
}
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
13
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
13
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1606
13
                                     3, NULL, true, 0, NULL);
1607
1608
13
  return offset;
1609
13
}
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
24
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
24
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1624
24
                                   ett_rrlp_PositionInstruct, PositionInstruct_sequence);
1625
1626
24
  return offset;
1627
24
}
1628
1629
1630
1631
static unsigned
1632
320
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
320
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1634
320
                                                            0U, 1023U, NULL, false);
1635
1636
320
  return offset;
1637
320
}
1638
1639
1640
1641
static unsigned
1642
634
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
634
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1644
634
                                                            0U, 63U, NULL, false);
1645
1646
634
  return offset;
1647
634
}
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
506
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
506
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1660
506
                                     2, NULL, false, 0, NULL);
1661
1662
506
  return offset;
1663
506
}
1664
1665
1666
1667
static unsigned
1668
9
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
9
  offset = dissect_rrlp_Ext_GeographicalInformation(tvb, offset, actx, tree, hf_index);
1670
1671
9
  return offset;
1672
9
}
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
39
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
39
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1686
39
                                   ett_rrlp_ReferenceAssistData, ReferenceAssistData_sequence);
1687
1688
39
  return offset;
1689
39
}
1690
1691
1692
1693
static unsigned
1694
478
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
478
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1696
478
                                                            0U, 51U, NULL, false);
1697
1698
478
  return offset;
1699
478
}
1700
1701
1702
1703
static unsigned
1704
467
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
467
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1706
467
                                                            0U, 1250U, NULL, false);
1707
1708
467
  return offset;
1709
467
}
1710
1711
1712
1713
static unsigned
1714
247
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
247
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1716
247
                                                            0U, 255U, NULL, false);
1717
1718
247
  return offset;
1719
247
}
1720
1721
1722
1723
static unsigned
1724
491
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
491
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1726
491
                                                            -200000, 200000U, NULL, false);
1727
1728
491
  return offset;
1729
491
}
1730
1731
1732
1733
static unsigned
1734
160
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
160
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1736
160
                                                            -4000, 4000U, NULL, false);
1737
1738
160
  return offset;
1739
160
}
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
246
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
246
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1752
246
                                   ett_rrlp_ReferenceWGS84, ReferenceWGS84_sequence);
1753
1754
246
  return offset;
1755
246
}
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
247
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
247
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1767
247
                                   ett_rrlp_CalcAssistanceBTS, CalcAssistanceBTS_sequence);
1768
1769
247
  return offset;
1770
247
}
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
142
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
142
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1786
142
                                   ett_rrlp_MsrAssistBTS, MsrAssistBTS_sequence);
1787
1788
142
  return offset;
1789
142
}
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
35
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
35
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
1799
35
                                                  ett_rrlp_SeqOfMsrAssistBTS, SeqOfMsrAssistBTS_sequence_of,
1800
35
                                                  1, 15, false);
1801
1802
35
  return offset;
1803
35
}
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
35
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
35
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1814
35
                                   ett_rrlp_MsrAssistData, MsrAssistData_sequence);
1815
1816
35
  return offset;
1817
35
}
1818
1819
1820
1821
static unsigned
1822
988
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
988
  offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
1824
1825
988
  return offset;
1826
988
}
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
325
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
325
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1841
325
                                   ett_rrlp_AssistBTSData, AssistBTSData_sequence);
1842
1843
325
  return offset;
1844
325
}
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.05k
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.05k
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
1862
1.05k
                                 ett_rrlp_SystemInfoAssistBTS, SystemInfoAssistBTS_choice,
1863
1.05k
                                 NULL);
1864
1865
1.05k
  return offset;
1866
1.05k
}
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
74
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
74
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
1876
74
                                                  ett_rrlp_SeqOfSystemInfoAssistBTS, SeqOfSystemInfoAssistBTS_sequence_of,
1877
74
                                                  1, 32, false);
1878
1879
74
  return offset;
1880
74
}
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
74
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
74
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1891
74
                                   ett_rrlp_SystemInfoAssistData, SystemInfoAssistData_sequence);
1892
1893
74
  return offset;
1894
74
}
1895
1896
1897
1898
static unsigned
1899
49
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
49
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1901
49
                                                            0U, 7559999U, NULL, false);
1902
1903
49
  return offset;
1904
49
}
1905
1906
1907
1908
static unsigned
1909
49
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
49
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1911
49
                                                            0U, 1023U, NULL, false);
1912
1913
49
  return offset;
1914
49
}
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
33
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
33
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1926
33
                                   ett_rrlp_GPSTime, GPSTime_sequence);
1927
1928
33
  return offset;
1929
33
}
1930
1931
1932
1933
static unsigned
1934
97
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
97
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1936
97
                                                            0U, 2097151U, NULL, false);
1937
1938
97
  return offset;
1939
97
}
1940
1941
1942
1943
static unsigned
1944
97
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
97
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1946
97
                                                            0U, 7U, NULL, false);
1947
1948
97
  return offset;
1949
97
}
1950
1951
1952
1953
static unsigned
1954
97
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
97
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1956
97
                                                            0U, 156U, NULL, false);
1957
1958
97
  return offset;
1959
97
}
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
21
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
21
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
1974
21
                                   ett_rrlp_GSMTime, GSMTime_sequence);
1975
1976
21
  return offset;
1977
21
}
1978
1979
1980
1981
static unsigned
1982
642
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
642
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1984
642
                                                            0U, 63U, NULL, false);
1985
1986
642
  return offset;
1987
642
}
1988
1989
1990
1991
static unsigned
1992
85
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
85
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1994
85
                                                            0U, 16383U, NULL, false);
1995
1996
85
  return offset;
1997
85
}
1998
1999
2000
2001
static unsigned
2002
84
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
84
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2004
84
                                                            0U, 1U, NULL, false);
2005
2006
84
  return offset;
2007
84
}
2008
2009
2010
2011
static unsigned
2012
84
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
84
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2014
84
                                                            0U, 1U, NULL, false);
2015
2016
84
  return offset;
2017
84
}
2018
2019
2020
2021
static unsigned
2022
84
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
84
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2024
84
                                                            0U, 3U, NULL, false);
2025
2026
84
  return offset;
2027
84
}
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
85
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
85
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2042
85
                                   ett_rrlp_GPSTOWAssistElement, GPSTOWAssistElement_sequence);
2043
2044
85
  return offset;
2045
85
}
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
14
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
14
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2055
14
                                                  ett_rrlp_GPSTOWAssist, GPSTOWAssist_sequence_of,
2056
14
                                                  1, 12, false);
2057
2058
14
  return offset;
2059
14
}
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
33
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
33
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2072
33
                                   ett_rrlp_ReferenceTime, ReferenceTime_sequence);
2073
2074
33
  return offset;
2075
33
}
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
23
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
23
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2086
23
                                   ett_rrlp_RefLocation, RefLocation_sequence);
2087
2088
23
  return offset;
2089
23
}
2090
2091
2092
2093
static unsigned
2094
44
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
44
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2096
44
                                                            0U, 604799U, NULL, false);
2097
2098
44
  return offset;
2099
44
}
2100
2101
2102
2103
static unsigned
2104
81
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
81
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2106
81
                                                            0U, 239U, NULL, false);
2107
2108
81
  return offset;
2109
81
}
2110
2111
2112
2113
static unsigned
2114
595
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
595
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2116
595
                                                            0U, 3U, NULL, false);
2117
2118
595
  return offset;
2119
595
}
2120
2121
2122
2123
static unsigned
2124
333
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
333
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2126
333
                                                            -2047, 2047U, NULL, false);
2127
2128
333
  return offset;
2129
333
}
2130
2131
2132
2133
static unsigned
2134
478
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
478
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2136
478
                                                            -127, 127U, NULL, false);
2137
2138
478
  return offset;
2139
478
}
2140
2141
2142
2143
static unsigned
2144
148
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
148
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2146
148
                                                            -7, 7U, NULL, false);
2147
2148
148
  return offset;
2149
148
}
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
83
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
83
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2168
83
                                   ett_rrlp_SatElement, SatElement_sequence);
2169
2170
83
  return offset;
2171
83
}
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
28
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
28
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2181
28
                                                  ett_rrlp_SeqOfSatElement, SeqOfSatElement_sequence_of,
2182
28
                                                  1, 16, false);
2183
2184
28
  return offset;
2185
28
}
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
28
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
28
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2198
28
                                   ett_rrlp_DGPSCorrections, DGPSCorrections_sequence);
2199
2200
28
  return offset;
2201
28
}
2202
2203
2204
2205
static unsigned
2206
198
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
198
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2208
198
                                                            0U, 15U, NULL, false);
2209
2210
198
  return offset;
2211
198
}
2212
2213
2214
2215
static unsigned
2216
868
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
868
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2218
868
                                                            0U, 63U, NULL, false);
2219
2220
868
  return offset;
2221
868
}
2222
2223
2224
2225
static unsigned
2226
448
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
448
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2228
448
                                                            0U, 1023U, NULL, false);
2229
2230
448
  return offset;
2231
448
}
2232
2233
2234
2235
static unsigned
2236
129
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
129
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2238
129
                                                            0U, 1U, NULL, false);
2239
2240
129
  return offset;
2241
129
}
2242
2243
2244
2245
static unsigned
2246
31
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
31
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2248
31
                                                            0U, 8388607U, NULL, false);
2249
2250
31
  return offset;
2251
31
}
2252
2253
2254
2255
static unsigned
2256
185
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
185
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2258
185
                                                            0U, 16777215U, NULL, false);
2259
2260
185
  return offset;
2261
185
}
2262
2263
2264
2265
static unsigned
2266
394
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
394
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2268
394
                                                            0U, 65535U, NULL, false);
2269
2270
394
  return offset;
2271
394
}
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
31
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
31
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2285
31
                                   ett_rrlp_EphemerisSubframe1Reserved, EphemerisSubframe1Reserved_sequence);
2286
2287
31
  return offset;
2288
31
}
2289
2290
2291
2292
static unsigned
2293
428
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
428
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2295
428
                                                            -128, 127U, NULL, false);
2296
2297
428
  return offset;
2298
428
}
2299
2300
2301
2302
static unsigned
2303
136
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
136
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2305
136
                                                            0U, 37799U, NULL, false);
2306
2307
136
  return offset;
2308
136
}
2309
2310
2311
2312
static unsigned
2313
1.88k
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
1.88k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2315
1.88k
                                                            -32768, 32767U, NULL, false);
2316
2317
1.88k
  return offset;
2318
1.88k
}
2319
2320
2321
2322
static unsigned
2323
86
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
86
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2325
86
                                                            -2097152, 2097151U, NULL, false);
2326
2327
86
  return offset;
2328
86
}
2329
2330
2331
2332
static unsigned
2333
666
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
666
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2335
666
                                                            INT32_MIN, 2147483647U, NULL, false);
2336
2337
666
  return offset;
2338
666
}
2339
2340
2341
2342
static unsigned
2343
303
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
303
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2345
303
                                                            0U, 4294967295U, NULL, false);
2346
2347
303
  return offset;
2348
303
}
2349
2350
2351
2352
static unsigned
2353
260
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
260
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2355
260
                                                            0U, 31U, NULL, false);
2356
2357
260
  return offset;
2358
260
}
2359
2360
2361
2362
static unsigned
2363
573
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
573
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2365
573
                                                            -8388608, 8388607U, NULL, false);
2366
2367
573
  return offset;
2368
573
}
2369
2370
2371
2372
static unsigned
2373
147
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
147
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2375
147
                                                            -8192, 8191U, NULL, false);
2376
2377
147
  return offset;
2378
147
}
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
31
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
31
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2417
31
                                   ett_rrlp_UncompressedEphemeris, UncompressedEphemeris_sequence);
2418
2419
31
  return offset;
2420
31
}
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
46
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
46
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2440
46
                                 ett_rrlp_SatStatus, SatStatus_choice,
2441
46
                                 NULL);
2442
2443
46
  return offset;
2444
46
}
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
47
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
47
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2456
47
                                   ett_rrlp_NavModelElement, NavModelElement_sequence);
2457
2458
47
  return offset;
2459
47
}
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
21
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
21
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2469
21
                                                  ett_rrlp_SeqOfNavModelElement, SeqOfNavModelElement_sequence_of,
2470
21
                                                  1, 16, false);
2471
2472
21
  return offset;
2473
21
}
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
21
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
21
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2484
21
                                   ett_rrlp_NavigationModel, NavigationModel_sequence);
2485
2486
21
  return offset;
2487
21
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2505
11
                                   ett_rrlp_IonosphericModel, IonosphericModel_sequence);
2506
2507
11
  return offset;
2508
11
}
2509
2510
2511
2512
static unsigned
2513
533
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
533
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2515
533
                                                            0U, 255U, NULL, false);
2516
2517
533
  return offset;
2518
533
}
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
17
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
17
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2536
17
                                   ett_rrlp_UTCModel, UTCModel_sequence);
2537
2538
17
  return offset;
2539
17
}
2540
2541
2542
2543
static unsigned
2544
388
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
388
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2546
388
                                                            -1024, 1023U, NULL, false);
2547
2548
388
  return offset;
2549
388
}
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
118
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
118
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2571
118
                                   ett_rrlp_AlmanacElement, AlmanacElement_sequence);
2572
2573
118
  return offset;
2574
118
}
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
20
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
20
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2584
20
                                                  ett_rrlp_SeqOfAlmanacElement, SeqOfAlmanacElement_sequence_of,
2585
20
                                                  1, 64, false);
2586
2587
20
  return offset;
2588
20
}
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
20
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
20
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2600
20
                                   ett_rrlp_Almanac, Almanac_sequence);
2601
2602
20
  return offset;
2603
20
}
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
16
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
16
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2615
16
                                   ett_rrlp_TimeRelation, TimeRelation_sequence);
2616
2617
16
  return offset;
2618
16
}
2619
2620
2621
2622
static unsigned
2623
149
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
149
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2625
149
                                                            -2048, 2047U, NULL, false);
2626
2627
149
  return offset;
2628
149
}
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
64
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
64
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2640
64
                                   ett_rrlp_AddionalDopplerFields, AddionalDopplerFields_sequence);
2641
2642
64
  return offset;
2643
64
}
2644
2645
2646
2647
static unsigned
2648
297
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
297
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2650
297
                                                            0U, 1022U, NULL, false);
2651
2652
297
  return offset;
2653
297
}
2654
2655
2656
2657
static unsigned
2658
115
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
115
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2660
115
                                                            0U, 19U, NULL, false);
2661
2662
115
  return offset;
2663
115
}
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
63
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
63
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2675
63
                                   ett_rrlp_AddionalAngleFields, AddionalAngleFields_sequence);
2676
2677
63
  return offset;
2678
63
}
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
117
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
117
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2696
117
                                   ett_rrlp_AcquisElement, AcquisElement_sequence);
2697
2698
117
  return offset;
2699
117
}
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
16
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
16
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2709
16
                                                  ett_rrlp_SeqOfAcquisElement, SeqOfAcquisElement_sequence_of,
2710
16
                                                  1, 16, false);
2711
2712
16
  return offset;
2713
16
}
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
16
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
16
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2725
16
                                   ett_rrlp_AcquisAssist, AcquisAssist_sequence);
2726
2727
16
  return offset;
2728
16
}
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
8
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
8
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2738
8
                                                  ett_rrlp_SeqOf_BadSatelliteSet, SeqOf_BadSatelliteSet_sequence_of,
2739
8
                                                  1, 16, false);
2740
2741
8
  return offset;
2742
8
}
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
78
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
78
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2761
78
                                   ett_rrlp_ControlHeader, ControlHeader_sequence);
2762
2763
78
  return offset;
2764
78
}
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
78
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
78
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2775
78
                                   ett_rrlp_GPS_AssistData, GPS_AssistData_sequence);
2776
2777
78
  return offset;
2778
78
}
2779
2780
2781
2782
static unsigned
2783
160
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
160
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2785
160
                                                            0U, 1250U, NULL, false);
2786
2787
160
  return offset;
2788
160
}
2789
2790
2791
2792
static unsigned
2793
158
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
158
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2795
158
                                                            0U, 7U, NULL, false);
2796
2797
158
  return offset;
2798
158
}
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
113
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
113
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2810
113
                                   ett_rrlp_MsrAssistBTS_R98_ExpOTD, MsrAssistBTS_R98_ExpOTD_sequence);
2811
2812
113
  return offset;
2813
113
}
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
11
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
11
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2823
11
                                                  ett_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD, SeqOfMsrAssistBTS_R98_ExpOTD_sequence_of,
2824
11
                                                  1, 15, false);
2825
2826
11
  return offset;
2827
11
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2838
11
                                   ett_rrlp_MsrAssistData_R98_ExpOTD, MsrAssistData_R98_ExpOTD_sequence);
2839
2840
11
  return offset;
2841
11
}
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
47
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
47
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2853
47
                                   ett_rrlp_AssistBTSData_R98_ExpOTD, AssistBTSData_R98_ExpOTD_sequence);
2854
2855
47
  return offset;
2856
47
}
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
140
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
140
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
2874
140
                                 ett_rrlp_SystemInfoAssistBTS_R98_ExpOTD, SystemInfoAssistBTS_R98_ExpOTD_choice,
2875
140
                                 NULL);
2876
2877
140
  return offset;
2878
140
}
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
8
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
8
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
2888
8
                                                  ett_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD, SeqOfSystemInfoAssistBTS_R98_ExpOTD_sequence_of,
2889
8
                                                  1, 32, false);
2890
2891
8
  return offset;
2892
8
}
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
8
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
8
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2903
8
                                   ett_rrlp_SystemInfoAssistData_R98_ExpOTD, SystemInfoAssistData_R98_ExpOTD_sequence);
2904
2905
8
  return offset;
2906
8
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2918
11
                                   ett_rrlp_Rel98_Ext_ExpOTD, Rel98_Ext_ExpOTD_sequence);
2919
2920
11
  return offset;
2921
11
}
2922
2923
2924
2925
static unsigned
2926
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2928
0
                                                            0U, 127U, NULL, false);
2929
2930
0
  return offset;
2931
0
}
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
5
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
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2944
5
                                   ett_rrlp_Rel98_MsrPosition_Req_Extension, Rel98_MsrPosition_Req_Extension_sequence);
2945
2946
5
  return offset;
2947
5
}
2948
2949
2950
2951
static unsigned
2952
11
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
11
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
2954
11
                                                            0U, 262143U, NULL, false);
2955
2956
11
  return offset;
2957
11
}
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
12
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
12
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2969
12
                                   ett_rrlp_Extended_reference, Extended_reference_sequence);
2970
2971
12
  return offset;
2972
12
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
2983
1
                                   ett_rrlp_Rel5_MsrPosition_Req_Extension, Rel5_MsrPosition_Req_Extension_sequence);
2984
2985
1
  return offset;
2986
1
}
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
144
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
144
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3013
144
                                                            0U, 8191U, NULL, false);
3014
3015
144
  return offset;
3016
144
}
3017
3018
3019
3020
static unsigned
3021
132
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
132
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3023
132
                                                            0U, 86399U, NULL, false);
3024
3025
132
  return offset;
3026
132
}
3027
3028
3029
3030
static unsigned
3031
22
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
22
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3033
22
                                                            0U, 127U, NULL, false);
3034
3035
22
  return offset;
3036
22
}
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
76
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
76
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3050
76
                                   ett_rrlp_GANSSRefTimeInfo, GANSSRefTimeInfo_sequence);
3051
3052
76
  return offset;
3053
76
}
3054
3055
3056
3057
static unsigned
3058
17
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
17
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3060
17
                                                            -64, 63U, NULL, false);
3061
3062
17
  return offset;
3063
17
}
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
76
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
76
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3079
76
                                   ett_rrlp_GANSSTOD_GSMTimeAssociation, GANSSTOD_GSMTimeAssociation_sequence);
3080
3081
76
  return offset;
3082
76
}
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
76
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
76
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3094
76
                                   ett_rrlp_GANSSReferenceTime, GANSSReferenceTime_sequence);
3095
3096
76
  return offset;
3097
76
}
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
69
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
69
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3108
69
                                   ett_rrlp_GANSSRefLocation, GANSSRefLocation_sequence);
3109
3110
69
  return offset;
3111
69
}
3112
3113
3114
3115
static unsigned
3116
76
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
76
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3118
76
                                                            0U, 2047U, NULL, false);
3119
3120
76
  return offset;
3121
76
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3134
1
                                   ett_rrlp_GANSSIonosphereModel, GANSSIonosphereModel_sequence);
3135
3136
1
  return offset;
3137
1
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3152
1
                                   ett_rrlp_GANSSIonoStormFlags, GANSSIonoStormFlags_sequence);
3153
3154
1
  return offset;
3155
1
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3167
1
                                   ett_rrlp_GANSSIonosphericModel, GANSSIonosphericModel_sequence);
3168
3169
1
  return offset;
3170
1
}
3171
3172
3173
3174
static unsigned
3175
13
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
13
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
3177
13
                                     2, 2, false, NULL, 0, NULL, NULL);
3178
3179
13
  return offset;
3180
13
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3192
0
                                   ett_rrlp_GANSSAddIonosphericModel, GANSSAddIonosphericModel_sequence);
3193
3194
0
  return offset;
3195
0
}
3196
3197
3198
3199
static unsigned
3200
70
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
70
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3202
70
                                                            -1048576, 1048575U, NULL, false);
3203
3204
70
  return offset;
3205
70
}
3206
3207
3208
3209
static unsigned
3210
4
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
4
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3212
4
                                                            -16384, 16383U, NULL, false);
3213
3214
4
  return offset;
3215
4
}
3216
3217
3218
3219
static unsigned
3220
68
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
68
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3222
68
                                                            -1073741824, 1073741823U, NULL, false);
3223
3224
68
  return offset;
3225
68
}
3226
3227
3228
3229
static unsigned
3230
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3232
0
                                                            -262144, 262143U, NULL, false);
3233
3234
0
  return offset;
3235
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3252
0
                                   ett_rrlp_GANSSEarthOrientParam, GANSSEarthOrientParam_sequence);
3253
3254
0
  return offset;
3255
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3266
0
                                   ett_rrlp_GANSSReferenceTime_R10_Ext, GANSSReferenceTime_R10_Ext_sequence);
3267
3268
0
  return offset;
3269
0
}
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
77
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
77
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3285
77
                                   ett_rrlp_GANSSCommonAssistData, GANSSCommonAssistData_sequence);
3286
3287
77
  return offset;
3288
77
}
3289
3290
3291
3292
static unsigned
3293
151
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
151
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3295
151
                                                            INT32_MIN, 2147483647U, NULL, false);
3296
3297
151
  return offset;
3298
151
}
3299
3300
3301
3302
static unsigned
3303
73
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
73
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3305
73
                                                            -8388608, 8388607U, NULL, false);
3306
3307
73
  return offset;
3308
73
}
3309
3310
3311
3312
static unsigned
3313
60
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
60
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3315
60
                                                            -64, 63U, NULL, false);
3316
3317
60
  return offset;
3318
60
}
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
153
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
153
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3334
153
                                   ett_rrlp_GANSSTimeModelElement, GANSSTimeModelElement_sequence);
3335
3336
153
  return offset;
3337
153
}
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
43
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
43
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3347
43
                                                  ett_rrlp_SeqOfGANSSTimeModel, SeqOfGANSSTimeModel_sequence_of,
3348
43
                                                  1, 7, false);
3349
3350
43
  return offset;
3351
43
}
3352
3353
3354
3355
static unsigned
3356
50
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
50
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3358
50
                                                            0U, 119U, NULL, false);
3359
3360
50
  return offset;
3361
50
}
3362
3363
3364
3365
static unsigned
3366
349
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
349
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3368
349
                                                            0U, 7U, NULL, false);
3369
3370
349
  return offset;
3371
349
}
3372
3373
3374
3375
static unsigned
3376
1.09k
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
1.09k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3378
1.09k
                                                            0U, 63U, NULL, false);
3379
3380
1.09k
  return offset;
3381
1.09k
}
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
256
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
256
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3396
256
                                   ett_rrlp_DGANSSSgnElement, DGANSSSgnElement_sequence);
3397
3398
256
  return offset;
3399
256
}
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
75
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
75
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3409
75
                                                  ett_rrlp_SeqOfDGANSSSgnElement, SeqOfDGANSSSgnElement_sequence_of,
3410
75
                                                  1, 16, false);
3411
3412
75
  return offset;
3413
75
}
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
75
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
75
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3426
75
                                   ett_rrlp_SgnTypeElement, SgnTypeElement_sequence);
3427
3428
75
  return offset;
3429
75
}
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
50
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
50
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3439
50
                                                  ett_rrlp_SeqOfSgnTypeElement, SeqOfSgnTypeElement_sequence_of,
3440
50
                                                  1, 3, false);
3441
3442
50
  return offset;
3443
50
}
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
50
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
50
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3455
50
                                   ett_rrlp_GANSSDiffCorrections, GANSSDiffCorrections_sequence);
3456
3457
50
  return offset;
3458
50
}
3459
3460
3461
3462
static unsigned
3463
68
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
68
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
3465
68
                                     5, 5, false, NULL, 0, NULL, NULL);
3466
3467
68
  return offset;
3468
68
}
3469
3470
3471
3472
static unsigned
3473
121
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
121
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3475
121
                                                            0U, 16383U, NULL, false);
3476
3477
121
  return offset;
3478
121
}
3479
3480
3481
3482
static unsigned
3483
69
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
69
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3485
69
                                                            -32, 31U, NULL, false);
3486
3487
69
  return offset;
3488
69
}
3489
3490
3491
3492
static unsigned
3493
23
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
23
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3495
23
                                                            -512, 511U, NULL, false);
3496
3497
23
  return offset;
3498
23
}
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
69
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
69
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3514
69
                                   ett_rrlp_StandardClockModelElement, StandardClockModelElement_sequence);
3515
3516
69
  return offset;
3517
69
}
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
65
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
65
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
3527
65
                                                  ett_rrlp_SeqOfStandardClockModelElement, SeqOfStandardClockModelElement_sequence_of,
3528
65
                                                  1, 2, false);
3529
3530
65
  return offset;
3531
65
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3546
1
                                   ett_rrlp_NAVclockModel, NAVclockModel_sequence);
3547
3548
1
  return offset;
3549
1
}
3550
3551
3552
3553
static unsigned
3554
3
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
3
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3556
3
                                                            0U, 2015U, NULL, false);
3557
3558
3
  return offset;
3559
3
}
3560
3561
3562
3563
static unsigned
3564
85
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
85
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3566
85
                                                            -16, 15U, NULL, false);
3567
3568
85
  return offset;
3569
85
}
3570
3571
3572
3573
static unsigned
3574
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3576
0
                                                            -524288, 524287U, NULL, false);
3577
3578
0
  return offset;
3579
0
}
3580
3581
3582
3583
static unsigned
3584
3
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
3
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3586
3
                                                            -33554432, 33554431U, NULL, false);
3587
3588
3
  return offset;
3589
3
}
3590
3591
3592
3593
static unsigned
3594
147
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
147
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3596
147
                                                            -4096, 4095U, NULL, false);
3597
3598
147
  return offset;
3599
147
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3624
0
                                   ett_rrlp_CNAVclockModel, CNAVclockModel_sequence);
3625
3626
0
  return offset;
3627
0
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3640
1
                                   ett_rrlp_GLONASSclockModel, GLONASSclockModel_sequence);
3641
3642
1
  return offset;
3643
1
}
3644
3645
3646
3647
static unsigned
3648
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3650
0
                                                            0U, 5399U, NULL, false);
3651
3652
0
  return offset;
3653
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3666
0
                                   ett_rrlp_SBASclockModel, SBASclockModel_sequence);
3667
3668
0
  return offset;
3669
0
}
3670
3671
3672
3673
static unsigned
3674
4
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
4
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3676
4
                                                            0U, 131071U, NULL, false);
3677
3678
4
  return offset;
3679
4
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3695
2
                                   ett_rrlp_BDSClockModel_r12, BDSClockModel_r12_sequence);
3696
3697
2
  return offset;
3698
2
}
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
82
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
82
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
3724
82
                                 ett_rrlp_GANSSClockModel, GANSSClockModel_choice,
3725
82
                                 NULL);
3726
3727
82
  return offset;
3728
82
}
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
52
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
52
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3754
52
                                   ett_rrlp_NavModel_KeplerianSet, NavModel_KeplerianSet_sequence);
3755
3756
52
  return offset;
3757
52
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3785
2
                                   ett_rrlp_NavModel_NAVKeplerianSet, NavModel_NAVKeplerianSet_sequence);
3786
3787
2
  return offset;
3788
2
}
3789
3790
3791
3792
static unsigned
3793
4
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
4
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3795
4
                                                            -16777216, 16777215U, NULL, false);
3796
3797
4
  return offset;
3798
4
}
3799
3800
3801
3802
static unsigned
3803
7
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
7
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3805
7
                                                            -65536, 65535U, NULL, false);
3806
3807
7
  return offset;
3808
7
}
3809
3810
3811
3812
static unsigned
3813
3
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
3
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3815
3
                                                            -4194304, 4194303U, NULL, false);
3816
3817
3
  return offset;
3818
3
}
3819
3820
3821
3822
static unsigned
3823
11
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
11
  offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index,
3825
11
                                                            INT64_C(-4294967296), 4294967295U, NULL, false);
3826
3827
11
  return offset;
3828
11
}
3829
3830
3831
3832
static unsigned
3833
3
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
3
  offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index,
3835
3
                                                            0U, UINT64_C(8589934591), NULL, false);
3836
3837
3
  return offset;
3838
3
}
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
3
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
3
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3867
3
                                   ett_rrlp_NavModel_CNAVKeplerianSet, NavModel_CNAVKeplerianSet_sequence);
3868
3869
3
  return offset;
3870
3
}
3871
3872
3873
3874
static unsigned
3875
89
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
89
  offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
3877
3878
89
  return offset;
3879
89
}
3880
3881
3882
3883
static unsigned
3884
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3886
0
                                                            -67108864, 67108863U, NULL, false);
3887
3888
0
  return offset;
3889
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3912
0
                                   ett_rrlp_NavModel_GLONASSecef, NavModel_GLONASSecef_sequence);
3913
3914
0
  return offset;
3915
0
}
3916
3917
3918
3919
static unsigned
3920
74
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
74
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
3922
74
                                     4, 4, false, NULL, 0, NULL, NULL);
3923
3924
74
  return offset;
3925
74
}
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
1
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
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
3942
1
                                                            -131072, 131071U, NULL, false);
3943
3944
1
  return offset;
3945
1
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
3997
0
                                   ett_rrlp_NavModel_BDSKeplerianSet_r12, NavModel_BDSKeplerianSet_r12_sequence);
3998
3999
0
  return offset;
4000
0
}
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
60
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
60
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4026
60
                                 ett_rrlp_GANSSOrbitModel, GANSSOrbitModel_choice,
4027
60
                                 NULL);
4028
4029
60
  return offset;
4030
60
}
4031
4032
4033
4034
static unsigned
4035
1
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
1
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4037
1
                                     1, 1, false, NULL, 0, NULL, NULL);
4038
4039
1
  return offset;
4040
1
}
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
68
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
68
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4058
68
                                   ett_rrlp_GANSSSatelliteElement, GANSSSatelliteElement_sequence);
4059
4060
68
  return offset;
4061
68
}
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
40
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
40
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4071
40
                                                  ett_rrlp_SeqOfGANSSSatelliteElement, SeqOfGANSSSatelliteElement_sequence_of,
4072
40
                                                  1, 32, false);
4073
4074
40
  return offset;
4075
40
}
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
40
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
40
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4087
40
                                   ett_rrlp_GANSSNavModel, GANSSNavModel_sequence);
4088
4089
40
  return offset;
4090
40
}
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
132
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
132
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4108
132
                                     1, 8, false, GANSSSignals_bits, 8, NULL, NULL);
4109
4110
132
  return offset;
4111
132
}
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
176
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
176
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4123
176
                                   ett_rrlp_BadSignalElement, BadSignalElement_sequence);
4124
4125
176
  return offset;
4126
176
}
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
34
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
34
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4136
34
                                                  ett_rrlp_SeqOfBadSignalElement, SeqOfBadSignalElement_sequence_of,
4137
34
                                                  1, 16, false);
4138
4139
34
  return offset;
4140
34
}
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
35
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
35
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4151
35
                                   ett_rrlp_GANSSRealTimeIntegrity, GANSSRealTimeIntegrity_sequence);
4152
4153
35
  return offset;
4154
35
}
4155
4156
4157
4158
static unsigned
4159
38
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
38
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4161
38
                                                            0U, 59U, NULL, false);
4162
4163
38
  return offset;
4164
38
}
4165
4166
4167
4168
static unsigned
4169
18.9k
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
18.9k
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4171
18.9k
                                                            0U, 1U, NULL, false);
4172
4173
18.9k
  return offset;
4174
18.9k
}
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
196
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
196
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4184
196
                                                  ett_rrlp_SeqOf_GANSSDataBits, SeqOf_GANSSDataBits_sequence_of,
4185
196
                                                  1, 1024, false);
4186
4187
196
  return offset;
4188
196
}
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
196
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
196
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4200
196
                                   ett_rrlp_GANSSDataBitsSgnElement, GANSSDataBitsSgnElement_sequence);
4201
4202
196
  return offset;
4203
196
}
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
110
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
110
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4213
110
                                                  ett_rrlp_Seq_OfGANSSDataBitsSgn, Seq_OfGANSSDataBitsSgn_sequence_of,
4214
110
                                                  1, 8, false);
4215
4216
110
  return offset;
4217
110
}
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
110
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
110
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4229
110
                                   ett_rrlp_GanssDataBitsElement, GanssDataBitsElement_sequence);
4230
4231
110
  return offset;
4232
110
}
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
38
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
38
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4242
38
                                                  ett_rrlp_SeqOfGanssDataBitsElement, SeqOfGanssDataBitsElement_sequence_of,
4243
38
                                                  1, 32, false);
4244
4245
38
  return offset;
4246
38
}
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
38
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
38
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4258
38
                                   ett_rrlp_GANSSDataBitAssist, GANSSDataBitAssist_sequence);
4259
4260
38
  return offset;
4261
38
}
4262
4263
4264
4265
static unsigned
4266
5
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
5
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4268
5
                                                            0U, 4U, NULL, false);
4269
4270
5
  return offset;
4271
5
}
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
5
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
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4283
5
                                   ett_rrlp_AdditionalDopplerFields, AdditionalDopplerFields_sequence);
4284
4285
5
  return offset;
4286
5
}
4287
4288
4289
4290
static unsigned
4291
127
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
127
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4293
127
                                                            0U, 127U, NULL, false);
4294
4295
127
  return offset;
4296
127
}
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
33
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
33
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4314
33
                                   ett_rrlp_GANSSRefMeasurementElement, GANSSRefMeasurementElement_sequence);
4315
4316
33
  return offset;
4317
33
}
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
25
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
25
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4327
25
                                                  ett_rrlp_SeqOfGANSSRefMeasurementElement, SeqOfGANSSRefMeasurementElement_sequence_of,
4328
25
                                                  1, 16, false);
4329
4330
25
  return offset;
4331
25
}
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
25
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
25
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4343
25
                                   ett_rrlp_GANSSRefMeasurementAssist, GANSSRefMeasurementAssist_sequence);
4344
4345
25
  return offset;
4346
25
}
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
72
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
72
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4368
72
                                   ett_rrlp_Almanac_KeplerianSet, Almanac_KeplerianSet_sequence);
4369
4370
72
  return offset;
4371
72
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4392
11
                                   ett_rrlp_Almanac_NAVKeplerianSet, Almanac_NAVKeplerianSet_sequence);
4393
4394
11
  return offset;
4395
11
}
4396
4397
4398
4399
static unsigned
4400
1
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
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4402
1
                                                            -64, 63U, NULL, false);
4403
4404
1
  return offset;
4405
1
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4422
0
                                   ett_rrlp_Almanac_ReducedKeplerianSet, Almanac_ReducedKeplerianSet_sequence);
4423
4424
0
  return offset;
4425
0
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4448
2
                                   ett_rrlp_Almanac_MidiAlmanacSet, Almanac_MidiAlmanacSet_sequence);
4449
4450
2
  return offset;
4451
2
}
4452
4453
4454
4455
static unsigned
4456
4
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
4
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4458
4
                                                            1U, 1461U, NULL, false);
4459
4460
4
  return offset;
4461
4
}
4462
4463
4464
4465
static unsigned
4466
11
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
11
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4468
11
                                                            1U, 24U, NULL, false);
4469
4470
11
  return offset;
4471
11
}
4472
4473
4474
4475
static unsigned
4476
207
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
207
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4478
207
                                                            0U, 2097151U, NULL, false);
4479
4480
207
  return offset;
4481
207
}
4482
4483
4484
4485
static unsigned
4486
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4488
0
                                                            0U, 32767U, NULL, false);
4489
4490
0
  return offset;
4491
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4514
0
                                   ett_rrlp_Almanac_GlonassAlmanacSet, Almanac_GlonassAlmanacSet_sequence);
4515
4516
0
  return offset;
4517
0
}
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
0
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
0
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4587
0
                                     9, 9, false, NULL, 0, NULL, NULL);
4588
4589
0
  return offset;
4590
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4612
0
                                   ett_rrlp_Almanac_BDSAlmanacSet_r12, Almanac_BDSAlmanacSet_r12_sequence);
4613
4614
0
  return offset;
4615
0
}
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
96
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
96
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4643
96
                                 ett_rrlp_GANSSAlmanacElement, GANSSAlmanacElement_choice,
4644
96
                                 NULL);
4645
4646
96
  return offset;
4647
96
}
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
19
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
19
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4657
19
                                                  ett_rrlp_SeqOfGANSSAlmanacElement, SeqOfGANSSAlmanacElement_sequence_of,
4658
19
                                                  1, 36, false);
4659
4660
19
  return offset;
4661
19
}
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
19
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
19
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4675
19
                                   ett_rrlp_GANSSAlmanacModel, GANSSAlmanacModel_sequence);
4676
4677
19
  return offset;
4678
19
}
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
41
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
41
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4696
41
                                   ett_rrlp_GANSSUTCModel, GANSSUTCModel_sequence);
4697
4698
41
  return offset;
4699
41
}
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
56
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
56
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4711
56
                                   ett_rrlp_GANSSEphemerisExtensionTime, GANSSEphemerisExtensionTime_sequence);
4712
4713
56
  return offset;
4714
56
}
4715
4716
4717
4718
static unsigned
4719
28
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
28
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4721
28
                                                            1U, 8U, NULL, false);
4722
4723
28
  return offset;
4724
28
}
4725
4726
4727
4728
static unsigned
4729
15
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
15
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4731
15
                                                            1U, 512U, NULL, false);
4732
4733
15
  return offset;
4734
15
}
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
3
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
3
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4747
3
                                   ett_rrlp_GANSSEphemerisExtensionHeader, GANSSEphemerisExtensionHeader_sequence);
4748
4749
3
  return offset;
4750
3
}
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
77
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
77
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4776
77
                                   ett_rrlp_ReferenceNavModel, ReferenceNavModel_sequence);
4777
4778
77
  return offset;
4779
77
}
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
18
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
18
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4792
18
                                   ett_rrlp_GANSSReferenceOrbit, GANSSReferenceOrbit_sequence);
4793
4794
18
  return offset;
4795
18
}
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
7
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
7
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4805
7
                                                  ett_rrlp_SeqOfGANSSRefOrbit, SeqOfGANSSRefOrbit_sequence_of,
4806
7
                                                  1, 32, false);
4807
4808
7
  return offset;
4809
7
}
4810
4811
4812
4813
static unsigned
4814
66
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
66
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4816
66
                                                            1U, 32U, NULL, false);
4817
4818
66
  return offset;
4819
66
}
4820
4821
4822
4823
static unsigned
4824
67
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
67
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4826
67
                                                            1U, 16U, NULL, false);
4827
4828
67
  return offset;
4829
67
}
4830
4831
4832
4833
static unsigned
4834
11
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
11
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4836
11
                                                            1U, 14U, NULL, false);
4837
4838
11
  return offset;
4839
11
}
4840
4841
4842
4843
static unsigned
4844
9
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
9
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4846
9
                                                            1U, 10U, NULL, false);
4847
4848
9
  return offset;
4849
9
}
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
5
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
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4876
5
                                   ett_rrlp_GANSSEphemerisDeltaBitSizes, GANSSEphemerisDeltaBitSizes_sequence);
4877
4878
5
  return offset;
4879
5
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4906
2
                                   ett_rrlp_GANSSEphemerisDeltaScales, GANSSEphemerisDeltaScales_sequence);
4907
4908
2
  return offset;
4909
2
}
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
14
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
14
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4922
14
                                   ett_rrlp_GANSSDeltaEpochHeader, GANSSDeltaEpochHeader_sequence);
4923
4924
14
  return offset;
4925
14
}
4926
4927
4928
4929
static unsigned
4930
158
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
158
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
4932
158
                                       1, 49, false, NULL);
4933
4934
158
  return offset;
4935
158
}
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
115
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
115
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4945
115
                                                  ett_rrlp_GANSSDeltaElementList, GANSSDeltaElementList_sequence_of,
4946
115
                                                  1, 32, false);
4947
4948
115
  return offset;
4949
115
}
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
120
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
120
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4961
120
                                   ett_rrlp_GANSSEphemerisDeltaEpoch, GANSSEphemerisDeltaEpoch_sequence);
4962
4963
120
  return offset;
4964
120
}
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
9
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
9
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4974
9
                                                  ett_rrlp_GANSSEphemerisDeltaMatrix, GANSSEphemerisDeltaMatrix_sequence_of,
4975
9
                                                  1, 128, false);
4976
4977
9
  return offset;
4978
9
}
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
30
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
30
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4991
30
                                   ett_rrlp_GANSSEphemerisExtension, GANSSEphemerisExtension_sequence);
4992
4993
30
  return offset;
4994
30
}
4995
4996
4997
4998
static unsigned
4999
51
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
51
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
5001
51
                                     64, 64, false, NULL, 0, NULL, NULL);
5002
5003
51
  return offset;
5004
51
}
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
26
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
26
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5016
26
                                   ett_rrlp_GANSSSatEventsInfo, GANSSSatEventsInfo_sequence);
5017
5018
26
  return offset;
5019
26
}
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
27
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
27
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5032
27
                                   ett_rrlp_GANSSEphemerisExtensionCheck, GANSSEphemerisExtensionCheck_sequence);
5033
5034
27
  return offset;
5035
27
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5054
1
                                   ett_rrlp_UTCmodelSet2, UTCmodelSet2_sequence);
5055
5056
1
  return offset;
5057
1
}
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
4
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
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5072
4
                                   ett_rrlp_UTCmodelSet3, UTCmodelSet3_sequence);
5073
5074
4
  return offset;
5075
4
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5094
1
                                   ett_rrlp_UTCmodelSet4, UTCmodelSet4_sequence);
5095
5096
1
  return offset;
5097
1
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5113
0
                                   ett_rrlp_UTCmodelSet5_r12, UTCmodelSet5_r12_sequence);
5114
5115
0
  return offset;
5116
0
}
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
6
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
6
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5138
6
                                 ett_rrlp_GANSSAddUTCModel, GANSSAddUTCModel_choice,
5139
6
                                 NULL);
5140
5141
6
  return offset;
5142
6
}
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
75
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
75
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5154
75
                                   ett_rrlp_GANSS_ID1_element, GANSS_ID1_element_sequence);
5155
5156
75
  return offset;
5157
75
}
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
5
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
5
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5167
5
                                                  ett_rrlp_GANSS_ID1, GANSS_ID1_sequence_of,
5168
5
                                                  1, 64, false);
5169
5170
5
  return offset;
5171
5
}
5172
5173
5174
5175
static unsigned
5176
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5178
0
                                                            -7, 13U, NULL, false);
5179
5180
0
  return offset;
5181
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5194
0
                                   ett_rrlp_GANSS_ID3_element, GANSS_ID3_element_sequence);
5195
5196
0
  return offset;
5197
0
}
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
0
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
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5207
0
                                                  ett_rrlp_GANSS_ID3, GANSS_ID3_sequence_of,
5208
0
                                                  1, 64, false);
5209
5210
0
  return offset;
5211
0
}
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
6
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
6
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5229
6
                                 ett_rrlp_GANSSAuxiliaryInformation, GANSSAuxiliaryInformation_choice,
5230
6
                                 NULL);
5231
5232
6
  return offset;
5233
6
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5246
0
                                   ett_rrlp_DGANSSExtensionSgnElement, DGANSSExtensionSgnElement_sequence);
5247
5248
0
  return offset;
5249
0
}
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
0
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
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5259
0
                                                  ett_rrlp_SeqOfDGANSSExtensionSgnElement, SeqOfDGANSSExtensionSgnElement_sequence_of,
5260
0
                                                  1, 16, false);
5261
5262
0
  return offset;
5263
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5275
0
                                   ett_rrlp_DGANSSExtensionSgnTypeElement, DGANSSExtensionSgnTypeElement_sequence);
5276
5277
0
  return offset;
5278
0
}
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
0
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
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5288
0
                                                  ett_rrlp_GANSSDiffCorrectionsValidityPeriod, GANSSDiffCorrectionsValidityPeriod_sequence_of,
5289
0
                                                  1, 3, false);
5290
5291
0
  return offset;
5292
0
}
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
4
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
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5304
4
                                   ett_rrlp_GANSSTimeModelElement_R10_Ext, GANSSTimeModelElement_R10_Ext_sequence);
5305
5306
4
  return offset;
5307
4
}
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
2
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
2
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5317
2
                                                  ett_rrlp_SeqOfGANSSTimeModel_R10_Ext, SeqOfGANSSTimeModel_R10_Ext_sequence_of,
5318
2
                                                  1, 7, false);
5319
5320
2
  return offset;
5321
2
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5334
0
                                   ett_rrlp_GANSSRefMeasurement_R10_Ext_Element, GANSSRefMeasurement_R10_Ext_Element_sequence);
5335
5336
0
  return offset;
5337
0
}
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
0
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
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5347
0
                                                  ett_rrlp_GANSSRefMeasurementAssist_R10_Ext, GANSSRefMeasurementAssist_R10_Ext_sequence_of,
5348
0
                                                  1, 16, false);
5349
5350
0
  return offset;
5351
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5362
0
                                   ett_rrlp_GANSSAlmanacModel_R10_Ext, GANSSAlmanacModel_R10_Ext_sequence);
5363
5364
0
  return offset;
5365
0
}
5366
5367
5368
5369
static unsigned
5370
2
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
2
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5372
2
                                                            256U, 1023U, NULL, false);
5373
5374
2
  return offset;
5375
2
}
5376
5377
5378
5379
static unsigned
5380
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5382
0
                                                            4U, 15U, NULL, false);
5383
5384
0
  return offset;
5385
0
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5397
2
                                   ett_rrlp_GANSSAlmanacModel_R12_Ext, GANSSAlmanacModel_R12_Ext_sequence);
5398
5399
2
  return offset;
5400
2
}
5401
5402
5403
5404
static unsigned
5405
1
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
1
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5407
1
                                                            0U, 100U, NULL, false);
5408
5409
1
  return offset;
5410
1
}
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
0
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
0
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
5426
0
                                     5, NULL, true, 0, NULL);
5427
5428
0
  return offset;
5429
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5441
0
                                   ett_rrlp_GANSSRefMeasurement_R12_Ext_Element, GANSSRefMeasurement_R12_Ext_Element_sequence);
5442
5443
0
  return offset;
5444
0
}
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
0
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
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5454
0
                                                  ett_rrlp_SeqOfGANSSRefMeasurementElement_R12, SeqOfGANSSRefMeasurementElement_R12_sequence_of,
5455
0
                                                  1, 16, false);
5456
5457
0
  return offset;
5458
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5471
0
                                   ett_rrlp_GANSSRefMeasurementAssist_R12_Ext, GANSSRefMeasurementAssist_R12_Ext_sequence);
5472
5473
0
  return offset;
5474
0
}
5475
5476
5477
5478
static unsigned
5479
2
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
2
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5481
2
                                                            0U, 3599U, NULL, false);
5482
5483
2
  return offset;
5484
2
}
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
5
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
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5498
5
                                   ett_rrlp_DBDS_CorrectionElement_r12, DBDS_CorrectionElement_r12_sequence);
5499
5500
5
  return offset;
5501
5
}
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
2
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
2
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5511
2
                                                  ett_rrlp_DBDS_CorrectionList_r12, DBDS_CorrectionList_r12_sequence_of,
5512
2
                                                  1, 64, false);
5513
5514
2
  return offset;
5515
2
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5527
2
                                   ett_rrlp_BDS_SgnTypeElement_r12, BDS_SgnTypeElement_r12_sequence);
5528
5529
2
  return offset;
5530
2
}
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
2
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
2
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5540
2
                                                  ett_rrlp_BDS_SgnTypeList_r12, BDS_SgnTypeList_r12_sequence_of,
5541
2
                                                  1, 3, false);
5542
5543
2
  return offset;
5544
2
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5556
2
                                   ett_rrlp_BDS_DiffCorrections_r12, BDS_DiffCorrections_r12_sequence);
5557
5558
2
  return offset;
5559
2
}
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
9
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
9
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5576
9
                                                            0U, 511U, NULL, false);
5577
5578
9
  return offset;
5579
9
}
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
168
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
168
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5656
168
                                   ett_rrlp_GANSSGenericAssistDataElement, GANSSGenericAssistDataElement_sequence);
5657
5658
168
  return offset;
5659
168
}
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
91
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
91
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5669
91
                                                  ett_rrlp_SeqOfGANSSGenericAssistDataElement, SeqOfGANSSGenericAssistDataElement_sequence_of,
5670
91
                                                  1, 8, false);
5671
5672
91
  return offset;
5673
91
}
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
99
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
99
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5685
99
                                   ett_rrlp_GANSS_ControlHeader, GANSS_ControlHeader_sequence);
5686
5687
99
  return offset;
5688
99
}
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
99
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
99
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5699
99
                                   ett_rrlp_GANSS_AssistData, GANSS_AssistData_sequence);
5700
5701
99
  return offset;
5702
99
}
5703
5704
5705
5706
static unsigned
5707
2
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
2
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5709
2
                                                            1U, 128U, NULL, false);
5710
5711
2
  return offset;
5712
2
}
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
16
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
16
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5724
16
                                   ett_rrlp_GPSEphemerisExtensionTime, GPSEphemerisExtensionTime_sequence);
5725
5726
16
  return offset;
5727
16
}
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
12
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
12
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5740
12
                                   ett_rrlp_GPSEphemerisExtensionHeader, GPSEphemerisExtensionHeader_sequence);
5741
5742
12
  return offset;
5743
12
}
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
53
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
53
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5757
53
                                   ett_rrlp_GPSClockModel, GPSClockModel_sequence);
5758
5759
53
  return offset;
5760
53
}
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
59
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
59
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5773
59
                                   ett_rrlp_GPSReferenceOrbit, GPSReferenceOrbit_sequence);
5774
5775
59
  return offset;
5776
59
}
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
15
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
15
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5786
15
                                                  ett_rrlp_SeqOfGPSRefOrbit, SeqOfGPSRefOrbit_sequence_of,
5787
15
                                                  1, 32, false);
5788
5789
15
  return offset;
5790
15
}
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
6
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
6
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5816
6
                                   ett_rrlp_GPSEphemerisDeltaBitSizes, GPSEphemerisDeltaBitSizes_sequence);
5817
5818
6
  return offset;
5819
6
}
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
4
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
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5845
4
                                   ett_rrlp_GPSEphemerisDeltaScales, GPSEphemerisDeltaScales_sequence);
5846
5847
4
  return offset;
5848
4
}
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
14
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
14
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5861
14
                                   ett_rrlp_GPSDeltaEpochHeader, GPSDeltaEpochHeader_sequence);
5862
5863
14
  return offset;
5864
14
}
5865
5866
5867
5868
static unsigned
5869
177
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
177
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
5871
177
                                       1, 47, false, NULL);
5872
5873
177
  return offset;
5874
177
}
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
112
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
112
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5884
112
                                                  ett_rrlp_GPSDeltaElementList, GPSDeltaElementList_sequence_of,
5885
112
                                                  1, 32, false);
5886
5887
112
  return offset;
5888
112
}
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
117
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
117
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5900
117
                                   ett_rrlp_GPSEphemerisDeltaEpoch, GPSEphemerisDeltaEpoch_sequence);
5901
5902
117
  return offset;
5903
117
}
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
10
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
10
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5913
10
                                                  ett_rrlp_GPSEphemerisDeltaMatrix, GPSEphemerisDeltaMatrix_sequence_of,
5914
10
                                                  1, 128, false);
5915
5916
10
  return offset;
5917
10
}
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
20
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
20
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5930
20
                                   ett_rrlp_GPSEphemerisExtension, GPSEphemerisExtension_sequence);
5931
5932
20
  return offset;
5933
20
}
5934
5935
5936
5937
static unsigned
5938
4
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
4
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
5940
4
                                     32, 32, false, NULL, 0, NULL, NULL);
5941
5942
4
  return offset;
5943
4
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5955
2
                                   ett_rrlp_GPSSatEventsInfo, GPSSatEventsInfo_sequence);
5956
5957
2
  return offset;
5958
2
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5971
2
                                   ett_rrlp_GPSEphemerisExtensionCheck, GPSEphemerisExtensionCheck_sequence);
5972
5973
2
  return offset;
5974
2
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5987
11
                                   ett_rrlp_DGPSExtensionSatElement, DGPSExtensionSatElement_sequence);
5988
5989
11
  return offset;
5990
11
}
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
1
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
1
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6000
1
                                                  ett_rrlp_DGPSCorrectionsValidityPeriod, DGPSCorrectionsValidityPeriod_sequence_of,
6001
1
                                                  1, 16, false);
6002
6003
1
  return offset;
6004
1
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6015
0
                                   ett_rrlp_GPSReferenceTime_R10_Ext, GPSReferenceTime_R10_Ext_sequence);
6016
6017
0
  return offset;
6018
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6059
0
                                   ett_rrlp_GPSAlmanac_R10_Ext, GPSAlmanac_R10_Ext_sequence);
6060
6061
0
  return offset;
6062
0
}
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
2
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
2
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6078
2
                                     5, NULL, true, 0, NULL);
6079
6080
2
  return offset;
6081
2
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6093
2
                                   ett_rrlp_GPSAcquisAssist_R12_Ext_Element, GPSAcquisAssist_R12_Ext_Element_sequence);
6094
6095
2
  return offset;
6096
2
}
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
1
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
1
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6106
1
                                                  ett_rrlp_SeqOfGPSAcquisAssist_R12_Ext, SeqOfGPSAcquisAssist_R12_Ext_sequence_of,
6107
1
                                                  1, 16, false);
6108
6109
1
  return offset;
6110
1
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6122
1
                                   ett_rrlp_GPSAcquisAssist_R12_Ext, GPSAcquisAssist_R12_Ext_sequence);
6123
6124
1
  return offset;
6125
1
}
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
22
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
22
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6142
22
                                   ett_rrlp_Add_GPS_ControlHeader, Add_GPS_ControlHeader_sequence);
6143
6144
22
  return offset;
6145
22
}
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
22
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
22
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6156
22
                                   ett_rrlp_Add_GPS_AssistData, Add_GPS_AssistData_sequence);
6157
6158
22
  return offset;
6159
22
}
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
3
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
3
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6177
3
                                   ett_rrlp_Rel7_MsrPosition_Req_Extension, Rel7_MsrPosition_Req_Extension_sequence);
6178
6179
3
  return offset;
6180
3
}
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
24
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
24
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6199
24
                                   ett_rrlp_MsrPosition_Req, MsrPosition_Req_sequence);
6200
6201
24
  return offset;
6202
24
}
6203
6204
6205
6206
static unsigned
6207
14
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
14
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6209
14
                                                            2U, 3U, NULL, false);
6210
6211
14
  return offset;
6212
14
}
6213
6214
6215
6216
static unsigned
6217
14
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
14
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6219
14
                                                            1U, 3U, NULL, false);
6220
6221
14
  return offset;
6222
14
}
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
10
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
10
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6236
10
                                     3, NULL, false, 0, NULL);
6237
6238
10
  return offset;
6239
10
}
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
14
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
14
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6252
14
                                   ett_rrlp_MultipleSets, MultipleSets_sequence);
6253
6254
14
  return offset;
6255
14
}
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
31
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
31
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6267
31
                                   ett_rrlp_BSICAndCarrier, BSICAndCarrier_sequence);
6268
6269
31
  return offset;
6270
31
}
6271
6272
6273
6274
static unsigned
6275
16
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
16
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6277
16
                                                            0U, 65535U, NULL, false);
6278
6279
16
  return offset;
6280
16
}
6281
6282
6283
6284
static unsigned
6285
14
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
14
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6287
14
                                                            1U, 16U, NULL, false);
6288
6289
14
  return offset;
6290
14
}
6291
6292
6293
6294
static unsigned
6295
17
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
17
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6297
17
                                                            1U, 32U, NULL, false);
6298
6299
17
  return offset;
6300
17
}
6301
6302
6303
6304
static unsigned
6305
15
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
15
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6307
15
                                                            0U, 65535U, NULL, false);
6308
6309
15
  return offset;
6310
15
}
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
15
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
15
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6322
15
                                   ett_rrlp_CellIDAndLAC, CellIDAndLAC_sequence);
6323
6324
15
  return offset;
6325
15
}
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
29
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
29
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6349
29
                                 ett_rrlp_ReferenceIdentityType, ReferenceIdentityType_choice,
6350
29
                                 NULL);
6351
6352
29
  return offset;
6353
29
}
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
9
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
9
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6363
9
                                                  ett_rrlp_SeqOfReferenceIdentityType, SeqOfReferenceIdentityType_sequence_of,
6364
9
                                                  1, 3, false);
6365
6366
9
  return offset;
6367
9
}
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
9
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
9
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6378
9
                                   ett_rrlp_ReferenceIdentity, ReferenceIdentity_sequence);
6379
6380
9
  return offset;
6381
9
}
6382
6383
6384
6385
static unsigned
6386
32
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
32
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6388
32
                                                            0U, 42431U, NULL, false);
6389
6390
32
  return offset;
6391
32
}
6392
6393
6394
6395
static unsigned
6396
116
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
116
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6398
116
                                                            0U, 3U, NULL, false);
6399
6400
116
  return offset;
6401
116
}
6402
6403
6404
6405
static unsigned
6406
15
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
15
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6408
15
                                                            0U, 31U, NULL, false);
6409
6410
15
  return offset;
6411
15
}
6412
6413
6414
6415
static unsigned
6416
15
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
15
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6418
15
                                                            0U, 7U, NULL, false);
6419
6420
15
  return offset;
6421
15
}
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
15
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
15
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6433
15
                                   ett_rrlp_TOA_MeasurementsOfRef, TOA_MeasurementsOfRef_sequence);
6434
6435
15
  return offset;
6436
15
}
6437
6438
6439
6440
static unsigned
6441
32
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
32
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6443
32
                                                            0U, 3U, NULL, false);
6444
6445
32
  return offset;
6446
32
}
6447
6448
6449
6450
static unsigned
6451
11
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
11
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6453
11
                                                            0U, 960U, NULL, false);
6454
6455
11
  return offset;
6456
11
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6468
11
                                   ett_rrlp_MultiFrameCarrier, MultiFrameCarrier_sequence);
6469
6470
11
  return offset;
6471
11
}
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
65
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
65
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6497
65
                                 ett_rrlp_NeighborIdentity, NeighborIdentity_choice,
6498
65
                                 NULL);
6499
6500
65
  return offset;
6501
65
}
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
84
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
84
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6513
84
                                   ett_rrlp_EOTDQuality, EOTDQuality_sequence);
6514
6515
84
  return offset;
6516
84
}
6517
6518
6519
6520
static unsigned
6521
84
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
84
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6523
84
                                                            0U, 39999U, NULL, false);
6524
6525
84
  return offset;
6526
84
}
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
65
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
65
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6540
65
                                   ett_rrlp_OTD_MeasurementWithID, OTD_MeasurementWithID_sequence);
6541
6542
65
  return offset;
6543
65
}
6544
6545
6546
6547
static unsigned
6548
44
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
44
  offset = dissect_rrlp_OTD_MeasurementWithID(tvb, offset, actx, tree, hf_index);
6550
6551
44
  return offset;
6552
44
}
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
5
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
5
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6562
5
                                                  ett_rrlp_SeqOfOTD_FirstSetMsrs, SeqOfOTD_FirstSetMsrs_sequence_of,
6563
5
                                                  1, 10, false);
6564
6565
5
  return offset;
6566
5
}
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
16
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
16
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6582
16
                                   ett_rrlp_OTD_MsrElementFirst, OTD_MsrElementFirst_sequence);
6583
6584
16
  return offset;
6585
16
}
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
24
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
24
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6598
24
                                   ett_rrlp_OTD_Measurement, OTD_Measurement_sequence);
6599
6600
24
  return offset;
6601
24
}
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
45
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
45
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6619
45
                                 ett_rrlp_OTD_MsrsOfOtherSets, OTD_MsrsOfOtherSets_choice,
6620
45
                                 NULL);
6621
6622
45
  return offset;
6623
45
}
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
8
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
8
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6633
8
                                                  ett_rrlp_SeqOfOTD_MsrsOfOtherSets, SeqOfOTD_MsrsOfOtherSets_sequence_of,
6634
8
                                                  1, 10, false);
6635
6636
8
  return offset;
6637
8
}
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
16
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
16
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6653
16
                                   ett_rrlp_OTD_MsrElementRest, OTD_MsrElementRest_sequence);
6654
6655
16
  return offset;
6656
16
}
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
13
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
13
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6666
13
                                                  ett_rrlp_SeqOfOTD_MsrElementRest, SeqOfOTD_MsrElementRest_sequence_of,
6667
13
                                                  1, 2, false);
6668
6669
13
  return offset;
6670
13
}
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
16
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
16
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6682
16
                                   ett_rrlp_OTD_MeasureInfo, OTD_MeasureInfo_sequence);
6683
6684
16
  return offset;
6685
16
}
6686
6687
6688
6689
static unsigned
6690
12
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
12
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6692
12
                                                            0U, 14399999U, NULL, false);
6693
6694
12
  return offset;
6695
12
}
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
24
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
24
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6708
24
                                                            0U, 1U, NULL, false);
6709
6710
24
  return offset;
6711
24
}
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
18
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
18
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6725
18
                                   ett_rrlp_LocationInfo, LocationInfo_sequence);
6726
6727
18
  return offset;
6728
18
}
6729
6730
6731
6732
static unsigned
6733
22
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
22
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6735
22
                                                            0U, 14399999U, NULL, false);
6736
6737
22
  return offset;
6738
22
}
6739
6740
6741
6742
static unsigned
6743
150
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
150
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6745
150
                                                            0U, 1024U, NULL, false);
6746
6747
150
  return offset;
6748
150
}
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
357
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
357
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6763
357
                                     4, NULL, false, 0, NULL);
6764
6765
357
  return offset;
6766
357
}
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
151
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
151
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6783
151
                                   ett_rrlp_GPS_MsrElement, GPS_MsrElement_sequence);
6784
6785
151
  return offset;
6786
151
}
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
21
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
21
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6796
21
                                                  ett_rrlp_SeqOfGPS_MsrElement, SeqOfGPS_MsrElement_sequence_of,
6797
21
                                                  1, 16, false);
6798
6799
21
  return offset;
6800
21
}
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
22
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
22
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6813
22
                                   ett_rrlp_GPS_MsrSetElement, GPS_MsrSetElement_sequence);
6814
6815
22
  return offset;
6816
22
}
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
10
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
10
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6826
10
                                                  ett_rrlp_SeqOfGPS_MsrSetElement, SeqOfGPS_MsrSetElement_sequence_of,
6827
10
                                                  1, 3, false);
6828
6829
10
  return offset;
6830
10
}
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
10
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
10
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6841
10
                                   ett_rrlp_GPS_MeasureInfo, GPS_MeasureInfo_sequence);
6842
6843
10
  return offset;
6844
10
}
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
3
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
3
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6869
3
                                     11, NULL, true, 3, NULL);
6870
6871
3
  return offset;
6872
3
}
6873
6874
6875
6876
static unsigned
6877
0
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
0
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
6879
0
                                       1, maxGPSAssistanceData, false, NULL);
6880
6881
0
  return offset;
6882
0
}
6883
6884
6885
6886
static unsigned
6887
0
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
0
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
6889
0
                                       1, maxGANSSAssistanceData, false, NULL);
6890
6891
0
  return offset;
6892
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6905
0
                                   ett_rrlp_AdditionalAssistanceData, AdditionalAssistanceData_sequence);
6906
6907
0
  return offset;
6908
0
}
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
3
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
3
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6920
3
                                   ett_rrlp_LocationError, LocationError_sequence);
6921
6922
3
  return offset;
6923
3
}
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
1
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
1
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6933
1
                                                  ett_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext, SeqOfOTD_FirstSetMsrs_R98_Ext_sequence_of,
6934
1
                                                  1, 5, false);
6935
6936
1
  return offset;
6937
1
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6948
1
                                   ett_rrlp_OTD_MsrElementFirst_R98_Ext, OTD_MsrElementFirst_R98_Ext_sequence);
6949
6950
1
  return offset;
6951
1
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6962
1
                                   ett_rrlp_OTD_MeasureInfo_R98_Ext, OTD_MeasureInfo_R98_Ext_sequence);
6963
6964
1
  return offset;
6965
1
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6976
2
                                   ett_rrlp_T_rel_98_Ext_MeasureInfo, T_rel_98_Ext_MeasureInfo_sequence);
6977
6978
2
  return offset;
6979
2
}
6980
6981
6982
6983
static unsigned
6984
0
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
0
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6986
0
                                                            0U, 9999U, NULL, false);
6987
6988
0
  return offset;
6989
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7003
0
                                   ett_rrlp_GPSTimeAssistanceMeasurements, GPSTimeAssistanceMeasurements_sequence);
7004
7005
0
  return offset;
7006
0
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7018
2
                                   ett_rrlp_Rel_98_MsrPosition_Rsp_Extension, Rel_98_MsrPosition_Rsp_Extension_sequence);
7019
7020
2
  return offset;
7021
2
}
7022
7023
7024
7025
static unsigned
7026
1
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
1
  offset = dissect_rrlp_SeqOfOTD_MsrElementRest(tvb, offset, actx, tree, hf_index);
7028
7029
1
  return offset;
7030
1
}
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
2
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
2
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7043
2
                                     2, NULL, false, 0, NULL);
7044
7045
2
  return offset;
7046
2
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7059
2
                                   ett_rrlp_Rel_5_MsrPosition_Rsp_Extension, Rel_5_MsrPosition_Rsp_Extension_sequence);
7060
7061
2
  return offset;
7062
2
}
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
14
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
14
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7074
14
                                   ett_rrlp_ReferenceFrame, ReferenceFrame_sequence);
7075
7076
14
  return offset;
7077
14
}
7078
7079
7080
7081
static unsigned
7082
8
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
8
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7084
8
                                                            0U, 3599999U, NULL, false);
7085
7086
8
  return offset;
7087
8
}
7088
7089
7090
7091
static unsigned
7092
4
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
4
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7094
4
                                                            0U, 16384U, NULL, false);
7095
7096
4
  return offset;
7097
4
}
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
6
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
6
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7115
6
                                     3, 16, false, PositionData_bits, 8, NULL, NULL);
7116
7117
6
  return offset;
7118
6
}
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
6
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
6
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7137
6
                                   ett_rrlp_GANSSLocationInfo, GANSSLocationInfo_sequence);
7138
7139
6
  return offset;
7140
6
}
7141
7142
7143
7144
static unsigned
7145
80
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
80
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7147
80
                                                            0U, 33554431U, NULL, false);
7148
7149
80
  return offset;
7150
80
}
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
210
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
210
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7169
210
                                   ett_rrlp_GANSS_SgnElement, GANSS_SgnElement_sequence);
7170
7171
210
  return offset;
7172
210
}
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
53
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
53
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7182
53
                                                  ett_rrlp_SeqOfGANSS_SgnElement, SeqOfGANSS_SgnElement_sequence_of,
7183
53
                                                  1, 16, false);
7184
7185
53
  return offset;
7186
53
}
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
54
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
54
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7199
54
                                   ett_rrlp_GANSS_SgnTypeElement, GANSS_SgnTypeElement_sequence);
7200
7201
54
  return offset;
7202
54
}
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
32
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
32
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7212
32
                                                  ett_rrlp_SeqOfGANSS_SgnTypeElement, SeqOfGANSS_SgnTypeElement_sequence_of,
7213
32
                                                  1, 8, false);
7214
7215
32
  return offset;
7216
32
}
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
32
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
32
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7228
32
                                   ett_rrlp_GANSS_MsrElement, GANSS_MsrElement_sequence);
7229
7230
32
  return offset;
7231
32
}
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
18
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
18
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7241
18
                                                  ett_rrlp_SeqOfGANSS_MsrElement, SeqOfGANSS_MsrElement_sequence_of,
7242
18
                                                  1, 8, false);
7243
7244
18
  return offset;
7245
18
}
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
19
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
19
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7260
19
                                   ett_rrlp_GANSS_MsrSetElement, GANSS_MsrSetElement_sequence);
7261
7262
19
  return offset;
7263
19
}
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
11
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
11
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7273
11
                                                  ett_rrlp_SeqOfGANSS_MsrSetElement, SeqOfGANSS_MsrSetElement_sequence_of,
7274
11
                                                  1, 3, false);
7275
7276
11
  return offset;
7277
11
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7288
11
                                   ett_rrlp_GANSSMeasureInfo, GANSSMeasureInfo_sequence);
7289
7290
11
  return offset;
7291
11
}
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
13
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
13
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7304
13
                                   ett_rrlp_Rel_7_MsrPosition_Rsp_Extension, Rel_7_MsrPosition_Rsp_Extension_sequence);
7305
7306
13
  return offset;
7307
13
}
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
28
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
28
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7327
28
                                   ett_rrlp_MsrPosition_Rsp, MsrPosition_Rsp_sequence);
7328
7329
28
  return offset;
7330
28
}
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
15
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
15
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7343
15
                                     2, NULL, false, 0, NULL);
7344
7345
15
  return offset;
7346
15
}
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
10
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
10
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7359
10
                                   ett_rrlp_Rel98_AssistanceData_Extension, Rel98_AssistanceData_Extension_sequence);
7360
7361
10
  return offset;
7362
10
}
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
4
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
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7373
4
                                   ett_rrlp_Rel5_AssistanceData_Extension, Rel5_AssistanceData_Extension_sequence);
7374
7375
4
  return offset;
7376
4
}
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
114
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
114
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7390
114
                                   ett_rrlp_Rel7_AssistanceData_Extension, Rel7_AssistanceData_Extension_sequence);
7391
7392
114
  return offset;
7393
114
}
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
186
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
186
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7412
186
                                   ett_rrlp_AssistanceData, AssistanceData_sequence);
7413
7414
186
  return offset;
7415
186
}
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
2
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
2
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7432
2
                                     6, NULL, true, 0, NULL);
7433
7434
2
  return offset;
7435
2
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7446
1
                                   ett_rrlp_Rel_5_ProtocolError_Extension, Rel_5_ProtocolError_Extension_sequence);
7447
7448
1
  return offset;
7449
1
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7462
2
                                   ett_rrlp_ProtocolError, ProtocolError_sequence);
7463
7464
2
  return offset;
7465
2
}
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
0
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
0
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7478
0
                                     1, 8, false, GANSSPositioningMethodTypes_bits, 3, NULL, NULL);
7479
7480
0
  return offset;
7481
0
}
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
3
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
3
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7512
3
                                   ett_rrlp_GANSSPositionMethod, GANSSPositionMethod_sequence);
7513
7514
3
  return offset;
7515
3
}
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
2
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
2
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7525
2
                                                  ett_rrlp_GANSSPositionMethods, GANSSPositionMethods_sequence_of,
7526
2
                                                  1, 16, false);
7527
7528
2
  return offset;
7529
2
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7542
2
                                   ett_rrlp_PosCapability_Req, PosCapability_Req_sequence);
7543
7544
2
  return offset;
7545
2
}
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
2
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
2
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7560
2
                                     1, 16, false, NonGANSSPositionMethods_bits, 5, NULL, NULL);
7561
7562
2
  return offset;
7563
2
}
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
4
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
4
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7576
4
                                     1, 8, false, MultipleMeasurementSets_bits, 3, NULL, NULL);
7577
7578
4
  return offset;
7579
4
}
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
4
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
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7592
4
                                   ett_rrlp_PosCapabilities, PosCapabilities_sequence);
7593
7594
4
  return offset;
7595
4
}
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
4
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
4
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7617
4
                                     1, 16, false, GPSAssistance_bits, 12, NULL, NULL);
7618
7619
4
  return offset;
7620
4
}
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
1
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
1
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7636
1
                                     1, 8, false, CommonGANSSAssistance_bits, 6, NULL, NULL);
7637
7638
1
  return offset;
7639
1
}
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
1
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
1
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7664
1
                                     1, 16, false, GANSSAssistance_bits, 15, NULL, NULL);
7665
7666
1
  return offset;
7667
1
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7679
1
                                   ett_rrlp_GANSSAssistanceForOneGANSS, GANSSAssistanceForOneGANSS_sequence);
7680
7681
1
  return offset;
7682
1
}
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
1
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
1
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7692
1
                                                  ett_rrlp_SpecificGANSSAssistance, SpecificGANSSAssistance_sequence_of,
7693
1
                                                  1, 16, false);
7694
7695
1
  return offset;
7696
1
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7708
1
                                   ett_rrlp_GANSSAssistanceSet, GANSSAssistanceSet_sequence);
7709
7710
1
  return offset;
7711
1
}
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
0
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
0
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7729
0
                                     1, 8, false, GANSSModelID_bits, 8, NULL, NULL);
7730
7731
0
  return offset;
7732
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7747
0
                                   ett_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS, GANSSAdditionalAssistanceChoicesForOneGANSS_sequence);
7748
7749
0
  return offset;
7750
0
}
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
0
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
0
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7760
0
                                                  ett_rrlp_GANSSAdditionalAssistanceChoices, GANSSAdditionalAssistanceChoices_sequence_of,
7761
0
                                                  1, 16, false);
7762
7763
0
  return offset;
7764
0
}
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
4
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
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7777
4
                                   ett_rrlp_AssistanceSupported, AssistanceSupported_sequence);
7778
7779
4
  return offset;
7780
4
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7792
0
                                   ett_rrlp_AssistanceNeeded, AssistanceNeeded_sequence);
7793
7794
0
  return offset;
7795
0
}
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
4
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
4
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7810
4
                                   ett_rrlp_PosCapability_Rsp, PosCapability_Rsp_sequence);
7811
7812
4
  return offset;
7813
4
}
7814
7815
7816
7817
static unsigned
7818
9
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
9
  offset = dissect_per_integer(tvb, offset, actx, tree, hf_index, NULL);
7820
7821
9
  return offset;
7822
9
}
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
9
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
9
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7834
9
                                   ett_rrlp_CellInfo, CellInfo_sequence);
7835
7836
9
  return offset;
7837
9
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7853
0
                                   ett_rrlp_CellSet, CellSet_sequence);
7854
7855
0
  return offset;
7856
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7874
0
                                   ett_rrlp_CellSets, CellSets_sequence);
7875
7876
0
  return offset;
7877
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7891
0
                                   ett_rrlp_MultilaterationOTD_Req, MultilaterationOTD_Req_sequence);
7892
7893
0
  return offset;
7894
0
}
7895
7896
7897
7898
static unsigned
7899
11
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
11
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7901
11
                                                            1U, 48U, NULL, false);
7902
7903
11
  return offset;
7904
11
}
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
20
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
20
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7922
20
                                 ett_rrlp_CellType, CellType_choice,
7923
20
                                 NULL);
7924
7925
20
  return offset;
7926
20
}
7927
7928
7929
7930
static unsigned
7931
20
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
20
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7933
20
                                                            0U, 999U, NULL, false);
7934
7935
20
  return offset;
7936
20
}
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
20
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
20
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7949
20
                                   ett_rrlp_OTDMeasurementInfo, OTDMeasurementInfo_sequence);
7950
7951
20
  return offset;
7952
20
}
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
5
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
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7969
5
                                   ett_rrlp_OTDMeasurementResults, OTDMeasurementResults_sequence);
7970
7971
5
  return offset;
7972
5
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7984
0
                                   ett_rrlp_RXLEVMeasurementInfo, RXLEVMeasurementInfo_sequence);
7985
7986
0
  return offset;
7987
0
}
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
0
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
0
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8003
0
                                   ett_rrlp_RXLEVMeasurementResults, RXLEVMeasurementResults_sequence);
8004
8005
0
  return offset;
8006
0
}
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
5
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
5
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8019
5
                                   ett_rrlp_MultilaterationOTD_Rsp, MultilaterationOTD_Rsp_sequence);
8020
8021
5
  return offset;
8022
5
}
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
1
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
1
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8033
1
                                   ett_rrlp_Extended_Access_Burst, Extended_Access_Burst_sequence);
8034
8035
1
  return offset;
8036
1
}
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
11
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
11
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8058
11
                                 ett_rrlp_MTA_Method, MTA_Method_choice,
8059
11
                                 NULL);
8060
8061
11
  return offset;
8062
11
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8081
11
                                   ett_rrlp_Random_ID_Set, Random_ID_Set_sequence);
8082
8083
11
  return offset;
8084
11
}
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
85
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
85
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8097
85
                                   ett_rrlp_BSIC_Info, BSIC_Info_sequence);
8098
8099
85
  return offset;
8100
85
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8112
2
                                   ett_rrlp_Co_Sited_Cell_Set_Member, Co_Sited_Cell_Set_Member_sequence);
8113
8114
2
  return offset;
8115
2
}
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
2
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
2
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8131
2
                                   ett_rrlp_Co_Sited_Cells, Co_Sited_Cells_sequence);
8132
8133
2
  return offset;
8134
2
}
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
12
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
12
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8148
12
                                   ett_rrlp_MTA_BITMAP, MTA_BITMAP_sequence);
8149
8150
12
  return offset;
8151
12
}
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
12
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
12
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8187
12
                                   ett_rrlp_EC_RACH_Control_Parameters, EC_RACH_Control_Parameters_sequence);
8188
8189
12
  return offset;
8190
12
}
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
83
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
83
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8208
83
                                 ett_rrlp_T_ec_cell_information, T_ec_cell_information_choice,
8209
83
                                 NULL);
8210
8211
83
  return offset;
8212
83
}
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
10
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
10
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8227
10
                                   ett_rrlp_RACH_Control_Parameters, RACH_Control_Parameters_sequence);
8228
8229
10
  return offset;
8230
10
}
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
74
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
74
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8248
74
                                 ett_rrlp_T_peo_cell_information, T_peo_cell_information_choice,
8249
74
                                 NULL);
8250
8251
74
  return offset;
8252
74
}
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
84
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
84
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8267
84
                                   ett_rrlp_Cell_Set_Member, Cell_Set_Member_sequence);
8268
8269
84
  return offset;
8270
84
}
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
22
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
22
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8286
22
                                   ett_rrlp_Cell_Set, Cell_Set_sequence);
8287
8288
22
  return offset;
8289
22
}
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
0
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
0
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8309
0
                                 ett_rrlp_MTA_Security, MTA_Security_choice,
8310
0
                                 NULL);
8311
8312
0
  return offset;
8313
0
}
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
11
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
11
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8339
11
                                   ett_rrlp_PosMTA_Req, PosMTA_Req_sequence);
8340
8341
11
  return offset;
8342
11
}
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
271
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
271
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
8376
271
                                 ett_rrlp_RRLP_Component, RRLP_Component_choice,
8377
271
                                 NULL);
8378
8379
271
  return offset;
8380
271
}
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
271
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
271
  proto_tree_add_item(tree, proto_rrlp, tvb, 0, -1, ENC_NA);
8393
8394
271
  col_append_sep_str(actx->pinfo->cinfo, COL_PROTOCOL, "/", "RRLP");
8395
271
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8396
271
                                   ett_rrlp_PDU, PDU_sequence);
8397
8398
271
  return offset;
8399
271
}
8400
8401
/*--- PDUs ---*/
8402
8403
271
static int dissect_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
8404
271
  unsigned offset = 0;
8405
271
  asn1_ctx_t asn1_ctx;
8406
271
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, false, pinfo);
8407
271
  offset = dissect_rrlp_PDU(tvb, offset, &asn1_ctx, tree, hf_rrlp_PDU_PDU);
8408
271
  offset += 7; offset >>= 3;
8409
271
  return offset;
8410
271
}
8411
8412
8413
8414
/*--- proto_register_rrlp -------------------------------------------*/
8415
15
void proto_register_rrlp(void) {
8416
8417
  /* List of fields */
8418
15
  static hf_register_info hf[] = {
8419
8420
15
    { &hf_rrlp_PDU_PDU,
8421
15
      { "PDU", "rrlp.PDU_element",
8422
15
        FT_NONE, BASE_NONE, NULL, 0,
8423
15
        NULL, HFILL }},
8424
15
    { &hf_rrlp_privateExtensionList,
8425
15
      { "privateExtensionList", "rrlp.privateExtensionList",
8426
15
        FT_UINT32, BASE_DEC, NULL, 0,
8427
15
        NULL, HFILL }},
8428
15
    { &hf_rrlp_pcs_Extensions,
8429
15
      { "pcs-Extensions", "rrlp.pcs_Extensions_element",
8430
15
        FT_NONE, BASE_NONE, NULL, 0,
8431
15
        NULL, HFILL }},
8432
15
    { &hf_rrlp_PrivateExtensionList_item,
8433
15
      { "PrivateExtension", "rrlp.PrivateExtension_element",
8434
15
        FT_NONE, BASE_NONE, NULL, 0,
8435
15
        NULL, HFILL }},
8436
15
    { &hf_rrlp_extId,
8437
15
      { "extId", "rrlp.extId",
8438
15
        FT_OID, BASE_NONE, NULL, 0,
8439
15
        "OBJECT_IDENTIFIER", HFILL }},
8440
15
    { &hf_rrlp_extType,
8441
15
      { "extType", "rrlp.extType_element",
8442
15
        FT_NONE, BASE_NONE, NULL, 0,
8443
15
        NULL, HFILL }},
8444
15
    { &hf_rrlp_referenceNumber,
8445
15
      { "referenceNumber", "rrlp.referenceNumber",
8446
15
        FT_UINT32, BASE_DEC, NULL, 0,
8447
15
        "INTEGER_0_7", HFILL }},
8448
15
    { &hf_rrlp_component,
8449
15
      { "component", "rrlp.component",
8450
15
        FT_UINT32, BASE_DEC, VALS(rrlp_RRLP_Component_vals), 0,
8451
15
        "RRLP_Component", HFILL }},
8452
15
    { &hf_rrlp_msrPositionReq,
8453
15
      { "msrPositionReq", "rrlp.msrPositionReq_element",
8454
15
        FT_NONE, BASE_NONE, NULL, 0,
8455
15
        "MsrPosition_Req", HFILL }},
8456
15
    { &hf_rrlp_msrPositionRsp,
8457
15
      { "msrPositionRsp", "rrlp.msrPositionRsp_element",
8458
15
        FT_NONE, BASE_NONE, NULL, 0,
8459
15
        "MsrPosition_Rsp", HFILL }},
8460
15
    { &hf_rrlp_assistanceData,
8461
15
      { "assistanceData", "rrlp.assistanceData_element",
8462
15
        FT_NONE, BASE_NONE, NULL, 0,
8463
15
        NULL, HFILL }},
8464
15
    { &hf_rrlp_assistanceDataAck,
8465
15
      { "assistanceDataAck", "rrlp.assistanceDataAck_element",
8466
15
        FT_NONE, BASE_NONE, NULL, 0,
8467
15
        NULL, HFILL }},
8468
15
    { &hf_rrlp_protocolError,
8469
15
      { "protocolError", "rrlp.protocolError_element",
8470
15
        FT_NONE, BASE_NONE, NULL, 0,
8471
15
        NULL, HFILL }},
8472
15
    { &hf_rrlp_posCapabilityReq,
8473
15
      { "posCapabilityReq", "rrlp.posCapabilityReq_element",
8474
15
        FT_NONE, BASE_NONE, NULL, 0,
8475
15
        "PosCapability_Req", HFILL }},
8476
15
    { &hf_rrlp_posCapabilityRsp,
8477
15
      { "posCapabilityRsp", "rrlp.posCapabilityRsp_element",
8478
15
        FT_NONE, BASE_NONE, NULL, 0,
8479
15
        "PosCapability_Rsp", HFILL }},
8480
15
    { &hf_rrlp_multilaterationOTDReq,
8481
15
      { "multilaterationOTDReq", "rrlp.multilaterationOTDReq_element",
8482
15
        FT_NONE, BASE_NONE, NULL, 0,
8483
15
        "MultilaterationOTD_Req", HFILL }},
8484
15
    { &hf_rrlp_multilaterationOTDRsp,
8485
15
      { "multilaterationOTDRsp", "rrlp.multilaterationOTDRsp_element",
8486
15
        FT_NONE, BASE_NONE, NULL, 0,
8487
15
        "MultilaterationOTD_Rsp", HFILL }},
8488
15
    { &hf_rrlp_posMTAReq,
8489
15
      { "posMTAReq", "rrlp.posMTAReq_element",
8490
15
        FT_NONE, BASE_NONE, NULL, 0,
8491
15
        "PosMTA_Req", HFILL }},
8492
15
    { &hf_rrlp_positionInstruct,
8493
15
      { "positionInstruct", "rrlp.positionInstruct_element",
8494
15
        FT_NONE, BASE_NONE, NULL, 0,
8495
15
        NULL, HFILL }},
8496
15
    { &hf_rrlp_referenceAssistData,
8497
15
      { "referenceAssistData", "rrlp.referenceAssistData_element",
8498
15
        FT_NONE, BASE_NONE, NULL, 0,
8499
15
        NULL, HFILL }},
8500
15
    { &hf_rrlp_msrAssistData,
8501
15
      { "msrAssistData", "rrlp.msrAssistData_element",
8502
15
        FT_NONE, BASE_NONE, NULL, 0,
8503
15
        NULL, HFILL }},
8504
15
    { &hf_rrlp_systemInfoAssistData,
8505
15
      { "systemInfoAssistData", "rrlp.systemInfoAssistData_element",
8506
15
        FT_NONE, BASE_NONE, NULL, 0,
8507
15
        NULL, HFILL }},
8508
15
    { &hf_rrlp_gps_AssistData,
8509
15
      { "gps-AssistData", "rrlp.gps_AssistData_element",
8510
15
        FT_NONE, BASE_NONE, NULL, 0,
8511
15
        NULL, HFILL }},
8512
15
    { &hf_rrlp_extensionContainer,
8513
15
      { "extensionContainer", "rrlp.extensionContainer_element",
8514
15
        FT_NONE, BASE_NONE, NULL, 0,
8515
15
        NULL, HFILL }},
8516
15
    { &hf_rrlp_rel98_MsrPosition_Req_extension,
8517
15
      { "rel98-MsrPosition-Req-extension", "rrlp.rel98_MsrPosition_Req_extension_element",
8518
15
        FT_NONE, BASE_NONE, NULL, 0,
8519
15
        NULL, HFILL }},
8520
15
    { &hf_rrlp_rel5_MsrPosition_Req_extension,
8521
15
      { "rel5-MsrPosition-Req-extension", "rrlp.rel5_MsrPosition_Req_extension_element",
8522
15
        FT_NONE, BASE_NONE, NULL, 0,
8523
15
        NULL, HFILL }},
8524
15
    { &hf_rrlp_rel7_MsrPosition_Req_extension,
8525
15
      { "rel7-MsrPosition-Req-extension", "rrlp.rel7_MsrPosition_Req_extension_element",
8526
15
        FT_NONE, BASE_NONE, NULL, 0,
8527
15
        NULL, HFILL }},
8528
15
    { &hf_rrlp_multipleSets,
8529
15
      { "multipleSets", "rrlp.multipleSets_element",
8530
15
        FT_NONE, BASE_NONE, NULL, 0,
8531
15
        NULL, HFILL }},
8532
15
    { &hf_rrlp_referenceIdentity,
8533
15
      { "referenceIdentity", "rrlp.referenceIdentity_element",
8534
15
        FT_NONE, BASE_NONE, NULL, 0,
8535
15
        NULL, HFILL }},
8536
15
    { &hf_rrlp_otd_MeasureInfo,
8537
15
      { "otd-MeasureInfo", "rrlp.otd_MeasureInfo_element",
8538
15
        FT_NONE, BASE_NONE, NULL, 0,
8539
15
        NULL, HFILL }},
8540
15
    { &hf_rrlp_locationInfo,
8541
15
      { "locationInfo", "rrlp.locationInfo_element",
8542
15
        FT_NONE, BASE_NONE, NULL, 0,
8543
15
        NULL, HFILL }},
8544
15
    { &hf_rrlp_gps_MeasureInfo,
8545
15
      { "gps-MeasureInfo", "rrlp.gps_MeasureInfo_element",
8546
15
        FT_NONE, BASE_NONE, NULL, 0,
8547
15
        NULL, HFILL }},
8548
15
    { &hf_rrlp_locationError,
8549
15
      { "locationError", "rrlp.locationError_element",
8550
15
        FT_NONE, BASE_NONE, NULL, 0,
8551
15
        NULL, HFILL }},
8552
15
    { &hf_rrlp_rel_98_MsrPosition_Rsp_Extension,
8553
15
      { "rel-98-MsrPosition-Rsp-Extension", "rrlp.rel_98_MsrPosition_Rsp_Extension_element",
8554
15
        FT_NONE, BASE_NONE, NULL, 0,
8555
15
        NULL, HFILL }},
8556
15
    { &hf_rrlp_rel_5_MsrPosition_Rsp_Extension,
8557
15
      { "rel-5-MsrPosition-Rsp-Extension", "rrlp.rel_5_MsrPosition_Rsp_Extension_element",
8558
15
        FT_NONE, BASE_NONE, NULL, 0,
8559
15
        NULL, HFILL }},
8560
15
    { &hf_rrlp_rel_7_MsrPosition_Rsp_Extension,
8561
15
      { "rel-7-MsrPosition-Rsp-Extension", "rrlp.rel_7_MsrPosition_Rsp_Extension_element",
8562
15
        FT_NONE, BASE_NONE, NULL, 0,
8563
15
        NULL, HFILL }},
8564
15
    { &hf_rrlp_moreAssDataToBeSent,
8565
15
      { "moreAssDataToBeSent", "rrlp.moreAssDataToBeSent",
8566
15
        FT_UINT32, BASE_DEC, VALS(rrlp_MoreAssDataToBeSent_vals), 0,
8567
15
        NULL, HFILL }},
8568
15
    { &hf_rrlp_rel98_AssistanceData_Extension,
8569
15
      { "rel98-AssistanceData-Extension", "rrlp.rel98_AssistanceData_Extension_element",
8570
15
        FT_NONE, BASE_NONE, NULL, 0,
8571
15
        NULL, HFILL }},
8572
15
    { &hf_rrlp_rel5_AssistanceData_Extension,
8573
15
      { "rel5-AssistanceData-Extension", "rrlp.rel5_AssistanceData_Extension_element",
8574
15
        FT_NONE, BASE_NONE, NULL, 0,
8575
15
        NULL, HFILL }},
8576
15
    { &hf_rrlp_rel7_AssistanceData_Extension,
8577
15
      { "rel7-AssistanceData-Extension", "rrlp.rel7_AssistanceData_Extension_element",
8578
15
        FT_NONE, BASE_NONE, NULL, 0,
8579
15
        NULL, HFILL }},
8580
15
    { &hf_rrlp_errorCause,
8581
15
      { "errorCause", "rrlp.errorCause",
8582
15
        FT_UINT32, BASE_DEC, VALS(rrlp_ErrorCodes_vals), 0,
8583
15
        "ErrorCodes", HFILL }},
8584
15
    { &hf_rrlp_rel_5_ProtocolError_Extension,
8585
15
      { "rel-5-ProtocolError-Extension", "rrlp.rel_5_ProtocolError_Extension_element",
8586
15
        FT_NONE, BASE_NONE, NULL, 0,
8587
15
        NULL, HFILL }},
8588
15
    { &hf_rrlp_extended_reference,
8589
15
      { "extended-reference", "rrlp.extended_reference_element",
8590
15
        FT_NONE, BASE_NONE, NULL, 0,
8591
15
        NULL, HFILL }},
8592
15
    { &hf_rrlp_gANSSPositionMethods,
8593
15
      { "gANSSPositionMethods", "rrlp.gANSSPositionMethods",
8594
15
        FT_UINT32, BASE_DEC, NULL, 0,
8595
15
        NULL, HFILL }},
8596
15
    { &hf_rrlp_posCapabilities,
8597
15
      { "posCapabilities", "rrlp.posCapabilities_element",
8598
15
        FT_NONE, BASE_NONE, NULL, 0,
8599
15
        NULL, HFILL }},
8600
15
    { &hf_rrlp_assistanceSupported,
8601
15
      { "assistanceSupported", "rrlp.assistanceSupported_element",
8602
15
        FT_NONE, BASE_NONE, NULL, 0,
8603
15
        NULL, HFILL }},
8604
15
    { &hf_rrlp_assistanceNeeded,
8605
15
      { "assistanceNeeded", "rrlp.assistanceNeeded_element",
8606
15
        FT_NONE, BASE_NONE, NULL, 0,
8607
15
        NULL, HFILL }},
8608
15
    { &hf_rrlp_target_Number_of_Cells,
8609
15
      { "target-Number-of-Cells", "rrlp.target_Number_of_Cells",
8610
15
        FT_UINT32, BASE_DEC, NULL, 0,
8611
15
        "INTEGER_0_7", HFILL }},
8612
15
    { &hf_rrlp_requested_MS_Synchronization_Accuracy,
8613
15
      { "requested-MS-Synchronization-Accuracy", "rrlp.requested_MS_Synchronization_Accuracy",
8614
15
        FT_UINT32, BASE_DEC, NULL, 0,
8615
15
        "INTEGER_0_15", HFILL }},
8616
15
    { &hf_rrlp_mta_Method,
8617
15
      { "mta-Method", "rrlp.mta_Method",
8618
15
        FT_UINT32, BASE_DEC, VALS(rrlp_MTA_Method_vals), 0,
8619
15
        NULL, HFILL }},
8620
15
    { &hf_rrlp_random_ID_Set,
8621
15
      { "random-ID-Set", "rrlp.random_ID_Set_element",
8622
15
        FT_NONE, BASE_NONE, NULL, 0,
8623
15
        NULL, HFILL }},
8624
15
    { &hf_rrlp_mpm_Timer,
8625
15
      { "mpm-Timer", "rrlp.mpm_Timer",
8626
15
        FT_UINT32, BASE_DEC, NULL, 0,
8627
15
        "INTEGER_0_7", HFILL }},
8628
15
    { &hf_rrlp_serving_cell,
8629
15
      { "serving-cell", "rrlp.serving_cell",
8630
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
8631
15
        "BOOLEAN", HFILL }},
8632
15
    { &hf_rrlp_co_sited_cells,
8633
15
      { "co-sited-cells", "rrlp.co_sited_cells_element",
8634
15
        FT_NONE, BASE_NONE, NULL, 0,
8635
15
        NULL, HFILL }},
8636
15
    { &hf_rrlp_cell_Set1,
8637
15
      { "cell-Set1", "rrlp.cell_Set1_element",
8638
15
        FT_NONE, BASE_NONE, NULL, 0,
8639
15
        "Cell_Set", HFILL }},
8640
15
    { &hf_rrlp_cell_Set2,
8641
15
      { "cell-Set2", "rrlp.cell_Set2_element",
8642
15
        FT_NONE, BASE_NONE, NULL, 0,
8643
15
        "Cell_Set", HFILL }},
8644
15
    { &hf_rrlp_cell_Set3,
8645
15
      { "cell-Set3", "rrlp.cell_Set3_element",
8646
15
        FT_NONE, BASE_NONE, NULL, 0,
8647
15
        "Cell_Set", HFILL }},
8648
15
    { &hf_rrlp_cell_Set4,
8649
15
      { "cell-Set4", "rrlp.cell_Set4_element",
8650
15
        FT_NONE, BASE_NONE, NULL, 0,
8651
15
        "Cell_Set", HFILL }},
8652
15
    { &hf_rrlp_cell_Set5,
8653
15
      { "cell-Set5", "rrlp.cell_Set5_element",
8654
15
        FT_NONE, BASE_NONE, NULL, 0,
8655
15
        "Cell_Set", HFILL }},
8656
15
    { &hf_rrlp_cell_Set6,
8657
15
      { "cell-Set6", "rrlp.cell_Set6_element",
8658
15
        FT_NONE, BASE_NONE, NULL, 0,
8659
15
        "Cell_Set", HFILL }},
8660
15
    { &hf_rrlp_cell_Set7,
8661
15
      { "cell-Set7", "rrlp.cell_Set7_element",
8662
15
        FT_NONE, BASE_NONE, NULL, 0,
8663
15
        "Cell_Set", HFILL }},
8664
15
    { &hf_rrlp_cell_Set8,
8665
15
      { "cell-Set8", "rrlp.cell_Set8_element",
8666
15
        FT_NONE, BASE_NONE, NULL, 0,
8667
15
        "Cell_Set", HFILL }},
8668
15
    { &hf_rrlp_mta_security,
8669
15
      { "mta-security", "rrlp.mta_security",
8670
15
        FT_UINT32, BASE_DEC, VALS(rrlp_MTA_Security_vals), 0,
8671
15
        NULL, HFILL }},
8672
15
    { &hf_rrlp_targetNumOTDMeasurements,
8673
15
      { "targetNumOTDMeasurements", "rrlp.targetNumOTDMeasurements",
8674
15
        FT_INT32, BASE_DEC, NULL, 0,
8675
15
        "INTEGER", HFILL }},
8676
15
    { &hf_rrlp_requiredDLSyncAccuracy,
8677
15
      { "requiredDLSyncAccuracy", "rrlp.requiredDLSyncAccuracy",
8678
15
        FT_INT32, BASE_DEC, NULL, 0,
8679
15
        "INTEGER", HFILL }},
8680
15
    { &hf_rrlp_neighbourCellSets,
8681
15
      { "neighbourCellSets", "rrlp.neighbourCellSets_element",
8682
15
        FT_NONE, BASE_NONE, NULL, 0,
8683
15
        "CellSets", HFILL }},
8684
15
    { &hf_rrlp_servingCellSet,
8685
15
      { "servingCellSet", "rrlp.servingCellSet_element",
8686
15
        FT_NONE, BASE_NONE, NULL, 0,
8687
15
        "CellSet", HFILL }},
8688
15
    { &hf_rrlp_servingCellDLAccuracy,
8689
15
      { "servingCellDLAccuracy", "rrlp.servingCellDLAccuracy",
8690
15
        FT_UINT32, BASE_DEC, NULL, 0,
8691
15
        "INTEGER_1_16", HFILL }},
8692
15
    { &hf_rrlp_oTDMeasurementResults,
8693
15
      { "oTDMeasurementResults", "rrlp.oTDMeasurementResults_element",
8694
15
        FT_NONE, BASE_NONE, NULL, 0,
8695
15
        NULL, HFILL }},
8696
15
    { &hf_rrlp_rXLEVMeasurementResults,
8697
15
      { "rXLEVMeasurementResults", "rrlp.rXLEVMeasurementResults_element",
8698
15
        FT_NONE, BASE_NONE, NULL, 0,
8699
15
        NULL, HFILL }},
8700
15
    { &hf_rrlp_methodType,
8701
15
      { "methodType", "rrlp.methodType",
8702
15
        FT_UINT32, BASE_DEC, VALS(rrlp_MethodType_vals), 0,
8703
15
        NULL, HFILL }},
8704
15
    { &hf_rrlp_positionMethod,
8705
15
      { "positionMethod", "rrlp.positionMethod",
8706
15
        FT_UINT32, BASE_DEC, VALS(rrlp_PositionMethod_vals), 0,
8707
15
        NULL, HFILL }},
8708
15
    { &hf_rrlp_measureResponseTime,
8709
15
      { "measureResponseTime", "rrlp.measureResponseTime",
8710
15
        FT_UINT32, BASE_DEC, NULL, 0,
8711
15
        NULL, HFILL }},
8712
15
    { &hf_rrlp_useMultipleSets,
8713
15
      { "useMultipleSets", "rrlp.useMultipleSets",
8714
15
        FT_UINT32, BASE_DEC, VALS(rrlp_UseMultipleSets_vals), 0,
8715
15
        NULL, HFILL }},
8716
15
    { &hf_rrlp_environmentCharacter,
8717
15
      { "environmentCharacter", "rrlp.environmentCharacter",
8718
15
        FT_UINT32, BASE_DEC, VALS(rrlp_EnvironmentCharacter_vals), 0,
8719
15
        NULL, HFILL }},
8720
15
    { &hf_rrlp_msAssisted,
8721
15
      { "msAssisted", "rrlp.msAssisted_element",
8722
15
        FT_NONE, BASE_NONE, NULL, 0,
8723
15
        "AccuracyOpt", HFILL }},
8724
15
    { &hf_rrlp_msBased,
8725
15
      { "msBased", "rrlp.msBased",
8726
15
        FT_UINT32, BASE_DEC, NULL, 0,
8727
15
        "Accuracy", HFILL }},
8728
15
    { &hf_rrlp_msBasedPref,
8729
15
      { "msBasedPref", "rrlp.msBasedPref",
8730
15
        FT_UINT32, BASE_DEC, NULL, 0,
8731
15
        "Accuracy", HFILL }},
8732
15
    { &hf_rrlp_msAssistedPref,
8733
15
      { "msAssistedPref", "rrlp.msAssistedPref",
8734
15
        FT_UINT32, BASE_DEC, NULL, 0,
8735
15
        "Accuracy", HFILL }},
8736
15
    { &hf_rrlp_accuracy,
8737
15
      { "accuracy", "rrlp.accuracy",
8738
15
        FT_UINT32, BASE_DEC, NULL, 0,
8739
15
        NULL, HFILL }},
8740
15
    { &hf_rrlp_bcchCarrier,
8741
15
      { "bcchCarrier", "rrlp.bcchCarrier",
8742
15
        FT_UINT32, BASE_DEC, NULL, 0,
8743
15
        NULL, HFILL }},
8744
15
    { &hf_rrlp_bsic,
8745
15
      { "bsic", "rrlp.bsic",
8746
15
        FT_UINT32, BASE_DEC, NULL, 0,
8747
15
        NULL, HFILL }},
8748
15
    { &hf_rrlp_timeSlotScheme,
8749
15
      { "timeSlotScheme", "rrlp.timeSlotScheme",
8750
15
        FT_UINT32, BASE_DEC, VALS(rrlp_TimeSlotScheme_vals), 0,
8751
15
        NULL, HFILL }},
8752
15
    { &hf_rrlp_btsPosition,
8753
15
      { "btsPosition", "rrlp.btsPosition",
8754
15
        FT_BYTES, BASE_NONE, NULL, 0,
8755
15
        NULL, HFILL }},
8756
15
    { &hf_rrlp_msrAssistList,
8757
15
      { "msrAssistList", "rrlp.msrAssistList",
8758
15
        FT_UINT32, BASE_DEC, NULL, 0,
8759
15
        "SeqOfMsrAssistBTS", HFILL }},
8760
15
    { &hf_rrlp_SeqOfMsrAssistBTS_item,
8761
15
      { "MsrAssistBTS", "rrlp.MsrAssistBTS_element",
8762
15
        FT_NONE, BASE_NONE, NULL, 0,
8763
15
        NULL, HFILL }},
8764
15
    { &hf_rrlp_multiFrameOffset,
8765
15
      { "multiFrameOffset", "rrlp.multiFrameOffset",
8766
15
        FT_UINT32, BASE_DEC, NULL, 0,
8767
15
        NULL, HFILL }},
8768
15
    { &hf_rrlp_roughRTD,
8769
15
      { "roughRTD", "rrlp.roughRTD",
8770
15
        FT_UINT32, BASE_DEC, NULL, 0,
8771
15
        NULL, HFILL }},
8772
15
    { &hf_rrlp_calcAssistanceBTS,
8773
15
      { "calcAssistanceBTS", "rrlp.calcAssistanceBTS_element",
8774
15
        FT_NONE, BASE_NONE, NULL, 0,
8775
15
        NULL, HFILL }},
8776
15
    { &hf_rrlp_systemInfoAssistList,
8777
15
      { "systemInfoAssistList", "rrlp.systemInfoAssistList",
8778
15
        FT_UINT32, BASE_DEC, NULL, 0,
8779
15
        "SeqOfSystemInfoAssistBTS", HFILL }},
8780
15
    { &hf_rrlp_SeqOfSystemInfoAssistBTS_item,
8781
15
      { "SystemInfoAssistBTS", "rrlp.SystemInfoAssistBTS",
8782
15
        FT_UINT32, BASE_DEC, VALS(rrlp_SystemInfoAssistBTS_vals), 0,
8783
15
        NULL, HFILL }},
8784
15
    { &hf_rrlp_notPresent,
8785
15
      { "notPresent", "rrlp.notPresent_element",
8786
15
        FT_NONE, BASE_NONE, NULL, 0,
8787
15
        NULL, HFILL }},
8788
15
    { &hf_rrlp_present,
8789
15
      { "present", "rrlp.present_element",
8790
15
        FT_NONE, BASE_NONE, NULL, 0,
8791
15
        "AssistBTSData", HFILL }},
8792
15
    { &hf_rrlp_fineRTD,
8793
15
      { "fineRTD", "rrlp.fineRTD",
8794
15
        FT_UINT32, BASE_DEC, NULL, 0,
8795
15
        NULL, HFILL }},
8796
15
    { &hf_rrlp_referenceWGS84,
8797
15
      { "referenceWGS84", "rrlp.referenceWGS84_element",
8798
15
        FT_NONE, BASE_NONE, NULL, 0,
8799
15
        NULL, HFILL }},
8800
15
    { &hf_rrlp_relativeNorth,
8801
15
      { "relativeNorth", "rrlp.relativeNorth",
8802
15
        FT_INT32, BASE_DEC, NULL, 0,
8803
15
        "RelDistance", HFILL }},
8804
15
    { &hf_rrlp_relativeEast,
8805
15
      { "relativeEast", "rrlp.relativeEast",
8806
15
        FT_INT32, BASE_DEC, NULL, 0,
8807
15
        "RelDistance", HFILL }},
8808
15
    { &hf_rrlp_relativeAlt,
8809
15
      { "relativeAlt", "rrlp.relativeAlt",
8810
15
        FT_INT32, BASE_DEC, NULL, 0,
8811
15
        NULL, HFILL }},
8812
15
    { &hf_rrlp_nbrOfSets,
8813
15
      { "nbrOfSets", "rrlp.nbrOfSets",
8814
15
        FT_UINT32, BASE_DEC, NULL, 0,
8815
15
        "INTEGER_2_3", HFILL }},
8816
15
    { &hf_rrlp_nbrOfReferenceBTSs,
8817
15
      { "nbrOfReferenceBTSs", "rrlp.nbrOfReferenceBTSs",
8818
15
        FT_UINT32, BASE_DEC, NULL, 0,
8819
15
        "INTEGER_1_3", HFILL }},
8820
15
    { &hf_rrlp_referenceRelation,
8821
15
      { "referenceRelation", "rrlp.referenceRelation",
8822
15
        FT_UINT32, BASE_DEC, VALS(rrlp_ReferenceRelation_vals), 0,
8823
15
        NULL, HFILL }},
8824
15
    { &hf_rrlp_refBTSList,
8825
15
      { "refBTSList", "rrlp.refBTSList",
8826
15
        FT_UINT32, BASE_DEC, NULL, 0,
8827
15
        "SeqOfReferenceIdentityType", HFILL }},
8828
15
    { &hf_rrlp_SeqOfReferenceIdentityType_item,
8829
15
      { "ReferenceIdentityType", "rrlp.ReferenceIdentityType",
8830
15
        FT_UINT32, BASE_DEC, VALS(rrlp_ReferenceIdentityType_vals), 0,
8831
15
        NULL, HFILL }},
8832
15
    { &hf_rrlp_bsicAndCarrier,
8833
15
      { "bsicAndCarrier", "rrlp.bsicAndCarrier_element",
8834
15
        FT_NONE, BASE_NONE, NULL, 0,
8835
15
        NULL, HFILL }},
8836
15
    { &hf_rrlp_ci,
8837
15
      { "ci", "rrlp.ci",
8838
15
        FT_UINT32, BASE_DEC, NULL, 0,
8839
15
        "CellID", HFILL }},
8840
15
    { &hf_rrlp_requestIndex,
8841
15
      { "requestIndex", "rrlp.requestIndex",
8842
15
        FT_UINT32, BASE_DEC, NULL, 0,
8843
15
        NULL, HFILL }},
8844
15
    { &hf_rrlp_systemInfoIndex,
8845
15
      { "systemInfoIndex", "rrlp.systemInfoIndex",
8846
15
        FT_UINT32, BASE_DEC, NULL, 0,
8847
15
        NULL, HFILL }},
8848
15
    { &hf_rrlp_ciAndLAC,
8849
15
      { "ciAndLAC", "rrlp.ciAndLAC_element",
8850
15
        FT_NONE, BASE_NONE, NULL, 0,
8851
15
        "CellIDAndLAC", HFILL }},
8852
15
    { &hf_rrlp_carrier,
8853
15
      { "carrier", "rrlp.carrier",
8854
15
        FT_UINT32, BASE_DEC, NULL, 0,
8855
15
        "BCCHCarrier", HFILL }},
8856
15
    { &hf_rrlp_referenceLAC,
8857
15
      { "referenceLAC", "rrlp.referenceLAC",
8858
15
        FT_UINT32, BASE_DEC, NULL, 0,
8859
15
        "LAC", HFILL }},
8860
15
    { &hf_rrlp_referenceCI,
8861
15
      { "referenceCI", "rrlp.referenceCI",
8862
15
        FT_UINT32, BASE_DEC, NULL, 0,
8863
15
        "CellID", HFILL }},
8864
15
    { &hf_rrlp_otdMsrFirstSets,
8865
15
      { "otdMsrFirstSets", "rrlp.otdMsrFirstSets_element",
8866
15
        FT_NONE, BASE_NONE, NULL, 0,
8867
15
        "OTD_MsrElementFirst", HFILL }},
8868
15
    { &hf_rrlp_otdMsrRestSets,
8869
15
      { "otdMsrRestSets", "rrlp.otdMsrRestSets",
8870
15
        FT_UINT32, BASE_DEC, NULL, 0,
8871
15
        "SeqOfOTD_MsrElementRest", HFILL }},
8872
15
    { &hf_rrlp_SeqOfOTD_MsrElementRest_item,
8873
15
      { "OTD-MsrElementRest", "rrlp.OTD_MsrElementRest_element",
8874
15
        FT_NONE, BASE_NONE, NULL, 0,
8875
15
        NULL, HFILL }},
8876
15
    { &hf_rrlp_refFrameNumber,
8877
15
      { "refFrameNumber", "rrlp.refFrameNumber",
8878
15
        FT_UINT32, BASE_DEC, NULL, 0,
8879
15
        "INTEGER_0_42431", HFILL }},
8880
15
    { &hf_rrlp_referenceTimeSlot,
8881
15
      { "referenceTimeSlot", "rrlp.referenceTimeSlot",
8882
15
        FT_UINT32, BASE_DEC, NULL, 0,
8883
15
        "ModuloTimeSlot", HFILL }},
8884
15
    { &hf_rrlp_toaMeasurementsOfRef,
8885
15
      { "toaMeasurementsOfRef", "rrlp.toaMeasurementsOfRef_element",
8886
15
        FT_NONE, BASE_NONE, NULL, 0,
8887
15
        "TOA_MeasurementsOfRef", HFILL }},
8888
15
    { &hf_rrlp_stdResolution,
8889
15
      { "stdResolution", "rrlp.stdResolution",
8890
15
        FT_UINT32, BASE_DEC, NULL, 0,
8891
15
        NULL, HFILL }},
8892
15
    { &hf_rrlp_taCorrection,
8893
15
      { "taCorrection", "rrlp.taCorrection",
8894
15
        FT_UINT32, BASE_DEC, NULL, 0,
8895
15
        "INTEGER_0_960", HFILL }},
8896
15
    { &hf_rrlp_otd_FirstSetMsrs,
8897
15
      { "otd-FirstSetMsrs", "rrlp.otd_FirstSetMsrs",
8898
15
        FT_UINT32, BASE_DEC, NULL, 0,
8899
15
        "SeqOfOTD_FirstSetMsrs", HFILL }},
8900
15
    { &hf_rrlp_SeqOfOTD_FirstSetMsrs_item,
8901
15
      { "OTD-FirstSetMsrs", "rrlp.OTD_FirstSetMsrs_element",
8902
15
        FT_NONE, BASE_NONE, NULL, 0,
8903
15
        NULL, HFILL }},
8904
15
    { &hf_rrlp_otd_MsrsOfOtherSets,
8905
15
      { "otd-MsrsOfOtherSets", "rrlp.otd_MsrsOfOtherSets",
8906
15
        FT_UINT32, BASE_DEC, NULL, 0,
8907
15
        "SeqOfOTD_MsrsOfOtherSets", HFILL }},
8908
15
    { &hf_rrlp_SeqOfOTD_MsrsOfOtherSets_item,
8909
15
      { "OTD-MsrsOfOtherSets", "rrlp.OTD_MsrsOfOtherSets",
8910
15
        FT_UINT32, BASE_DEC, VALS(rrlp_OTD_MsrsOfOtherSets_vals), 0,
8911
15
        NULL, HFILL }},
8912
15
    { &hf_rrlp_refQuality,
8913
15
      { "refQuality", "rrlp.refQuality",
8914
15
        FT_UINT32, BASE_DEC, NULL, 0,
8915
15
        NULL, HFILL }},
8916
15
    { &hf_rrlp_numOfMeasurements,
8917
15
      { "numOfMeasurements", "rrlp.numOfMeasurements",
8918
15
        FT_UINT32, BASE_DEC, NULL, 0,
8919
15
        NULL, HFILL }},
8920
15
    { &hf_rrlp_identityNotPresent,
8921
15
      { "identityNotPresent", "rrlp.identityNotPresent_element",
8922
15
        FT_NONE, BASE_NONE, NULL, 0,
8923
15
        "OTD_Measurement", HFILL }},
8924
15
    { &hf_rrlp_identityPresent,
8925
15
      { "identityPresent", "rrlp.identityPresent_element",
8926
15
        FT_NONE, BASE_NONE, NULL, 0,
8927
15
        "OTD_MeasurementWithID", HFILL }},
8928
15
    { &hf_rrlp_nborTimeSlot,
8929
15
      { "nborTimeSlot", "rrlp.nborTimeSlot",
8930
15
        FT_UINT32, BASE_DEC, NULL, 0,
8931
15
        "ModuloTimeSlot", HFILL }},
8932
15
    { &hf_rrlp_eotdQuality,
8933
15
      { "eotdQuality", "rrlp.eotdQuality_element",
8934
15
        FT_NONE, BASE_NONE, NULL, 0,
8935
15
        NULL, HFILL }},
8936
15
    { &hf_rrlp_otdValue,
8937
15
      { "otdValue", "rrlp.otdValue",
8938
15
        FT_UINT32, BASE_DEC, NULL, 0,
8939
15
        NULL, HFILL }},
8940
15
    { &hf_rrlp_neighborIdentity,
8941
15
      { "neighborIdentity", "rrlp.neighborIdentity",
8942
15
        FT_UINT32, BASE_DEC, VALS(rrlp_NeighborIdentity_vals), 0,
8943
15
        NULL, HFILL }},
8944
15
    { &hf_rrlp_nbrOfMeasurements,
8945
15
      { "nbrOfMeasurements", "rrlp.nbrOfMeasurements",
8946
15
        FT_UINT32, BASE_DEC, NULL, 0,
8947
15
        "INTEGER_0_7", HFILL }},
8948
15
    { &hf_rrlp_stdOfEOTD,
8949
15
      { "stdOfEOTD", "rrlp.stdOfEOTD",
8950
15
        FT_UINT32, BASE_DEC, NULL, 0,
8951
15
        "INTEGER_0_31", HFILL }},
8952
15
    { &hf_rrlp_multiFrameCarrier,
8953
15
      { "multiFrameCarrier", "rrlp.multiFrameCarrier_element",
8954
15
        FT_NONE, BASE_NONE, NULL, 0,
8955
15
        NULL, HFILL }},
8956
15
    { &hf_rrlp_refFrame,
8957
15
      { "refFrame", "rrlp.refFrame",
8958
15
        FT_UINT32, BASE_DEC, NULL, 0,
8959
15
        "INTEGER_0_65535", HFILL }},
8960
15
    { &hf_rrlp_gpsTOW,
8961
15
      { "gpsTOW", "rrlp.gpsTOW",
8962
15
        FT_UINT32, BASE_DEC, NULL, 0,
8963
15
        "INTEGER_0_14399999", HFILL }},
8964
15
    { &hf_rrlp_fixType,
8965
15
      { "fixType", "rrlp.fixType",
8966
15
        FT_UINT32, BASE_DEC, VALS(rrlp_FixType_vals), 0,
8967
15
        NULL, HFILL }},
8968
15
    { &hf_rrlp_posEstimate,
8969
15
      { "posEstimate", "rrlp.posEstimate",
8970
15
        FT_BYTES, BASE_NONE, NULL, 0,
8971
15
        "Ext_GeographicalInformation", HFILL }},
8972
15
    { &hf_rrlp_gpsMsrSetList,
8973
15
      { "gpsMsrSetList", "rrlp.gpsMsrSetList",
8974
15
        FT_UINT32, BASE_DEC, NULL, 0,
8975
15
        "SeqOfGPS_MsrSetElement", HFILL }},
8976
15
    { &hf_rrlp_SeqOfGPS_MsrSetElement_item,
8977
15
      { "GPS-MsrSetElement", "rrlp.GPS_MsrSetElement_element",
8978
15
        FT_NONE, BASE_NONE, NULL, 0,
8979
15
        NULL, HFILL }},
8980
15
    { &hf_rrlp_gpsTOW_01,
8981
15
      { "gpsTOW", "rrlp.gpsTOW",
8982
15
        FT_UINT32, BASE_DEC, NULL, 0,
8983
15
        "GPSTOW24b", HFILL }},
8984
15
    { &hf_rrlp_gps_msrList,
8985
15
      { "gps-msrList", "rrlp.gps_msrList",
8986
15
        FT_UINT32, BASE_DEC, NULL, 0,
8987
15
        "SeqOfGPS_MsrElement", HFILL }},
8988
15
    { &hf_rrlp_SeqOfGPS_MsrElement_item,
8989
15
      { "GPS-MsrElement", "rrlp.GPS_MsrElement_element",
8990
15
        FT_NONE, BASE_NONE, NULL, 0,
8991
15
        NULL, HFILL }},
8992
15
    { &hf_rrlp_satelliteID,
8993
15
      { "satelliteID", "rrlp.satelliteID",
8994
15
        FT_UINT32, BASE_DEC, NULL, 0,
8995
15
        NULL, HFILL }},
8996
15
    { &hf_rrlp_cNo,
8997
15
      { "cNo", "rrlp.cNo",
8998
15
        FT_UINT32, BASE_DEC, NULL, 0,
8999
15
        "INTEGER_0_63", HFILL }},
9000
15
    { &hf_rrlp_doppler,
9001
15
      { "doppler", "rrlp.doppler",
9002
15
        FT_INT32, BASE_DEC, NULL, 0,
9003
15
        "INTEGER_M32768_32767", HFILL }},
9004
15
    { &hf_rrlp_wholeChips,
9005
15
      { "wholeChips", "rrlp.wholeChips",
9006
15
        FT_UINT32, BASE_DEC, NULL, 0,
9007
15
        "INTEGER_0_1022", HFILL }},
9008
15
    { &hf_rrlp_fracChips,
9009
15
      { "fracChips", "rrlp.fracChips",
9010
15
        FT_UINT32, BASE_DEC, NULL, 0,
9011
15
        "INTEGER_0_1024", HFILL }},
9012
15
    { &hf_rrlp_mpathIndic,
9013
15
      { "mpathIndic", "rrlp.mpathIndic",
9014
15
        FT_UINT32, BASE_DEC, VALS(rrlp_MpathIndic_vals), 0,
9015
15
        NULL, HFILL }},
9016
15
    { &hf_rrlp_pseuRangeRMSErr,
9017
15
      { "pseuRangeRMSErr", "rrlp.pseuRangeRMSErr",
9018
15
        FT_UINT32, BASE_DEC, NULL, 0,
9019
15
        "INTEGER_0_63", HFILL }},
9020
15
    { &hf_rrlp_locErrorReason,
9021
15
      { "locErrorReason", "rrlp.locErrorReason",
9022
15
        FT_UINT32, BASE_DEC, VALS(rrlp_LocErrorReason_vals), 0,
9023
15
        NULL, HFILL }},
9024
15
    { &hf_rrlp_additionalAssistanceData,
9025
15
      { "additionalAssistanceData", "rrlp.additionalAssistanceData_element",
9026
15
        FT_NONE, BASE_NONE, NULL, 0,
9027
15
        NULL, HFILL }},
9028
15
    { &hf_rrlp_gpsAssistanceData,
9029
15
      { "gpsAssistanceData", "rrlp.gpsAssistanceData",
9030
15
        FT_BYTES, BASE_NONE, NULL, 0,
9031
15
        NULL, HFILL }},
9032
15
    { &hf_rrlp_ganssAssistanceData,
9033
15
      { "ganssAssistanceData", "rrlp.ganssAssistanceData",
9034
15
        FT_BYTES, BASE_NONE, NULL, 0,
9035
15
        NULL, HFILL }},
9036
15
    { &hf_rrlp_controlHeader,
9037
15
      { "controlHeader", "rrlp.controlHeader_element",
9038
15
        FT_NONE, BASE_NONE, NULL, 0,
9039
15
        NULL, HFILL }},
9040
15
    { &hf_rrlp_referenceTime,
9041
15
      { "referenceTime", "rrlp.referenceTime_element",
9042
15
        FT_NONE, BASE_NONE, NULL, 0,
9043
15
        NULL, HFILL }},
9044
15
    { &hf_rrlp_refLocation,
9045
15
      { "refLocation", "rrlp.refLocation_element",
9046
15
        FT_NONE, BASE_NONE, NULL, 0,
9047
15
        NULL, HFILL }},
9048
15
    { &hf_rrlp_dgpsCorrections,
9049
15
      { "dgpsCorrections", "rrlp.dgpsCorrections_element",
9050
15
        FT_NONE, BASE_NONE, NULL, 0,
9051
15
        NULL, HFILL }},
9052
15
    { &hf_rrlp_navigationModel,
9053
15
      { "navigationModel", "rrlp.navigationModel_element",
9054
15
        FT_NONE, BASE_NONE, NULL, 0,
9055
15
        NULL, HFILL }},
9056
15
    { &hf_rrlp_ionosphericModel,
9057
15
      { "ionosphericModel", "rrlp.ionosphericModel_element",
9058
15
        FT_NONE, BASE_NONE, NULL, 0,
9059
15
        NULL, HFILL }},
9060
15
    { &hf_rrlp_utcModel,
9061
15
      { "utcModel", "rrlp.utcModel_element",
9062
15
        FT_NONE, BASE_NONE, NULL, 0,
9063
15
        NULL, HFILL }},
9064
15
    { &hf_rrlp_almanac,
9065
15
      { "almanac", "rrlp.almanac_element",
9066
15
        FT_NONE, BASE_NONE, NULL, 0,
9067
15
        NULL, HFILL }},
9068
15
    { &hf_rrlp_acquisAssist,
9069
15
      { "acquisAssist", "rrlp.acquisAssist_element",
9070
15
        FT_NONE, BASE_NONE, NULL, 0,
9071
15
        NULL, HFILL }},
9072
15
    { &hf_rrlp_realTimeIntegrity,
9073
15
      { "realTimeIntegrity", "rrlp.realTimeIntegrity",
9074
15
        FT_UINT32, BASE_DEC, NULL, 0,
9075
15
        "SeqOf_BadSatelliteSet", HFILL }},
9076
15
    { &hf_rrlp_gpsTime,
9077
15
      { "gpsTime", "rrlp.gpsTime_element",
9078
15
        FT_NONE, BASE_NONE, NULL, 0,
9079
15
        NULL, HFILL }},
9080
15
    { &hf_rrlp_gsmTime,
9081
15
      { "gsmTime", "rrlp.gsmTime_element",
9082
15
        FT_NONE, BASE_NONE, NULL, 0,
9083
15
        NULL, HFILL }},
9084
15
    { &hf_rrlp_gpsTowAssist,
9085
15
      { "gpsTowAssist", "rrlp.gpsTowAssist",
9086
15
        FT_UINT32, BASE_DEC, NULL, 0,
9087
15
        NULL, HFILL }},
9088
15
    { &hf_rrlp_gpsTOW23b,
9089
15
      { "gpsTOW23b", "rrlp.gpsTOW23b",
9090
15
        FT_UINT32, BASE_DEC, NULL, 0,
9091
15
        NULL, HFILL }},
9092
15
    { &hf_rrlp_gpsWeek,
9093
15
      { "gpsWeek", "rrlp.gpsWeek",
9094
15
        FT_UINT32, BASE_DEC, NULL, 0,
9095
15
        NULL, HFILL }},
9096
15
    { &hf_rrlp_GPSTOWAssist_item,
9097
15
      { "GPSTOWAssistElement", "rrlp.GPSTOWAssistElement_element",
9098
15
        FT_NONE, BASE_NONE, NULL, 0,
9099
15
        NULL, HFILL }},
9100
15
    { &hf_rrlp_tlmWord,
9101
15
      { "tlmWord", "rrlp.tlmWord",
9102
15
        FT_UINT32, BASE_DEC, NULL, 0,
9103
15
        NULL, HFILL }},
9104
15
    { &hf_rrlp_antiSpoof,
9105
15
      { "antiSpoof", "rrlp.antiSpoof",
9106
15
        FT_UINT32, BASE_DEC, NULL, 0,
9107
15
        "AntiSpoofFlag", HFILL }},
9108
15
    { &hf_rrlp_alert,
9109
15
      { "alert", "rrlp.alert",
9110
15
        FT_UINT32, BASE_DEC, NULL, 0,
9111
15
        "AlertFlag", HFILL }},
9112
15
    { &hf_rrlp_tlmRsvdBits,
9113
15
      { "tlmRsvdBits", "rrlp.tlmRsvdBits",
9114
15
        FT_UINT32, BASE_DEC, NULL, 0,
9115
15
        "TLMReservedBits", HFILL }},
9116
15
    { &hf_rrlp_frameNumber,
9117
15
      { "frameNumber", "rrlp.frameNumber",
9118
15
        FT_UINT32, BASE_DEC, NULL, 0,
9119
15
        NULL, HFILL }},
9120
15
    { &hf_rrlp_timeSlot,
9121
15
      { "timeSlot", "rrlp.timeSlot",
9122
15
        FT_UINT32, BASE_DEC, NULL, 0,
9123
15
        NULL, HFILL }},
9124
15
    { &hf_rrlp_bitNumber,
9125
15
      { "bitNumber", "rrlp.bitNumber",
9126
15
        FT_UINT32, BASE_DEC, NULL, 0,
9127
15
        NULL, HFILL }},
9128
15
    { &hf_rrlp_threeDLocation,
9129
15
      { "threeDLocation", "rrlp.threeDLocation",
9130
15
        FT_BYTES, BASE_NONE, NULL, 0,
9131
15
        "Ext_GeographicalInformation", HFILL }},
9132
15
    { &hf_rrlp_gpsTOW_02,
9133
15
      { "gpsTOW", "rrlp.gpsTOW",
9134
15
        FT_UINT32, BASE_DEC, NULL, 0,
9135
15
        "INTEGER_0_604799", HFILL }},
9136
15
    { &hf_rrlp_status,
9137
15
      { "status", "rrlp.status",
9138
15
        FT_UINT32, BASE_DEC, NULL, 0,
9139
15
        "INTEGER_0_7", HFILL }},
9140
15
    { &hf_rrlp_satList,
9141
15
      { "satList", "rrlp.satList",
9142
15
        FT_UINT32, BASE_DEC, NULL, 0,
9143
15
        "SeqOfSatElement", HFILL }},
9144
15
    { &hf_rrlp_SeqOfSatElement_item,
9145
15
      { "SatElement", "rrlp.SatElement_element",
9146
15
        FT_NONE, BASE_NONE, NULL, 0,
9147
15
        NULL, HFILL }},
9148
15
    { &hf_rrlp_iode,
9149
15
      { "iode", "rrlp.iode",
9150
15
        FT_UINT32, BASE_DEC, NULL, 0,
9151
15
        "INTEGER_0_239", HFILL }},
9152
15
    { &hf_rrlp_udre,
9153
15
      { "udre", "rrlp.udre",
9154
15
        FT_UINT32, BASE_DEC, NULL, 0,
9155
15
        "INTEGER_0_3", HFILL }},
9156
15
    { &hf_rrlp_pseudoRangeCor,
9157
15
      { "pseudoRangeCor", "rrlp.pseudoRangeCor",
9158
15
        FT_INT32, BASE_DEC, NULL, 0,
9159
15
        "INTEGER_M2047_2047", HFILL }},
9160
15
    { &hf_rrlp_rangeRateCor,
9161
15
      { "rangeRateCor", "rrlp.rangeRateCor",
9162
15
        FT_INT32, BASE_DEC, NULL, 0,
9163
15
        "INTEGER_M127_127", HFILL }},
9164
15
    { &hf_rrlp_deltaPseudoRangeCor2,
9165
15
      { "deltaPseudoRangeCor2", "rrlp.deltaPseudoRangeCor2",
9166
15
        FT_INT32, BASE_DEC, NULL, 0,
9167
15
        "INTEGER_M127_127", HFILL }},
9168
15
    { &hf_rrlp_deltaRangeRateCor2,
9169
15
      { "deltaRangeRateCor2", "rrlp.deltaRangeRateCor2",
9170
15
        FT_INT32, BASE_DEC, NULL, 0,
9171
15
        "INTEGER_M7_7", HFILL }},
9172
15
    { &hf_rrlp_deltaPseudoRangeCor3,
9173
15
      { "deltaPseudoRangeCor3", "rrlp.deltaPseudoRangeCor3",
9174
15
        FT_INT32, BASE_DEC, NULL, 0,
9175
15
        "INTEGER_M127_127", HFILL }},
9176
15
    { &hf_rrlp_deltaRangeRateCor3,
9177
15
      { "deltaRangeRateCor3", "rrlp.deltaRangeRateCor3",
9178
15
        FT_INT32, BASE_DEC, NULL, 0,
9179
15
        "INTEGER_M7_7", HFILL }},
9180
15
    { &hf_rrlp_navModelList,
9181
15
      { "navModelList", "rrlp.navModelList",
9182
15
        FT_UINT32, BASE_DEC, NULL, 0,
9183
15
        "SeqOfNavModelElement", HFILL }},
9184
15
    { &hf_rrlp_SeqOfNavModelElement_item,
9185
15
      { "NavModelElement", "rrlp.NavModelElement_element",
9186
15
        FT_NONE, BASE_NONE, NULL, 0,
9187
15
        NULL, HFILL }},
9188
15
    { &hf_rrlp_satStatus,
9189
15
      { "satStatus", "rrlp.satStatus",
9190
15
        FT_UINT32, BASE_DEC, VALS(rrlp_SatStatus_vals), 0,
9191
15
        NULL, HFILL }},
9192
15
    { &hf_rrlp_newSatelliteAndModelUC,
9193
15
      { "newSatelliteAndModelUC", "rrlp.newSatelliteAndModelUC_element",
9194
15
        FT_NONE, BASE_NONE, NULL, 0,
9195
15
        "UncompressedEphemeris", HFILL }},
9196
15
    { &hf_rrlp_oldSatelliteAndModel,
9197
15
      { "oldSatelliteAndModel", "rrlp.oldSatelliteAndModel_element",
9198
15
        FT_NONE, BASE_NONE, NULL, 0,
9199
15
        NULL, HFILL }},
9200
15
    { &hf_rrlp_newNaviModelUC,
9201
15
      { "newNaviModelUC", "rrlp.newNaviModelUC_element",
9202
15
        FT_NONE, BASE_NONE, NULL, 0,
9203
15
        "UncompressedEphemeris", HFILL }},
9204
15
    { &hf_rrlp_ephemCodeOnL2,
9205
15
      { "ephemCodeOnL2", "rrlp.ephemCodeOnL2",
9206
15
        FT_UINT32, BASE_DEC, NULL, 0,
9207
15
        "INTEGER_0_3", HFILL }},
9208
15
    { &hf_rrlp_ephemURA,
9209
15
      { "ephemURA", "rrlp.ephemURA",
9210
15
        FT_UINT32, BASE_DEC, NULL, 0,
9211
15
        "INTEGER_0_15", HFILL }},
9212
15
    { &hf_rrlp_ephemSVhealth,
9213
15
      { "ephemSVhealth", "rrlp.ephemSVhealth",
9214
15
        FT_UINT32, BASE_DEC, NULL, 0,
9215
15
        "INTEGER_0_63", HFILL }},
9216
15
    { &hf_rrlp_ephemIODC,
9217
15
      { "ephemIODC", "rrlp.ephemIODC",
9218
15
        FT_UINT32, BASE_DEC, NULL, 0,
9219
15
        "INTEGER_0_1023", HFILL }},
9220
15
    { &hf_rrlp_ephemL2Pflag,
9221
15
      { "ephemL2Pflag", "rrlp.ephemL2Pflag",
9222
15
        FT_UINT32, BASE_DEC, NULL, 0,
9223
15
        "INTEGER_0_1", HFILL }},
9224
15
    { &hf_rrlp_ephemSF1Rsvd,
9225
15
      { "ephemSF1Rsvd", "rrlp.ephemSF1Rsvd_element",
9226
15
        FT_NONE, BASE_NONE, NULL, 0,
9227
15
        "EphemerisSubframe1Reserved", HFILL }},
9228
15
    { &hf_rrlp_ephemTgd,
9229
15
      { "ephemTgd", "rrlp.ephemTgd",
9230
15
        FT_INT32, BASE_DEC, NULL, 0,
9231
15
        "INTEGER_M128_127", HFILL }},
9232
15
    { &hf_rrlp_ephemToc,
9233
15
      { "ephemToc", "rrlp.ephemToc",
9234
15
        FT_UINT32, BASE_DEC, NULL, 0,
9235
15
        "INTEGER_0_37799", HFILL }},
9236
15
    { &hf_rrlp_ephemAF2,
9237
15
      { "ephemAF2", "rrlp.ephemAF2",
9238
15
        FT_INT32, BASE_DEC, NULL, 0,
9239
15
        "INTEGER_M128_127", HFILL }},
9240
15
    { &hf_rrlp_ephemAF1,
9241
15
      { "ephemAF1", "rrlp.ephemAF1",
9242
15
        FT_INT32, BASE_DEC, NULL, 0,
9243
15
        "INTEGER_M32768_32767", HFILL }},
9244
15
    { &hf_rrlp_ephemAF0,
9245
15
      { "ephemAF0", "rrlp.ephemAF0",
9246
15
        FT_INT32, BASE_DEC, NULL, 0,
9247
15
        "INTEGER_M2097152_2097151", HFILL }},
9248
15
    { &hf_rrlp_ephemCrs,
9249
15
      { "ephemCrs", "rrlp.ephemCrs",
9250
15
        FT_INT32, BASE_DEC, NULL, 0,
9251
15
        "INTEGER_M32768_32767", HFILL }},
9252
15
    { &hf_rrlp_ephemDeltaN,
9253
15
      { "ephemDeltaN", "rrlp.ephemDeltaN",
9254
15
        FT_INT32, BASE_DEC, NULL, 0,
9255
15
        "INTEGER_M32768_32767", HFILL }},
9256
15
    { &hf_rrlp_ephemM0,
9257
15
      { "ephemM0", "rrlp.ephemM0",
9258
15
        FT_INT32, BASE_DEC, NULL, 0,
9259
15
        "INTEGER_M2147483648_2147483647", HFILL }},
9260
15
    { &hf_rrlp_ephemCuc,
9261
15
      { "ephemCuc", "rrlp.ephemCuc",
9262
15
        FT_INT32, BASE_DEC, NULL, 0,
9263
15
        "INTEGER_M32768_32767", HFILL }},
9264
15
    { &hf_rrlp_ephemE,
9265
15
      { "ephemE", "rrlp.ephemE",
9266
15
        FT_UINT32, BASE_DEC, NULL, 0,
9267
15
        "INTEGER_0_4294967295", HFILL }},
9268
15
    { &hf_rrlp_ephemCus,
9269
15
      { "ephemCus", "rrlp.ephemCus",
9270
15
        FT_INT32, BASE_DEC, NULL, 0,
9271
15
        "INTEGER_M32768_32767", HFILL }},
9272
15
    { &hf_rrlp_ephemAPowerHalf,
9273
15
      { "ephemAPowerHalf", "rrlp.ephemAPowerHalf",
9274
15
        FT_UINT32, BASE_DEC, NULL, 0,
9275
15
        "INTEGER_0_4294967295", HFILL }},
9276
15
    { &hf_rrlp_ephemToe,
9277
15
      { "ephemToe", "rrlp.ephemToe",
9278
15
        FT_UINT32, BASE_DEC, NULL, 0,
9279
15
        "INTEGER_0_37799", HFILL }},
9280
15
    { &hf_rrlp_ephemFitFlag,
9281
15
      { "ephemFitFlag", "rrlp.ephemFitFlag",
9282
15
        FT_UINT32, BASE_DEC, NULL, 0,
9283
15
        "INTEGER_0_1", HFILL }},
9284
15
    { &hf_rrlp_ephemAODA,
9285
15
      { "ephemAODA", "rrlp.ephemAODA",
9286
15
        FT_UINT32, BASE_DEC, NULL, 0,
9287
15
        "INTEGER_0_31", HFILL }},
9288
15
    { &hf_rrlp_ephemCic,
9289
15
      { "ephemCic", "rrlp.ephemCic",
9290
15
        FT_INT32, BASE_DEC, NULL, 0,
9291
15
        "INTEGER_M32768_32767", HFILL }},
9292
15
    { &hf_rrlp_ephemOmegaA0,
9293
15
      { "ephemOmegaA0", "rrlp.ephemOmegaA0",
9294
15
        FT_INT32, BASE_DEC, NULL, 0,
9295
15
        "INTEGER_M2147483648_2147483647", HFILL }},
9296
15
    { &hf_rrlp_ephemCis,
9297
15
      { "ephemCis", "rrlp.ephemCis",
9298
15
        FT_INT32, BASE_DEC, NULL, 0,
9299
15
        "INTEGER_M32768_32767", HFILL }},
9300
15
    { &hf_rrlp_ephemI0,
9301
15
      { "ephemI0", "rrlp.ephemI0",
9302
15
        FT_INT32, BASE_DEC, NULL, 0,
9303
15
        "INTEGER_M2147483648_2147483647", HFILL }},
9304
15
    { &hf_rrlp_ephemCrc,
9305
15
      { "ephemCrc", "rrlp.ephemCrc",
9306
15
        FT_INT32, BASE_DEC, NULL, 0,
9307
15
        "INTEGER_M32768_32767", HFILL }},
9308
15
    { &hf_rrlp_ephemW,
9309
15
      { "ephemW", "rrlp.ephemW",
9310
15
        FT_INT32, BASE_DEC, NULL, 0,
9311
15
        "INTEGER_M2147483648_2147483647", HFILL }},
9312
15
    { &hf_rrlp_ephemOmegaADot,
9313
15
      { "ephemOmegaADot", "rrlp.ephemOmegaADot",
9314
15
        FT_INT32, BASE_DEC, NULL, 0,
9315
15
        "INTEGER_M8388608_8388607", HFILL }},
9316
15
    { &hf_rrlp_ephemIDot,
9317
15
      { "ephemIDot", "rrlp.ephemIDot",
9318
15
        FT_INT32, BASE_DEC, NULL, 0,
9319
15
        "INTEGER_M8192_8191", HFILL }},
9320
15
    { &hf_rrlp_reserved1,
9321
15
      { "reserved1", "rrlp.reserved1",
9322
15
        FT_UINT32, BASE_DEC, NULL, 0,
9323
15
        "INTEGER_0_8388607", HFILL }},
9324
15
    { &hf_rrlp_reserved2,
9325
15
      { "reserved2", "rrlp.reserved2",
9326
15
        FT_UINT32, BASE_DEC, NULL, 0,
9327
15
        "INTEGER_0_16777215", HFILL }},
9328
15
    { &hf_rrlp_reserved3,
9329
15
      { "reserved3", "rrlp.reserved3",
9330
15
        FT_UINT32, BASE_DEC, NULL, 0,
9331
15
        "INTEGER_0_16777215", HFILL }},
9332
15
    { &hf_rrlp_reserved4,
9333
15
      { "reserved4", "rrlp.reserved4",
9334
15
        FT_UINT32, BASE_DEC, NULL, 0,
9335
15
        "INTEGER_0_65535", HFILL }},
9336
15
    { &hf_rrlp_alfa0,
9337
15
      { "alfa0", "rrlp.alfa0",
9338
15
        FT_INT32, BASE_DEC, NULL, 0,
9339
15
        "INTEGER_M128_127", HFILL }},
9340
15
    { &hf_rrlp_alfa1,
9341
15
      { "alfa1", "rrlp.alfa1",
9342
15
        FT_INT32, BASE_DEC, NULL, 0,
9343
15
        "INTEGER_M128_127", HFILL }},
9344
15
    { &hf_rrlp_alfa2,
9345
15
      { "alfa2", "rrlp.alfa2",
9346
15
        FT_INT32, BASE_DEC, NULL, 0,
9347
15
        "INTEGER_M128_127", HFILL }},
9348
15
    { &hf_rrlp_alfa3,
9349
15
      { "alfa3", "rrlp.alfa3",
9350
15
        FT_INT32, BASE_DEC, NULL, 0,
9351
15
        "INTEGER_M128_127", HFILL }},
9352
15
    { &hf_rrlp_beta0,
9353
15
      { "beta0", "rrlp.beta0",
9354
15
        FT_INT32, BASE_DEC, NULL, 0,
9355
15
        "INTEGER_M128_127", HFILL }},
9356
15
    { &hf_rrlp_beta1,
9357
15
      { "beta1", "rrlp.beta1",
9358
15
        FT_INT32, BASE_DEC, NULL, 0,
9359
15
        "INTEGER_M128_127", HFILL }},
9360
15
    { &hf_rrlp_beta2,
9361
15
      { "beta2", "rrlp.beta2",
9362
15
        FT_INT32, BASE_DEC, NULL, 0,
9363
15
        "INTEGER_M128_127", HFILL }},
9364
15
    { &hf_rrlp_beta3,
9365
15
      { "beta3", "rrlp.beta3",
9366
15
        FT_INT32, BASE_DEC, NULL, 0,
9367
15
        "INTEGER_M128_127", HFILL }},
9368
15
    { &hf_rrlp_utcA1,
9369
15
      { "utcA1", "rrlp.utcA1",
9370
15
        FT_INT32, BASE_DEC, NULL, 0,
9371
15
        "INTEGER_M8388608_8388607", HFILL }},
9372
15
    { &hf_rrlp_utcA0,
9373
15
      { "utcA0", "rrlp.utcA0",
9374
15
        FT_INT32, BASE_DEC, NULL, 0,
9375
15
        "INTEGER_M2147483648_2147483647", HFILL }},
9376
15
    { &hf_rrlp_utcTot,
9377
15
      { "utcTot", "rrlp.utcTot",
9378
15
        FT_UINT32, BASE_DEC, NULL, 0,
9379
15
        "INTEGER_0_255", HFILL }},
9380
15
    { &hf_rrlp_utcWNt,
9381
15
      { "utcWNt", "rrlp.utcWNt",
9382
15
        FT_UINT32, BASE_DEC, NULL, 0,
9383
15
        "INTEGER_0_255", HFILL }},
9384
15
    { &hf_rrlp_utcDeltaTls,
9385
15
      { "utcDeltaTls", "rrlp.utcDeltaTls",
9386
15
        FT_INT32, BASE_DEC, NULL, 0,
9387
15
        "INTEGER_M128_127", HFILL }},
9388
15
    { &hf_rrlp_utcWNlsf,
9389
15
      { "utcWNlsf", "rrlp.utcWNlsf",
9390
15
        FT_UINT32, BASE_DEC, NULL, 0,
9391
15
        "INTEGER_0_255", HFILL }},
9392
15
    { &hf_rrlp_utcDN,
9393
15
      { "utcDN", "rrlp.utcDN",
9394
15
        FT_INT32, BASE_DEC, NULL, 0,
9395
15
        "INTEGER_M128_127", HFILL }},
9396
15
    { &hf_rrlp_utcDeltaTlsf,
9397
15
      { "utcDeltaTlsf", "rrlp.utcDeltaTlsf",
9398
15
        FT_INT32, BASE_DEC, NULL, 0,
9399
15
        "INTEGER_M128_127", HFILL }},
9400
15
    { &hf_rrlp_alamanacWNa,
9401
15
      { "alamanacWNa", "rrlp.alamanacWNa",
9402
15
        FT_UINT32, BASE_DEC, NULL, 0,
9403
15
        "INTEGER_0_255", HFILL }},
9404
15
    { &hf_rrlp_almanacList,
9405
15
      { "almanacList", "rrlp.almanacList",
9406
15
        FT_UINT32, BASE_DEC, NULL, 0,
9407
15
        "SeqOfAlmanacElement", HFILL }},
9408
15
    { &hf_rrlp_SeqOfAlmanacElement_item,
9409
15
      { "AlmanacElement", "rrlp.AlmanacElement_element",
9410
15
        FT_NONE, BASE_NONE, NULL, 0,
9411
15
        NULL, HFILL }},
9412
15
    { &hf_rrlp_almanacE,
9413
15
      { "almanacE", "rrlp.almanacE",
9414
15
        FT_UINT32, BASE_DEC, NULL, 0,
9415
15
        "INTEGER_0_65535", HFILL }},
9416
15
    { &hf_rrlp_alamanacToa,
9417
15
      { "alamanacToa", "rrlp.alamanacToa",
9418
15
        FT_UINT32, BASE_DEC, NULL, 0,
9419
15
        "INTEGER_0_255", HFILL }},
9420
15
    { &hf_rrlp_almanacKsii,
9421
15
      { "almanacKsii", "rrlp.almanacKsii",
9422
15
        FT_INT32, BASE_DEC, NULL, 0,
9423
15
        "INTEGER_M32768_32767", HFILL }},
9424
15
    { &hf_rrlp_almanacOmegaDot,
9425
15
      { "almanacOmegaDot", "rrlp.almanacOmegaDot",
9426
15
        FT_INT32, BASE_DEC, NULL, 0,
9427
15
        "INTEGER_M32768_32767", HFILL }},
9428
15
    { &hf_rrlp_almanacSVhealth,
9429
15
      { "almanacSVhealth", "rrlp.almanacSVhealth",
9430
15
        FT_UINT32, BASE_DEC, NULL, 0,
9431
15
        "INTEGER_0_255", HFILL }},
9432
15
    { &hf_rrlp_almanacAPowerHalf,
9433
15
      { "almanacAPowerHalf", "rrlp.almanacAPowerHalf",
9434
15
        FT_UINT32, BASE_DEC, NULL, 0,
9435
15
        "INTEGER_0_16777215", HFILL }},
9436
15
    { &hf_rrlp_almanacOmega0,
9437
15
      { "almanacOmega0", "rrlp.almanacOmega0",
9438
15
        FT_INT32, BASE_DEC, NULL, 0,
9439
15
        "INTEGER_M8388608_8388607", HFILL }},
9440
15
    { &hf_rrlp_almanacW,
9441
15
      { "almanacW", "rrlp.almanacW",
9442
15
        FT_INT32, BASE_DEC, NULL, 0,
9443
15
        "INTEGER_M8388608_8388607", HFILL }},
9444
15
    { &hf_rrlp_almanacM0,
9445
15
      { "almanacM0", "rrlp.almanacM0",
9446
15
        FT_INT32, BASE_DEC, NULL, 0,
9447
15
        "INTEGER_M8388608_8388607", HFILL }},
9448
15
    { &hf_rrlp_almanacAF0,
9449
15
      { "almanacAF0", "rrlp.almanacAF0",
9450
15
        FT_INT32, BASE_DEC, NULL, 0,
9451
15
        "INTEGER_M1024_1023", HFILL }},
9452
15
    { &hf_rrlp_almanacAF1,
9453
15
      { "almanacAF1", "rrlp.almanacAF1",
9454
15
        FT_INT32, BASE_DEC, NULL, 0,
9455
15
        "INTEGER_M1024_1023", HFILL }},
9456
15
    { &hf_rrlp_timeRelation,
9457
15
      { "timeRelation", "rrlp.timeRelation_element",
9458
15
        FT_NONE, BASE_NONE, NULL, 0,
9459
15
        NULL, HFILL }},
9460
15
    { &hf_rrlp_acquisList,
9461
15
      { "acquisList", "rrlp.acquisList",
9462
15
        FT_UINT32, BASE_DEC, NULL, 0,
9463
15
        "SeqOfAcquisElement", HFILL }},
9464
15
    { &hf_rrlp_SeqOfAcquisElement_item,
9465
15
      { "AcquisElement", "rrlp.AcquisElement_element",
9466
15
        FT_NONE, BASE_NONE, NULL, 0,
9467
15
        NULL, HFILL }},
9468
15
    { &hf_rrlp_gpsTOW_03,
9469
15
      { "gpsTOW", "rrlp.gpsTOW",
9470
15
        FT_UINT32, BASE_DEC, NULL, 0,
9471
15
        "GPSTOW23b", HFILL }},
9472
15
    { &hf_rrlp_svid,
9473
15
      { "svid", "rrlp.svid",
9474
15
        FT_UINT32, BASE_DEC, NULL, 0,
9475
15
        "SatelliteID", HFILL }},
9476
15
    { &hf_rrlp_doppler0,
9477
15
      { "doppler0", "rrlp.doppler0",
9478
15
        FT_INT32, BASE_DEC, NULL, 0,
9479
15
        "INTEGER_M2048_2047", HFILL }},
9480
15
    { &hf_rrlp_addionalDoppler,
9481
15
      { "addionalDoppler", "rrlp.addionalDoppler_element",
9482
15
        FT_NONE, BASE_NONE, NULL, 0,
9483
15
        "AddionalDopplerFields", HFILL }},
9484
15
    { &hf_rrlp_codePhase,
9485
15
      { "codePhase", "rrlp.codePhase",
9486
15
        FT_UINT32, BASE_DEC, NULL, 0,
9487
15
        "INTEGER_0_1022", HFILL }},
9488
15
    { &hf_rrlp_intCodePhase,
9489
15
      { "intCodePhase", "rrlp.intCodePhase",
9490
15
        FT_UINT32, BASE_DEC, NULL, 0,
9491
15
        "INTEGER_0_19", HFILL }},
9492
15
    { &hf_rrlp_gpsBitNumber,
9493
15
      { "gpsBitNumber", "rrlp.gpsBitNumber",
9494
15
        FT_UINT32, BASE_DEC, NULL, 0,
9495
15
        "INTEGER_0_3", HFILL }},
9496
15
    { &hf_rrlp_codePhaseSearchWindow,
9497
15
      { "codePhaseSearchWindow", "rrlp.codePhaseSearchWindow",
9498
15
        FT_UINT32, BASE_DEC, NULL, 0,
9499
15
        "INTEGER_0_15", HFILL }},
9500
15
    { &hf_rrlp_addionalAngle,
9501
15
      { "addionalAngle", "rrlp.addionalAngle_element",
9502
15
        FT_NONE, BASE_NONE, NULL, 0,
9503
15
        "AddionalAngleFields", HFILL }},
9504
15
    { &hf_rrlp_doppler1,
9505
15
      { "doppler1", "rrlp.doppler1",
9506
15
        FT_UINT32, BASE_DEC, NULL, 0,
9507
15
        "INTEGER_0_63", HFILL }},
9508
15
    { &hf_rrlp_dopplerUncertainty,
9509
15
      { "dopplerUncertainty", "rrlp.dopplerUncertainty",
9510
15
        FT_UINT32, BASE_DEC, NULL, 0,
9511
15
        "INTEGER_0_7", HFILL }},
9512
15
    { &hf_rrlp_azimuth,
9513
15
      { "azimuth", "rrlp.azimuth",
9514
15
        FT_UINT32, BASE_DEC, NULL, 0,
9515
15
        "INTEGER_0_31", HFILL }},
9516
15
    { &hf_rrlp_elevation,
9517
15
      { "elevation", "rrlp.elevation",
9518
15
        FT_UINT32, BASE_DEC, NULL, 0,
9519
15
        "INTEGER_0_7", HFILL }},
9520
15
    { &hf_rrlp_SeqOf_BadSatelliteSet_item,
9521
15
      { "SatelliteID", "rrlp.SatelliteID",
9522
15
        FT_UINT32, BASE_DEC, NULL, 0,
9523
15
        NULL, HFILL }},
9524
15
    { &hf_rrlp_rel98_Ext_ExpOTD,
9525
15
      { "rel98-Ext-ExpOTD", "rrlp.rel98_Ext_ExpOTD_element",
9526
15
        FT_NONE, BASE_NONE, NULL, 0,
9527
15
        NULL, HFILL }},
9528
15
    { &hf_rrlp_gpsTimeAssistanceMeasurementRequest,
9529
15
      { "gpsTimeAssistanceMeasurementRequest", "rrlp.gpsTimeAssistanceMeasurementRequest_element",
9530
15
        FT_NONE, BASE_NONE, NULL, 0,
9531
15
        NULL, HFILL }},
9532
15
    { &hf_rrlp_gpsReferenceTimeUncertainty,
9533
15
      { "gpsReferenceTimeUncertainty", "rrlp.gpsReferenceTimeUncertainty",
9534
15
        FT_UINT32, BASE_DEC, NULL, 0,
9535
15
        NULL, HFILL }},
9536
15
    { &hf_rrlp_msrAssistData_R98_ExpOTD,
9537
15
      { "msrAssistData-R98-ExpOTD", "rrlp.msrAssistData_R98_ExpOTD_element",
9538
15
        FT_NONE, BASE_NONE, NULL, 0,
9539
15
        NULL, HFILL }},
9540
15
    { &hf_rrlp_systemInfoAssistData_R98_ExpOTD,
9541
15
      { "systemInfoAssistData-R98-ExpOTD", "rrlp.systemInfoAssistData_R98_ExpOTD_element",
9542
15
        FT_NONE, BASE_NONE, NULL, 0,
9543
15
        NULL, HFILL }},
9544
15
    { &hf_rrlp_msrAssistList_R98_ExpOTD,
9545
15
      { "msrAssistList-R98-ExpOTD", "rrlp.msrAssistList_R98_ExpOTD",
9546
15
        FT_UINT32, BASE_DEC, NULL, 0,
9547
15
        "SeqOfMsrAssistBTS_R98_ExpOTD", HFILL }},
9548
15
    { &hf_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD_item,
9549
15
      { "MsrAssistBTS-R98-ExpOTD", "rrlp.MsrAssistBTS_R98_ExpOTD_element",
9550
15
        FT_NONE, BASE_NONE, NULL, 0,
9551
15
        NULL, HFILL }},
9552
15
    { &hf_rrlp_expectedOTD,
9553
15
      { "expectedOTD", "rrlp.expectedOTD",
9554
15
        FT_UINT32, BASE_DEC, NULL, 0,
9555
15
        NULL, HFILL }},
9556
15
    { &hf_rrlp_expOTDUncertainty,
9557
15
      { "expOTDUncertainty", "rrlp.expOTDUncertainty",
9558
15
        FT_UINT32, BASE_DEC, NULL, 0,
9559
15
        NULL, HFILL }},
9560
15
    { &hf_rrlp_systemInfoAssistListR98_ExpOTD,
9561
15
      { "systemInfoAssistListR98-ExpOTD", "rrlp.systemInfoAssistListR98_ExpOTD",
9562
15
        FT_UINT32, BASE_DEC, NULL, 0,
9563
15
        "SeqOfSystemInfoAssistBTS_R98_ExpOTD", HFILL }},
9564
15
    { &hf_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD_item,
9565
15
      { "SystemInfoAssistBTS-R98-ExpOTD", "rrlp.SystemInfoAssistBTS_R98_ExpOTD",
9566
15
        FT_UINT32, BASE_DEC, VALS(rrlp_SystemInfoAssistBTS_R98_ExpOTD_vals), 0,
9567
15
        NULL, HFILL }},
9568
15
    { &hf_rrlp_present_01,
9569
15
      { "present", "rrlp.present_element",
9570
15
        FT_NONE, BASE_NONE, NULL, 0,
9571
15
        "AssistBTSData_R98_ExpOTD", HFILL }},
9572
15
    { &hf_rrlp_expOTDuncertainty,
9573
15
      { "expOTDuncertainty", "rrlp.expOTDuncertainty",
9574
15
        FT_UINT32, BASE_DEC, NULL, 0,
9575
15
        NULL, HFILL }},
9576
15
    { &hf_rrlp_referenceFrameMSB,
9577
15
      { "referenceFrameMSB", "rrlp.referenceFrameMSB",
9578
15
        FT_UINT32, BASE_DEC, NULL, 0,
9579
15
        "INTEGER_0_63", HFILL }},
9580
15
    { &hf_rrlp_gpsTowSubms,
9581
15
      { "gpsTowSubms", "rrlp.gpsTowSubms",
9582
15
        FT_UINT32, BASE_DEC, NULL, 0,
9583
15
        "INTEGER_0_9999", HFILL }},
9584
15
    { &hf_rrlp_deltaTow,
9585
15
      { "deltaTow", "rrlp.deltaTow",
9586
15
        FT_UINT32, BASE_DEC, NULL, 0,
9587
15
        "INTEGER_0_127", HFILL }},
9588
15
    { &hf_rrlp_rel_98_Ext_MeasureInfo,
9589
15
      { "rel-98-Ext-MeasureInfo", "rrlp.rel_98_Ext_MeasureInfo_element",
9590
15
        FT_NONE, BASE_NONE, NULL, 0,
9591
15
        "T_rel_98_Ext_MeasureInfo", HFILL }},
9592
15
    { &hf_rrlp_otd_MeasureInfo_R98_Ext,
9593
15
      { "otd-MeasureInfo-R98-Ext", "rrlp.otd_MeasureInfo_R98_Ext_element",
9594
15
        FT_NONE, BASE_NONE, NULL, 0,
9595
15
        NULL, HFILL }},
9596
15
    { &hf_rrlp_timeAssistanceMeasurements,
9597
15
      { "timeAssistanceMeasurements", "rrlp.timeAssistanceMeasurements_element",
9598
15
        FT_NONE, BASE_NONE, NULL, 0,
9599
15
        "GPSTimeAssistanceMeasurements", HFILL }},
9600
15
    { &hf_rrlp_otdMsrFirstSets_R98_Ext,
9601
15
      { "otdMsrFirstSets-R98-Ext", "rrlp.otdMsrFirstSets_R98_Ext_element",
9602
15
        FT_NONE, BASE_NONE, NULL, 0,
9603
15
        "OTD_MsrElementFirst_R98_Ext", HFILL }},
9604
15
    { &hf_rrlp_otd_FirstSetMsrs_R98_Ext,
9605
15
      { "otd-FirstSetMsrs-R98-Ext", "rrlp.otd_FirstSetMsrs_R98_Ext",
9606
15
        FT_UINT32, BASE_DEC, NULL, 0,
9607
15
        "SeqOfOTD_FirstSetMsrs_R98_Ext", HFILL }},
9608
15
    { &hf_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext_item,
9609
15
      { "OTD-FirstSetMsrs", "rrlp.OTD_FirstSetMsrs_element",
9610
15
        FT_NONE, BASE_NONE, NULL, 0,
9611
15
        NULL, HFILL }},
9612
15
    { &hf_rrlp_otd_MeasureInfo_5_Ext,
9613
15
      { "otd-MeasureInfo-5-Ext", "rrlp.otd_MeasureInfo_5_Ext",
9614
15
        FT_UINT32, BASE_DEC, NULL, 0,
9615
15
        NULL, HFILL }},
9616
15
    { &hf_rrlp_ulPseudoSegInd,
9617
15
      { "ulPseudoSegInd", "rrlp.ulPseudoSegInd",
9618
15
        FT_UINT32, BASE_DEC, VALS(rrlp_UlPseudoSegInd_vals), 0,
9619
15
        NULL, HFILL }},
9620
15
    { &hf_rrlp_smlc_code,
9621
15
      { "smlc-code", "rrlp.smlc_code",
9622
15
        FT_UINT32, BASE_DEC, NULL, 0,
9623
15
        "INTEGER_0_63", HFILL }},
9624
15
    { &hf_rrlp_transaction_ID,
9625
15
      { "transaction-ID", "rrlp.transaction_ID",
9626
15
        FT_UINT32, BASE_DEC, NULL, 0,
9627
15
        "INTEGER_0_262143", HFILL }},
9628
15
    { &hf_rrlp_velocityRequested,
9629
15
      { "velocityRequested", "rrlp.velocityRequested_element",
9630
15
        FT_NONE, BASE_NONE, NULL, 0,
9631
15
        NULL, HFILL }},
9632
15
    { &hf_rrlp_ganssPositionMethod,
9633
15
      { "ganssPositionMethod", "rrlp.ganssPositionMethod",
9634
15
        FT_BYTES, BASE_NONE, NULL, 0,
9635
15
        "GANSSPositioningMethod", HFILL }},
9636
15
    { &hf_rrlp_ganss_AssistData,
9637
15
      { "ganss-AssistData", "rrlp.ganss_AssistData_element",
9638
15
        FT_NONE, BASE_NONE, NULL, 0,
9639
15
        NULL, HFILL }},
9640
15
    { &hf_rrlp_ganssCarrierPhaseMeasurementRequest,
9641
15
      { "ganssCarrierPhaseMeasurementRequest", "rrlp.ganssCarrierPhaseMeasurementRequest_element",
9642
15
        FT_NONE, BASE_NONE, NULL, 0,
9643
15
        NULL, HFILL }},
9644
15
    { &hf_rrlp_ganssTODGSMTimeAssociationMeasurementRequest,
9645
15
      { "ganssTODGSMTimeAssociationMeasurementRequest", "rrlp.ganssTODGSMTimeAssociationMeasurementRequest_element",
9646
15
        FT_NONE, BASE_NONE, NULL, 0,
9647
15
        NULL, HFILL }},
9648
15
    { &hf_rrlp_requiredResponseTime,
9649
15
      { "requiredResponseTime", "rrlp.requiredResponseTime",
9650
15
        FT_UINT32, BASE_DEC, NULL, 0,
9651
15
        NULL, HFILL }},
9652
15
    { &hf_rrlp_add_GPS_AssistData,
9653
15
      { "add-GPS-AssistData", "rrlp.add_GPS_AssistData_element",
9654
15
        FT_NONE, BASE_NONE, NULL, 0,
9655
15
        NULL, HFILL }},
9656
15
    { &hf_rrlp_ganssMultiFreqMeasurementRequest,
9657
15
      { "ganssMultiFreqMeasurementRequest", "rrlp.ganssMultiFreqMeasurementRequest_element",
9658
15
        FT_NONE, BASE_NONE, NULL, 0,
9659
15
        NULL, HFILL }},
9660
15
    { &hf_rrlp_ganss_controlHeader,
9661
15
      { "ganss-controlHeader", "rrlp.ganss_controlHeader_element",
9662
15
        FT_NONE, BASE_NONE, NULL, 0,
9663
15
        NULL, HFILL }},
9664
15
    { &hf_rrlp_ganssCommonAssistData,
9665
15
      { "ganssCommonAssistData", "rrlp.ganssCommonAssistData_element",
9666
15
        FT_NONE, BASE_NONE, NULL, 0,
9667
15
        NULL, HFILL }},
9668
15
    { &hf_rrlp_ganssGenericAssistDataList,
9669
15
      { "ganssGenericAssistDataList", "rrlp.ganssGenericAssistDataList",
9670
15
        FT_UINT32, BASE_DEC, NULL, 0,
9671
15
        "SeqOfGANSSGenericAssistDataElement", HFILL }},
9672
15
    { &hf_rrlp_ganssReferenceTime,
9673
15
      { "ganssReferenceTime", "rrlp.ganssReferenceTime_element",
9674
15
        FT_NONE, BASE_NONE, NULL, 0,
9675
15
        NULL, HFILL }},
9676
15
    { &hf_rrlp_ganssRefLocation,
9677
15
      { "ganssRefLocation", "rrlp.ganssRefLocation_element",
9678
15
        FT_NONE, BASE_NONE, NULL, 0,
9679
15
        NULL, HFILL }},
9680
15
    { &hf_rrlp_ganssIonosphericModel,
9681
15
      { "ganssIonosphericModel", "rrlp.ganssIonosphericModel_element",
9682
15
        FT_NONE, BASE_NONE, NULL, 0,
9683
15
        NULL, HFILL }},
9684
15
    { &hf_rrlp_ganssAddIonosphericModel,
9685
15
      { "ganssAddIonosphericModel", "rrlp.ganssAddIonosphericModel_element",
9686
15
        FT_NONE, BASE_NONE, NULL, 0,
9687
15
        NULL, HFILL }},
9688
15
    { &hf_rrlp_ganssEarthOrientParam,
9689
15
      { "ganssEarthOrientParam", "rrlp.ganssEarthOrientParam_element",
9690
15
        FT_NONE, BASE_NONE, NULL, 0,
9691
15
        NULL, HFILL }},
9692
15
    { &hf_rrlp_ganssReferenceTime_R10_Ext,
9693
15
      { "ganssReferenceTime-R10-Ext", "rrlp.ganssReferenceTime_R10_Ext_element",
9694
15
        FT_NONE, BASE_NONE, NULL, 0,
9695
15
        NULL, HFILL }},
9696
15
    { &hf_rrlp_SeqOfGANSSGenericAssistDataElement_item,
9697
15
      { "GANSSGenericAssistDataElement", "rrlp.GANSSGenericAssistDataElement_element",
9698
15
        FT_NONE, BASE_NONE, NULL, 0,
9699
15
        NULL, HFILL }},
9700
15
    { &hf_rrlp_ganssID,
9701
15
      { "ganssID", "rrlp.ganssID",
9702
15
        FT_UINT32, BASE_DEC, NULL, 0,
9703
15
        "INTEGER_0_7", HFILL }},
9704
15
    { &hf_rrlp_ganssTimeModel,
9705
15
      { "ganssTimeModel", "rrlp.ganssTimeModel",
9706
15
        FT_UINT32, BASE_DEC, NULL, 0,
9707
15
        "SeqOfGANSSTimeModel", HFILL }},
9708
15
    { &hf_rrlp_ganssDiffCorrections,
9709
15
      { "ganssDiffCorrections", "rrlp.ganssDiffCorrections_element",
9710
15
        FT_NONE, BASE_NONE, NULL, 0,
9711
15
        NULL, HFILL }},
9712
15
    { &hf_rrlp_ganssNavigationModel,
9713
15
      { "ganssNavigationModel", "rrlp.ganssNavigationModel_element",
9714
15
        FT_NONE, BASE_NONE, NULL, 0,
9715
15
        "GANSSNavModel", HFILL }},
9716
15
    { &hf_rrlp_ganssRealTimeIntegrity,
9717
15
      { "ganssRealTimeIntegrity", "rrlp.ganssRealTimeIntegrity_element",
9718
15
        FT_NONE, BASE_NONE, NULL, 0,
9719
15
        NULL, HFILL }},
9720
15
    { &hf_rrlp_ganssDataBitAssist,
9721
15
      { "ganssDataBitAssist", "rrlp.ganssDataBitAssist_element",
9722
15
        FT_NONE, BASE_NONE, NULL, 0,
9723
15
        NULL, HFILL }},
9724
15
    { &hf_rrlp_ganssRefMeasurementAssist,
9725
15
      { "ganssRefMeasurementAssist", "rrlp.ganssRefMeasurementAssist_element",
9726
15
        FT_NONE, BASE_NONE, NULL, 0,
9727
15
        NULL, HFILL }},
9728
15
    { &hf_rrlp_ganssAlmanacModel,
9729
15
      { "ganssAlmanacModel", "rrlp.ganssAlmanacModel_element",
9730
15
        FT_NONE, BASE_NONE, NULL, 0,
9731
15
        NULL, HFILL }},
9732
15
    { &hf_rrlp_ganssUTCModel,
9733
15
      { "ganssUTCModel", "rrlp.ganssUTCModel_element",
9734
15
        FT_NONE, BASE_NONE, NULL, 0,
9735
15
        NULL, HFILL }},
9736
15
    { &hf_rrlp_ganssEphemerisExtension,
9737
15
      { "ganssEphemerisExtension", "rrlp.ganssEphemerisExtension_element",
9738
15
        FT_NONE, BASE_NONE, NULL, 0,
9739
15
        NULL, HFILL }},
9740
15
    { &hf_rrlp_ganssEphemerisExtCheck,
9741
15
      { "ganssEphemerisExtCheck", "rrlp.ganssEphemerisExtCheck_element",
9742
15
        FT_NONE, BASE_NONE, NULL, 0,
9743
15
        "GANSSEphemerisExtensionCheck", HFILL }},
9744
15
    { &hf_rrlp_sbasID_int,
9745
15
      { "sbasID", "rrlp.sbasID_int",
9746
15
        FT_UINT32, BASE_DEC, NULL, 0,
9747
15
        "INTEGER_0_7", HFILL }},
9748
15
    { &hf_rrlp_ganssAddUTCModel,
9749
15
      { "ganssAddUTCModel", "rrlp.ganssAddUTCModel",
9750
15
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAddUTCModel_vals), 0,
9751
15
        NULL, HFILL }},
9752
15
    { &hf_rrlp_ganssAuxiliaryInfo,
9753
15
      { "ganssAuxiliaryInfo", "rrlp.ganssAuxiliaryInfo",
9754
15
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAuxiliaryInformation_vals), 0,
9755
15
        "GANSSAuxiliaryInformation", HFILL }},
9756
15
    { &hf_rrlp_ganssDiffCorrectionsValidityPeriod,
9757
15
      { "ganssDiffCorrectionsValidityPeriod", "rrlp.ganssDiffCorrectionsValidityPeriod",
9758
15
        FT_UINT32, BASE_DEC, NULL, 0,
9759
15
        NULL, HFILL }},
9760
15
    { &hf_rrlp_ganssTimeModel_R10_Ext,
9761
15
      { "ganssTimeModel-R10-Ext", "rrlp.ganssTimeModel_R10_Ext",
9762
15
        FT_UINT32, BASE_DEC, NULL, 0,
9763
15
        "SeqOfGANSSTimeModel_R10_Ext", HFILL }},
9764
15
    { &hf_rrlp_ganssRefMeasurementAssist_R10_Ext,
9765
15
      { "ganssRefMeasurementAssist-R10-Ext", "rrlp.ganssRefMeasurementAssist_R10_Ext",
9766
15
        FT_UINT32, BASE_DEC, NULL, 0,
9767
15
        NULL, HFILL }},
9768
15
    { &hf_rrlp_ganssAlmanacModel_R10_Ext,
9769
15
      { "ganssAlmanacModel-R10-Ext", "rrlp.ganssAlmanacModel_R10_Ext_element",
9770
15
        FT_NONE, BASE_NONE, NULL, 0,
9771
15
        NULL, HFILL }},
9772
15
    { &hf_rrlp_ganssAlmanacModel_R12_Ext,
9773
15
      { "ganssAlmanacModel-R12-Ext", "rrlp.ganssAlmanacModel_R12_Ext_element",
9774
15
        FT_NONE, BASE_NONE, NULL, 0,
9775
15
        NULL, HFILL }},
9776
15
    { &hf_rrlp_ganssRefMeasurementAssist_R12_Ext,
9777
15
      { "ganssRefMeasurementAssist-R12-Ext", "rrlp.ganssRefMeasurementAssist_R12_Ext_element",
9778
15
        FT_NONE, BASE_NONE, NULL, 0,
9779
15
        NULL, HFILL }},
9780
15
    { &hf_rrlp_bdsDifferentialCorrections_r12,
9781
15
      { "bdsDifferentialCorrections-r12", "rrlp.bdsDifferentialCorrections_r12_element",
9782
15
        FT_NONE, BASE_NONE, NULL, 0,
9783
15
        "BDS_DiffCorrections_r12", HFILL }},
9784
15
    { &hf_rrlp_bdsGridModel_r12,
9785
15
      { "bdsGridModel-r12", "rrlp.bdsGridModel_r12_element",
9786
15
        FT_NONE, BASE_NONE, NULL, 0,
9787
15
        "BDS_GridModelParameter_r12", HFILL }},
9788
15
    { &hf_rrlp_ganssRefTimeInfo,
9789
15
      { "ganssRefTimeInfo", "rrlp.ganssRefTimeInfo_element",
9790
15
        FT_NONE, BASE_NONE, NULL, 0,
9791
15
        NULL, HFILL }},
9792
15
    { &hf_rrlp_ganssTOD_GSMTimeAssociation,
9793
15
      { "ganssTOD-GSMTimeAssociation", "rrlp.ganssTOD_GSMTimeAssociation_element",
9794
15
        FT_NONE, BASE_NONE, NULL, 0,
9795
15
        NULL, HFILL }},
9796
15
    { &hf_rrlp_ganssDay,
9797
15
      { "ganssDay", "rrlp.ganssDay",
9798
15
        FT_UINT32, BASE_DEC, NULL, 0,
9799
15
        "INTEGER_0_8191", HFILL }},
9800
15
    { &hf_rrlp_ganssTOD,
9801
15
      { "ganssTOD", "rrlp.ganssTOD",
9802
15
        FT_UINT32, BASE_DEC, NULL, 0,
9803
15
        NULL, HFILL }},
9804
15
    { &hf_rrlp_ganssTODUncertainty,
9805
15
      { "ganssTODUncertainty", "rrlp.ganssTODUncertainty",
9806
15
        FT_UINT32, BASE_DEC, NULL, 0,
9807
15
        NULL, HFILL }},
9808
15
    { &hf_rrlp_ganssTimeID,
9809
15
      { "ganssTimeID", "rrlp.ganssTimeID",
9810
15
        FT_UINT32, BASE_DEC, NULL, 0,
9811
15
        "INTEGER_0_7", HFILL }},
9812
15
    { &hf_rrlp_ganssDayCycleNumber,
9813
15
      { "ganssDayCycleNumber", "rrlp.ganssDayCycleNumber",
9814
15
        FT_UINT32, BASE_DEC, NULL, 0,
9815
15
        "INTEGER_0_7", HFILL }},
9816
15
    { &hf_rrlp_frameDrift,
9817
15
      { "frameDrift", "rrlp.frameDrift",
9818
15
        FT_INT32, BASE_DEC, NULL, 0,
9819
15
        NULL, HFILL }},
9820
15
    { &hf_rrlp_ganssIonoModel,
9821
15
      { "ganssIonoModel", "rrlp.ganssIonoModel_element",
9822
15
        FT_NONE, BASE_NONE, NULL, 0,
9823
15
        "GANSSIonosphereModel", HFILL }},
9824
15
    { &hf_rrlp_ganssIonoStormFlags,
9825
15
      { "ganssIonoStormFlags", "rrlp.ganssIonoStormFlags_element",
9826
15
        FT_NONE, BASE_NONE, NULL, 0,
9827
15
        NULL, HFILL }},
9828
15
    { &hf_rrlp_ai0,
9829
15
      { "ai0", "rrlp.ai0",
9830
15
        FT_UINT32, BASE_DEC, NULL, 0,
9831
15
        "INTEGER_0_2047", HFILL }},
9832
15
    { &hf_rrlp_ai1,
9833
15
      { "ai1", "rrlp.ai1",
9834
15
        FT_INT32, BASE_DEC, NULL, 0,
9835
15
        "INTEGER_M1024_1023", HFILL }},
9836
15
    { &hf_rrlp_ai2,
9837
15
      { "ai2", "rrlp.ai2",
9838
15
        FT_INT32, BASE_DEC, NULL, 0,
9839
15
        "INTEGER_M8192_8191", HFILL }},
9840
15
    { &hf_rrlp_ionoStormFlag1,
9841
15
      { "ionoStormFlag1", "rrlp.ionoStormFlag1",
9842
15
        FT_UINT32, BASE_DEC, NULL, 0,
9843
15
        "INTEGER_0_1", HFILL }},
9844
15
    { &hf_rrlp_ionoStormFlag2,
9845
15
      { "ionoStormFlag2", "rrlp.ionoStormFlag2",
9846
15
        FT_UINT32, BASE_DEC, NULL, 0,
9847
15
        "INTEGER_0_1", HFILL }},
9848
15
    { &hf_rrlp_ionoStormFlag3,
9849
15
      { "ionoStormFlag3", "rrlp.ionoStormFlag3",
9850
15
        FT_UINT32, BASE_DEC, NULL, 0,
9851
15
        "INTEGER_0_1", HFILL }},
9852
15
    { &hf_rrlp_ionoStormFlag4,
9853
15
      { "ionoStormFlag4", "rrlp.ionoStormFlag4",
9854
15
        FT_UINT32, BASE_DEC, NULL, 0,
9855
15
        "INTEGER_0_1", HFILL }},
9856
15
    { &hf_rrlp_ionoStormFlag5,
9857
15
      { "ionoStormFlag5", "rrlp.ionoStormFlag5",
9858
15
        FT_UINT32, BASE_DEC, NULL, 0,
9859
15
        "INTEGER_0_1", HFILL }},
9860
15
    { &hf_rrlp_dataID,
9861
15
      { "dataID", "rrlp.dataID",
9862
15
        FT_BYTES, BASE_NONE, NULL, 0,
9863
15
        "BIT_STRING_SIZE_2", HFILL }},
9864
15
    { &hf_rrlp_ionoModel,
9865
15
      { "ionoModel", "rrlp.ionoModel_element",
9866
15
        FT_NONE, BASE_NONE, NULL, 0,
9867
15
        "IonosphericModel", HFILL }},
9868
15
    { &hf_rrlp_teop,
9869
15
      { "teop", "rrlp.teop",
9870
15
        FT_UINT32, BASE_DEC, NULL, 0,
9871
15
        "INTEGER_0_65535", HFILL }},
9872
15
    { &hf_rrlp_pmX,
9873
15
      { "pmX", "rrlp.pmX",
9874
15
        FT_INT32, BASE_DEC, NULL, 0,
9875
15
        "INTEGER_M1048576_1048575", HFILL }},
9876
15
    { &hf_rrlp_pmXdot,
9877
15
      { "pmXdot", "rrlp.pmXdot",
9878
15
        FT_INT32, BASE_DEC, NULL, 0,
9879
15
        "INTEGER_M16384_16383", HFILL }},
9880
15
    { &hf_rrlp_pmY,
9881
15
      { "pmY", "rrlp.pmY",
9882
15
        FT_INT32, BASE_DEC, NULL, 0,
9883
15
        "INTEGER_M1048576_1048575", HFILL }},
9884
15
    { &hf_rrlp_pmYdot,
9885
15
      { "pmYdot", "rrlp.pmYdot",
9886
15
        FT_INT32, BASE_DEC, NULL, 0,
9887
15
        "INTEGER_M16384_16383", HFILL }},
9888
15
    { &hf_rrlp_deltaUT1,
9889
15
      { "deltaUT1", "rrlp.deltaUT1",
9890
15
        FT_INT32, BASE_DEC, NULL, 0,
9891
15
        "INTEGER_M1073741824_1073741823", HFILL }},
9892
15
    { &hf_rrlp_deltaUT1dot,
9893
15
      { "deltaUT1dot", "rrlp.deltaUT1dot",
9894
15
        FT_INT32, BASE_DEC, NULL, 0,
9895
15
        "INTEGER_M262144_262143", HFILL }},
9896
15
    { &hf_rrlp_SeqOfGANSSTimeModel_item,
9897
15
      { "GANSSTimeModelElement", "rrlp.GANSSTimeModelElement_element",
9898
15
        FT_NONE, BASE_NONE, NULL, 0,
9899
15
        NULL, HFILL }},
9900
15
    { &hf_rrlp_ganssTimeModelRefTime,
9901
15
      { "ganssTimeModelRefTime", "rrlp.ganssTimeModelRefTime",
9902
15
        FT_UINT32, BASE_DEC, NULL, 0,
9903
15
        "INTEGER_0_65535", HFILL }},
9904
15
    { &hf_rrlp_tA0,
9905
15
      { "tA0", "rrlp.tA0",
9906
15
        FT_INT32, BASE_DEC, NULL, 0,
9907
15
        NULL, HFILL }},
9908
15
    { &hf_rrlp_tA1,
9909
15
      { "tA1", "rrlp.tA1",
9910
15
        FT_INT32, BASE_DEC, NULL, 0,
9911
15
        NULL, HFILL }},
9912
15
    { &hf_rrlp_tA2,
9913
15
      { "tA2", "rrlp.tA2",
9914
15
        FT_INT32, BASE_DEC, NULL, 0,
9915
15
        NULL, HFILL }},
9916
15
    { &hf_rrlp_gnssTOID,
9917
15
      { "gnssTOID", "rrlp.gnssTOID",
9918
15
        FT_UINT32, BASE_DEC, NULL, 0,
9919
15
        "INTEGER_0_7", HFILL }},
9920
15
    { &hf_rrlp_weekNumber,
9921
15
      { "weekNumber", "rrlp.weekNumber",
9922
15
        FT_UINT32, BASE_DEC, NULL, 0,
9923
15
        "INTEGER_0_8191", HFILL }},
9924
15
    { &hf_rrlp_SeqOfGANSSTimeModel_R10_Ext_item,
9925
15
      { "GANSSTimeModelElement-R10-Ext", "rrlp.GANSSTimeModelElement_R10_Ext_element",
9926
15
        FT_NONE, BASE_NONE, NULL, 0,
9927
15
        NULL, HFILL }},
9928
15
    { &hf_rrlp_deltaT,
9929
15
      { "deltaT", "rrlp.deltaT",
9930
15
        FT_INT32, BASE_DEC, NULL, 0,
9931
15
        "INTEGER_M128_127", HFILL }},
9932
15
    { &hf_rrlp_dganssRefTime,
9933
15
      { "dganssRefTime", "rrlp.dganssRefTime",
9934
15
        FT_UINT32, BASE_DEC, NULL, 0,
9935
15
        "INTEGER_0_119", HFILL }},
9936
15
    { &hf_rrlp_sgnTypeList,
9937
15
      { "sgnTypeList", "rrlp.sgnTypeList",
9938
15
        FT_UINT32, BASE_DEC, NULL, 0,
9939
15
        "SeqOfSgnTypeElement", HFILL }},
9940
15
    { &hf_rrlp_SeqOfSgnTypeElement_item,
9941
15
      { "SgnTypeElement", "rrlp.SgnTypeElement_element",
9942
15
        FT_NONE, BASE_NONE, NULL, 0,
9943
15
        NULL, HFILL }},
9944
15
    { &hf_rrlp_ganssSignalID,
9945
15
      { "ganssSignalID", "rrlp.ganssSignalID",
9946
15
        FT_UINT32, BASE_DEC, NULL, 0,
9947
15
        NULL, HFILL }},
9948
15
    { &hf_rrlp_ganssStatusHealth,
9949
15
      { "ganssStatusHealth", "rrlp.ganssStatusHealth",
9950
15
        FT_UINT32, BASE_DEC, NULL, 0,
9951
15
        "INTEGER_0_7", HFILL }},
9952
15
    { &hf_rrlp_dganssSgnList,
9953
15
      { "dganssSgnList", "rrlp.dganssSgnList",
9954
15
        FT_UINT32, BASE_DEC, NULL, 0,
9955
15
        "SeqOfDGANSSSgnElement", HFILL }},
9956
15
    { &hf_rrlp_SeqOfDGANSSSgnElement_item,
9957
15
      { "DGANSSSgnElement", "rrlp.DGANSSSgnElement_element",
9958
15
        FT_NONE, BASE_NONE, NULL, 0,
9959
15
        NULL, HFILL }},
9960
15
    { &hf_rrlp_svID,
9961
15
      { "svID", "rrlp.svID",
9962
15
        FT_UINT32, BASE_DEC, NULL, 0,
9963
15
        NULL, HFILL }},
9964
15
    { &hf_rrlp_iod,
9965
15
      { "iod", "rrlp.iod",
9966
15
        FT_UINT32, BASE_DEC, NULL, 0,
9967
15
        "INTEGER_0_1023", HFILL }},
9968
15
    { &hf_rrlp_nonBroadcastIndFlag,
9969
15
      { "nonBroadcastIndFlag", "rrlp.nonBroadcastIndFlag",
9970
15
        FT_UINT32, BASE_DEC, NULL, 0,
9971
15
        "INTEGER_0_1", HFILL }},
9972
15
    { &hf_rrlp_ganssSatelliteList,
9973
15
      { "ganssSatelliteList", "rrlp.ganssSatelliteList",
9974
15
        FT_UINT32, BASE_DEC, NULL, 0,
9975
15
        "SeqOfGANSSSatelliteElement", HFILL }},
9976
15
    { &hf_rrlp_SeqOfGANSSSatelliteElement_item,
9977
15
      { "GANSSSatelliteElement", "rrlp.GANSSSatelliteElement_element",
9978
15
        FT_NONE, BASE_NONE, NULL, 0,
9979
15
        NULL, HFILL }},
9980
15
    { &hf_rrlp_svHealth,
9981
15
      { "svHealth", "rrlp.svHealth",
9982
15
        FT_BYTES, BASE_NONE, NULL, 0,
9983
15
        "BIT_STRING_SIZE_5", HFILL }},
9984
15
    { &hf_rrlp_ganssClockModel,
9985
15
      { "ganssClockModel", "rrlp.ganssClockModel",
9986
15
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSClockModel_vals), 0,
9987
15
        NULL, HFILL }},
9988
15
    { &hf_rrlp_ganssOrbitModel,
9989
15
      { "ganssOrbitModel", "rrlp.ganssOrbitModel",
9990
15
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSOrbitModel_vals), 0,
9991
15
        NULL, HFILL }},
9992
15
    { &hf_rrlp_svHealthMSB,
9993
15
      { "svHealthMSB", "rrlp.svHealthMSB",
9994
15
        FT_BYTES, BASE_NONE, NULL, 0,
9995
15
        "BIT_STRING_SIZE_1", HFILL }},
9996
15
    { &hf_rrlp_iodMSB,
9997
15
      { "iodMSB", "rrlp.iodMSB",
9998
15
        FT_UINT32, BASE_DEC, NULL, 0,
9999
15
        "INTEGER_0_1", HFILL }},
10000
15
    { &hf_rrlp_svHealthExt,
10001
15
      { "svHealthExt", "rrlp.svHealthExt",
10002
15
        FT_BYTES, BASE_NONE, NULL, 0,
10003
15
        "BIT_STRING_SIZE_4", HFILL }},
10004
15
    { &hf_rrlp_keplerianSet,
10005
15
      { "keplerianSet", "rrlp.keplerianSet_element",
10006
15
        FT_NONE, BASE_NONE, NULL, 0,
10007
15
        "NavModel_KeplerianSet", HFILL }},
10008
15
    { &hf_rrlp_navKeplerianSet,
10009
15
      { "navKeplerianSet", "rrlp.navKeplerianSet_element",
10010
15
        FT_NONE, BASE_NONE, NULL, 0,
10011
15
        "NavModel_NAVKeplerianSet", HFILL }},
10012
15
    { &hf_rrlp_cnavKeplerianSet,
10013
15
      { "cnavKeplerianSet", "rrlp.cnavKeplerianSet_element",
10014
15
        FT_NONE, BASE_NONE, NULL, 0,
10015
15
        "NavModel_CNAVKeplerianSet", HFILL }},
10016
15
    { &hf_rrlp_glonassECEF,
10017
15
      { "glonassECEF", "rrlp.glonassECEF_element",
10018
15
        FT_NONE, BASE_NONE, NULL, 0,
10019
15
        "NavModel_GLONASSecef", HFILL }},
10020
15
    { &hf_rrlp_sbasECEF,
10021
15
      { "sbasECEF", "rrlp.sbasECEF_element",
10022
15
        FT_NONE, BASE_NONE, NULL, 0,
10023
15
        "NavModel_SBASecef", HFILL }},
10024
15
    { &hf_rrlp_bdsKeplerianSet_r12,
10025
15
      { "bdsKeplerianSet-r12", "rrlp.bdsKeplerianSet_r12_element",
10026
15
        FT_NONE, BASE_NONE, NULL, 0,
10027
15
        "NavModel_BDSKeplerianSet_r12", HFILL }},
10028
15
    { &hf_rrlp_keplerToe,
10029
15
      { "keplerToe", "rrlp.keplerToe",
10030
15
        FT_UINT32, BASE_DEC, NULL, 0,
10031
15
        "INTEGER_0_16383", HFILL }},
10032
15
    { &hf_rrlp_keplerW,
10033
15
      { "keplerW", "rrlp.keplerW",
10034
15
        FT_INT32, BASE_DEC, NULL, 0,
10035
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10036
15
    { &hf_rrlp_keplerDeltaN,
10037
15
      { "keplerDeltaN", "rrlp.keplerDeltaN",
10038
15
        FT_INT32, BASE_DEC, NULL, 0,
10039
15
        "INTEGER_M32768_32767", HFILL }},
10040
15
    { &hf_rrlp_keplerM0,
10041
15
      { "keplerM0", "rrlp.keplerM0",
10042
15
        FT_INT32, BASE_DEC, NULL, 0,
10043
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10044
15
    { &hf_rrlp_keplerOmegaDot,
10045
15
      { "keplerOmegaDot", "rrlp.keplerOmegaDot",
10046
15
        FT_INT32, BASE_DEC, NULL, 0,
10047
15
        "INTEGER_M8388608_8388607", HFILL }},
10048
15
    { &hf_rrlp_keplerE,
10049
15
      { "keplerE", "rrlp.keplerE",
10050
15
        FT_UINT32, BASE_DEC, NULL, 0,
10051
15
        "INTEGER_0_4294967295", HFILL }},
10052
15
    { &hf_rrlp_keplerIDot,
10053
15
      { "keplerIDot", "rrlp.keplerIDot",
10054
15
        FT_INT32, BASE_DEC, NULL, 0,
10055
15
        "INTEGER_M8192_8191", HFILL }},
10056
15
    { &hf_rrlp_keplerAPowerHalf,
10057
15
      { "keplerAPowerHalf", "rrlp.keplerAPowerHalf",
10058
15
        FT_UINT32, BASE_DEC, NULL, 0,
10059
15
        "INTEGER_0_4294967295", HFILL }},
10060
15
    { &hf_rrlp_keplerI0,
10061
15
      { "keplerI0", "rrlp.keplerI0",
10062
15
        FT_INT32, BASE_DEC, NULL, 0,
10063
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10064
15
    { &hf_rrlp_keplerOmega0,
10065
15
      { "keplerOmega0", "rrlp.keplerOmega0",
10066
15
        FT_INT32, BASE_DEC, NULL, 0,
10067
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10068
15
    { &hf_rrlp_keplerCrs,
10069
15
      { "keplerCrs", "rrlp.keplerCrs",
10070
15
        FT_INT32, BASE_DEC, NULL, 0,
10071
15
        "INTEGER_M32768_32767", HFILL }},
10072
15
    { &hf_rrlp_keplerCis,
10073
15
      { "keplerCis", "rrlp.keplerCis",
10074
15
        FT_INT32, BASE_DEC, NULL, 0,
10075
15
        "INTEGER_M32768_32767", HFILL }},
10076
15
    { &hf_rrlp_keplerCus,
10077
15
      { "keplerCus", "rrlp.keplerCus",
10078
15
        FT_INT32, BASE_DEC, NULL, 0,
10079
15
        "INTEGER_M32768_32767", HFILL }},
10080
15
    { &hf_rrlp_keplerCrc,
10081
15
      { "keplerCrc", "rrlp.keplerCrc",
10082
15
        FT_INT32, BASE_DEC, NULL, 0,
10083
15
        "INTEGER_M32768_32767", HFILL }},
10084
15
    { &hf_rrlp_keplerCic,
10085
15
      { "keplerCic", "rrlp.keplerCic",
10086
15
        FT_INT32, BASE_DEC, NULL, 0,
10087
15
        "INTEGER_M32768_32767", HFILL }},
10088
15
    { &hf_rrlp_keplerCuc,
10089
15
      { "keplerCuc", "rrlp.keplerCuc",
10090
15
        FT_INT32, BASE_DEC, NULL, 0,
10091
15
        "INTEGER_M32768_32767", HFILL }},
10092
15
    { &hf_rrlp_navURA,
10093
15
      { "navURA", "rrlp.navURA",
10094
15
        FT_UINT32, BASE_DEC, NULL, 0,
10095
15
        "INTEGER_0_15", HFILL }},
10096
15
    { &hf_rrlp_navFitFlag,
10097
15
      { "navFitFlag", "rrlp.navFitFlag",
10098
15
        FT_UINT32, BASE_DEC, NULL, 0,
10099
15
        "INTEGER_0_1", HFILL }},
10100
15
    { &hf_rrlp_navToe,
10101
15
      { "navToe", "rrlp.navToe",
10102
15
        FT_UINT32, BASE_DEC, NULL, 0,
10103
15
        "INTEGER_0_37799", HFILL }},
10104
15
    { &hf_rrlp_navOmega,
10105
15
      { "navOmega", "rrlp.navOmega",
10106
15
        FT_INT32, BASE_DEC, NULL, 0,
10107
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10108
15
    { &hf_rrlp_navDeltaN,
10109
15
      { "navDeltaN", "rrlp.navDeltaN",
10110
15
        FT_INT32, BASE_DEC, NULL, 0,
10111
15
        "INTEGER_M32768_32767", HFILL }},
10112
15
    { &hf_rrlp_navM0,
10113
15
      { "navM0", "rrlp.navM0",
10114
15
        FT_INT32, BASE_DEC, NULL, 0,
10115
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10116
15
    { &hf_rrlp_navOmegaADot,
10117
15
      { "navOmegaADot", "rrlp.navOmegaADot",
10118
15
        FT_INT32, BASE_DEC, NULL, 0,
10119
15
        "INTEGER_M8388608_8388607", HFILL }},
10120
15
    { &hf_rrlp_navE,
10121
15
      { "navE", "rrlp.navE",
10122
15
        FT_UINT32, BASE_DEC, NULL, 0,
10123
15
        "INTEGER_0_4294967295", HFILL }},
10124
15
    { &hf_rrlp_navIDot,
10125
15
      { "navIDot", "rrlp.navIDot",
10126
15
        FT_INT32, BASE_DEC, NULL, 0,
10127
15
        "INTEGER_M8192_8191", HFILL }},
10128
15
    { &hf_rrlp_navAPowerHalf,
10129
15
      { "navAPowerHalf", "rrlp.navAPowerHalf",
10130
15
        FT_UINT32, BASE_DEC, NULL, 0,
10131
15
        "INTEGER_0_4294967295", HFILL }},
10132
15
    { &hf_rrlp_navI0,
10133
15
      { "navI0", "rrlp.navI0",
10134
15
        FT_INT32, BASE_DEC, NULL, 0,
10135
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10136
15
    { &hf_rrlp_navOmegaA0,
10137
15
      { "navOmegaA0", "rrlp.navOmegaA0",
10138
15
        FT_INT32, BASE_DEC, NULL, 0,
10139
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10140
15
    { &hf_rrlp_navCrs,
10141
15
      { "navCrs", "rrlp.navCrs",
10142
15
        FT_INT32, BASE_DEC, NULL, 0,
10143
15
        "INTEGER_M32768_32767", HFILL }},
10144
15
    { &hf_rrlp_navCis,
10145
15
      { "navCis", "rrlp.navCis",
10146
15
        FT_INT32, BASE_DEC, NULL, 0,
10147
15
        "INTEGER_M32768_32767", HFILL }},
10148
15
    { &hf_rrlp_navCus,
10149
15
      { "navCus", "rrlp.navCus",
10150
15
        FT_INT32, BASE_DEC, NULL, 0,
10151
15
        "INTEGER_M32768_32767", HFILL }},
10152
15
    { &hf_rrlp_navCrc,
10153
15
      { "navCrc", "rrlp.navCrc",
10154
15
        FT_INT32, BASE_DEC, NULL, 0,
10155
15
        "INTEGER_M32768_32767", HFILL }},
10156
15
    { &hf_rrlp_navCic,
10157
15
      { "navCic", "rrlp.navCic",
10158
15
        FT_INT32, BASE_DEC, NULL, 0,
10159
15
        "INTEGER_M32768_32767", HFILL }},
10160
15
    { &hf_rrlp_navCuc,
10161
15
      { "navCuc", "rrlp.navCuc",
10162
15
        FT_INT32, BASE_DEC, NULL, 0,
10163
15
        "INTEGER_M32768_32767", HFILL }},
10164
15
    { &hf_rrlp_cnavTop,
10165
15
      { "cnavTop", "rrlp.cnavTop",
10166
15
        FT_UINT32, BASE_DEC, NULL, 0,
10167
15
        "INTEGER_0_2015", HFILL }},
10168
15
    { &hf_rrlp_cnavURAindex,
10169
15
      { "cnavURAindex", "rrlp.cnavURAindex",
10170
15
        FT_INT32, BASE_DEC, NULL, 0,
10171
15
        "INTEGER_M16_15", HFILL }},
10172
15
    { &hf_rrlp_cnavDeltaA,
10173
15
      { "cnavDeltaA", "rrlp.cnavDeltaA",
10174
15
        FT_INT32, BASE_DEC, NULL, 0,
10175
15
        "INTEGER_M33554432_33554431", HFILL }},
10176
15
    { &hf_rrlp_cnavAdot,
10177
15
      { "cnavAdot", "rrlp.cnavAdot",
10178
15
        FT_INT32, BASE_DEC, NULL, 0,
10179
15
        "INTEGER_M16777216_16777215", HFILL }},
10180
15
    { &hf_rrlp_cnavDeltaNo,
10181
15
      { "cnavDeltaNo", "rrlp.cnavDeltaNo",
10182
15
        FT_INT32, BASE_DEC, NULL, 0,
10183
15
        "INTEGER_M65536_65535", HFILL }},
10184
15
    { &hf_rrlp_cnavDeltaNoDot,
10185
15
      { "cnavDeltaNoDot", "rrlp.cnavDeltaNoDot",
10186
15
        FT_INT32, BASE_DEC, NULL, 0,
10187
15
        "INTEGER_M4194304_4194303", HFILL }},
10188
15
    { &hf_rrlp_cnavMo,
10189
15
      { "cnavMo", "rrlp.cnavMo",
10190
15
        FT_INT64, BASE_DEC, NULL, 0,
10191
15
        "INTEGER_M4294967296_4294967295", HFILL }},
10192
15
    { &hf_rrlp_cnavE,
10193
15
      { "cnavE", "rrlp.cnavE",
10194
15
        FT_UINT64, BASE_DEC, NULL, 0,
10195
15
        "INTEGER_0_8589934591", HFILL }},
10196
15
    { &hf_rrlp_cnavOmega,
10197
15
      { "cnavOmega", "rrlp.cnavOmega",
10198
15
        FT_INT64, BASE_DEC, NULL, 0,
10199
15
        "INTEGER_M4294967296_4294967295", HFILL }},
10200
15
    { &hf_rrlp_cnavOMEGA0,
10201
15
      { "cnavOMEGA0", "rrlp.cnavOMEGA0",
10202
15
        FT_INT64, BASE_DEC, NULL, 0,
10203
15
        "INTEGER_M4294967296_4294967295", HFILL }},
10204
15
    { &hf_rrlp_cnavDeltaOmegaDot,
10205
15
      { "cnavDeltaOmegaDot", "rrlp.cnavDeltaOmegaDot",
10206
15
        FT_INT32, BASE_DEC, NULL, 0,
10207
15
        "INTEGER_M65536_65535", HFILL }},
10208
15
    { &hf_rrlp_cnavIo,
10209
15
      { "cnavIo", "rrlp.cnavIo",
10210
15
        FT_INT64, BASE_DEC, NULL, 0,
10211
15
        "INTEGER_M4294967296_4294967295", HFILL }},
10212
15
    { &hf_rrlp_cnavIoDot,
10213
15
      { "cnavIoDot", "rrlp.cnavIoDot",
10214
15
        FT_INT32, BASE_DEC, NULL, 0,
10215
15
        "INTEGER_M16384_16383", HFILL }},
10216
15
    { &hf_rrlp_cnavCis,
10217
15
      { "cnavCis", "rrlp.cnavCis",
10218
15
        FT_INT32, BASE_DEC, NULL, 0,
10219
15
        "INTEGER_M32768_32767", HFILL }},
10220
15
    { &hf_rrlp_cnavCic,
10221
15
      { "cnavCic", "rrlp.cnavCic",
10222
15
        FT_INT32, BASE_DEC, NULL, 0,
10223
15
        "INTEGER_M32768_32767", HFILL }},
10224
15
    { &hf_rrlp_cnavCrs,
10225
15
      { "cnavCrs", "rrlp.cnavCrs",
10226
15
        FT_INT32, BASE_DEC, NULL, 0,
10227
15
        "INTEGER_M8388608_8388607", HFILL }},
10228
15
    { &hf_rrlp_cnavCrc,
10229
15
      { "cnavCrc", "rrlp.cnavCrc",
10230
15
        FT_INT32, BASE_DEC, NULL, 0,
10231
15
        "INTEGER_M8388608_8388607", HFILL }},
10232
15
    { &hf_rrlp_cnavCus,
10233
15
      { "cnavCus", "rrlp.cnavCus",
10234
15
        FT_INT32, BASE_DEC, NULL, 0,
10235
15
        "INTEGER_M1048576_1048575", HFILL }},
10236
15
    { &hf_rrlp_cnavCuc,
10237
15
      { "cnavCuc", "rrlp.cnavCuc",
10238
15
        FT_INT32, BASE_DEC, NULL, 0,
10239
15
        "INTEGER_M1048576_1048575", HFILL }},
10240
15
    { &hf_rrlp_gloEn,
10241
15
      { "gloEn", "rrlp.gloEn",
10242
15
        FT_UINT32, BASE_DEC, NULL, 0,
10243
15
        "INTEGER_0_31", HFILL }},
10244
15
    { &hf_rrlp_gloP1,
10245
15
      { "gloP1", "rrlp.gloP1",
10246
15
        FT_BYTES, BASE_NONE, NULL, 0,
10247
15
        "BIT_STRING_SIZE_2", HFILL }},
10248
15
    { &hf_rrlp_gloP2,
10249
15
      { "gloP2", "rrlp.gloP2",
10250
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10251
15
        "BOOLEAN", HFILL }},
10252
15
    { &hf_rrlp_gloM,
10253
15
      { "gloM", "rrlp.gloM",
10254
15
        FT_UINT32, BASE_DEC, NULL, 0,
10255
15
        "INTEGER_0_3", HFILL }},
10256
15
    { &hf_rrlp_gloX,
10257
15
      { "gloX", "rrlp.gloX",
10258
15
        FT_INT32, BASE_DEC, NULL, 0,
10259
15
        "INTEGER_M67108864_67108863", HFILL }},
10260
15
    { &hf_rrlp_gloXdot,
10261
15
      { "gloXdot", "rrlp.gloXdot",
10262
15
        FT_INT32, BASE_DEC, NULL, 0,
10263
15
        "INTEGER_M8388608_8388607", HFILL }},
10264
15
    { &hf_rrlp_gloXdotdot,
10265
15
      { "gloXdotdot", "rrlp.gloXdotdot",
10266
15
        FT_INT32, BASE_DEC, NULL, 0,
10267
15
        "INTEGER_M16_15", HFILL }},
10268
15
    { &hf_rrlp_gloY,
10269
15
      { "gloY", "rrlp.gloY",
10270
15
        FT_INT32, BASE_DEC, NULL, 0,
10271
15
        "INTEGER_M67108864_67108863", HFILL }},
10272
15
    { &hf_rrlp_gloYdot,
10273
15
      { "gloYdot", "rrlp.gloYdot",
10274
15
        FT_INT32, BASE_DEC, NULL, 0,
10275
15
        "INTEGER_M8388608_8388607", HFILL }},
10276
15
    { &hf_rrlp_gloYdotdot,
10277
15
      { "gloYdotdot", "rrlp.gloYdotdot",
10278
15
        FT_INT32, BASE_DEC, NULL, 0,
10279
15
        "INTEGER_M16_15", HFILL }},
10280
15
    { &hf_rrlp_gloZ,
10281
15
      { "gloZ", "rrlp.gloZ",
10282
15
        FT_INT32, BASE_DEC, NULL, 0,
10283
15
        "INTEGER_M67108864_67108863", HFILL }},
10284
15
    { &hf_rrlp_gloZdot,
10285
15
      { "gloZdot", "rrlp.gloZdot",
10286
15
        FT_INT32, BASE_DEC, NULL, 0,
10287
15
        "INTEGER_M8388608_8388607", HFILL }},
10288
15
    { &hf_rrlp_gloZdotdot,
10289
15
      { "gloZdotdot", "rrlp.gloZdotdot",
10290
15
        FT_INT32, BASE_DEC, NULL, 0,
10291
15
        "INTEGER_M16_15", HFILL }},
10292
15
    { &hf_rrlp_sbasTo,
10293
15
      { "sbasTo", "rrlp.sbasTo",
10294
15
        FT_UINT32, BASE_DEC, NULL, 0,
10295
15
        "INTEGER_0_5399", HFILL }},
10296
15
    { &hf_rrlp_sbasAccuracy,
10297
15
      { "sbasAccuracy", "rrlp.sbasAccuracy",
10298
15
        FT_BYTES, BASE_NONE, NULL, 0,
10299
15
        "BIT_STRING_SIZE_4", HFILL }},
10300
15
    { &hf_rrlp_sbasXg,
10301
15
      { "sbasXg", "rrlp.sbasXg",
10302
15
        FT_INT32, BASE_DEC, NULL, 0,
10303
15
        "INTEGER_M536870912_536870911", HFILL }},
10304
15
    { &hf_rrlp_sbasYg,
10305
15
      { "sbasYg", "rrlp.sbasYg",
10306
15
        FT_INT32, BASE_DEC, NULL, 0,
10307
15
        "INTEGER_M536870912_536870911", HFILL }},
10308
15
    { &hf_rrlp_sbasZg,
10309
15
      { "sbasZg", "rrlp.sbasZg",
10310
15
        FT_INT32, BASE_DEC, NULL, 0,
10311
15
        "INTEGER_M16777216_16777215", HFILL }},
10312
15
    { &hf_rrlp_sbasXgDot,
10313
15
      { "sbasXgDot", "rrlp.sbasXgDot",
10314
15
        FT_INT32, BASE_DEC, NULL, 0,
10315
15
        "INTEGER_M65536_65535", HFILL }},
10316
15
    { &hf_rrlp_sbasYgDot,
10317
15
      { "sbasYgDot", "rrlp.sbasYgDot",
10318
15
        FT_INT32, BASE_DEC, NULL, 0,
10319
15
        "INTEGER_M65536_65535", HFILL }},
10320
15
    { &hf_rrlp_sbasZgDot,
10321
15
      { "sbasZgDot", "rrlp.sbasZgDot",
10322
15
        FT_INT32, BASE_DEC, NULL, 0,
10323
15
        "INTEGER_M131072_131071", HFILL }},
10324
15
    { &hf_rrlp_sbasXgDotDot,
10325
15
      { "sbasXgDotDot", "rrlp.sbasXgDotDot",
10326
15
        FT_INT32, BASE_DEC, NULL, 0,
10327
15
        "INTEGER_M512_511", HFILL }},
10328
15
    { &hf_rrlp_sbagYgDotDot,
10329
15
      { "sbagYgDotDot", "rrlp.sbagYgDotDot",
10330
15
        FT_INT32, BASE_DEC, NULL, 0,
10331
15
        "INTEGER_M512_511", HFILL }},
10332
15
    { &hf_rrlp_sbasZgDotDot,
10333
15
      { "sbasZgDotDot", "rrlp.sbasZgDotDot",
10334
15
        FT_INT32, BASE_DEC, NULL, 0,
10335
15
        "INTEGER_M512_511", HFILL }},
10336
15
    { &hf_rrlp_bdsAODE_r12,
10337
15
      { "bdsAODE-r12", "rrlp.bdsAODE_r12",
10338
15
        FT_UINT32, BASE_DEC, NULL, 0,
10339
15
        "INTEGER_0_31", HFILL }},
10340
15
    { &hf_rrlp_bdsURAI_r12,
10341
15
      { "bdsURAI-r12", "rrlp.bdsURAI_r12",
10342
15
        FT_UINT32, BASE_DEC, NULL, 0,
10343
15
        "INTEGER_0_15", HFILL }},
10344
15
    { &hf_rrlp_bdsToe_r12,
10345
15
      { "bdsToe-r12", "rrlp.bdsToe_r12",
10346
15
        FT_UINT32, BASE_DEC, NULL, 0,
10347
15
        "INTEGER_0_131071", HFILL }},
10348
15
    { &hf_rrlp_bdsAPowerHalf_r12,
10349
15
      { "bdsAPowerHalf-r12", "rrlp.bdsAPowerHalf_r12",
10350
15
        FT_UINT32, BASE_DEC, NULL, 0,
10351
15
        "INTEGER_0_4294967295", HFILL }},
10352
15
    { &hf_rrlp_bdsE_r12,
10353
15
      { "bdsE-r12", "rrlp.bdsE_r12",
10354
15
        FT_UINT32, BASE_DEC, NULL, 0,
10355
15
        "INTEGER_0_4294967295", HFILL }},
10356
15
    { &hf_rrlp_bdsW_r12,
10357
15
      { "bdsW-r12", "rrlp.bdsW_r12",
10358
15
        FT_INT32, BASE_DEC, NULL, 0,
10359
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10360
15
    { &hf_rrlp_bdsDeltaN_r12,
10361
15
      { "bdsDeltaN-r12", "rrlp.bdsDeltaN_r12",
10362
15
        FT_INT32, BASE_DEC, NULL, 0,
10363
15
        "INTEGER_M32768_32767", HFILL }},
10364
15
    { &hf_rrlp_bdsM0_r12,
10365
15
      { "bdsM0-r12", "rrlp.bdsM0_r12",
10366
15
        FT_INT32, BASE_DEC, NULL, 0,
10367
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10368
15
    { &hf_rrlp_bdsOmega0_r12,
10369
15
      { "bdsOmega0-r12", "rrlp.bdsOmega0_r12",
10370
15
        FT_INT32, BASE_DEC, NULL, 0,
10371
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10372
15
    { &hf_rrlp_bdsOmegaDot_r12,
10373
15
      { "bdsOmegaDot-r12", "rrlp.bdsOmegaDot_r12",
10374
15
        FT_INT32, BASE_DEC, NULL, 0,
10375
15
        "INTEGER_M8388608_8388607", HFILL }},
10376
15
    { &hf_rrlp_bdsI0_r12,
10377
15
      { "bdsI0-r12", "rrlp.bdsI0_r12",
10378
15
        FT_INT32, BASE_DEC, NULL, 0,
10379
15
        "INTEGER_M2147483648_2147483647", HFILL }},
10380
15
    { &hf_rrlp_bdsIDot_r12,
10381
15
      { "bdsIDot-r12", "rrlp.bdsIDot_r12",
10382
15
        FT_INT32, BASE_DEC, NULL, 0,
10383
15
        "INTEGER_M8192_8191", HFILL }},
10384
15
    { &hf_rrlp_bdsCuc_r12,
10385
15
      { "bdsCuc-r12", "rrlp.bdsCuc_r12",
10386
15
        FT_INT32, BASE_DEC, NULL, 0,
10387
15
        "INTEGER_M131072_131071", HFILL }},
10388
15
    { &hf_rrlp_bdsCus_r12,
10389
15
      { "bdsCus-r12", "rrlp.bdsCus_r12",
10390
15
        FT_INT32, BASE_DEC, NULL, 0,
10391
15
        "INTEGER_M131072_131071", HFILL }},
10392
15
    { &hf_rrlp_bdsCrc_r12,
10393
15
      { "bdsCrc-r12", "rrlp.bdsCrc_r12",
10394
15
        FT_INT32, BASE_DEC, NULL, 0,
10395
15
        "INTEGER_M131072_131071", HFILL }},
10396
15
    { &hf_rrlp_bdsCrs_r12,
10397
15
      { "bdsCrs-r12", "rrlp.bdsCrs_r12",
10398
15
        FT_INT32, BASE_DEC, NULL, 0,
10399
15
        "INTEGER_M131072_131071", HFILL }},
10400
15
    { &hf_rrlp_bdsCic_r12,
10401
15
      { "bdsCic-r12", "rrlp.bdsCic_r12",
10402
15
        FT_INT32, BASE_DEC, NULL, 0,
10403
15
        "INTEGER_M131072_131071", HFILL }},
10404
15
    { &hf_rrlp_bdsCis_r12,
10405
15
      { "bdsCis-r12", "rrlp.bdsCis_r12",
10406
15
        FT_INT32, BASE_DEC, NULL, 0,
10407
15
        "INTEGER_M131072_131071", HFILL }},
10408
15
    { &hf_rrlp_standardClockModelList,
10409
15
      { "standardClockModelList", "rrlp.standardClockModelList",
10410
15
        FT_UINT32, BASE_DEC, NULL, 0,
10411
15
        "SeqOfStandardClockModelElement", HFILL }},
10412
15
    { &hf_rrlp_navClockModel,
10413
15
      { "navClockModel", "rrlp.navClockModel_element",
10414
15
        FT_NONE, BASE_NONE, NULL, 0,
10415
15
        NULL, HFILL }},
10416
15
    { &hf_rrlp_cnavClockModel,
10417
15
      { "cnavClockModel", "rrlp.cnavClockModel_element",
10418
15
        FT_NONE, BASE_NONE, NULL, 0,
10419
15
        NULL, HFILL }},
10420
15
    { &hf_rrlp_glonassClockModel,
10421
15
      { "glonassClockModel", "rrlp.glonassClockModel_element",
10422
15
        FT_NONE, BASE_NONE, NULL, 0,
10423
15
        NULL, HFILL }},
10424
15
    { &hf_rrlp_sbasClockModel,
10425
15
      { "sbasClockModel", "rrlp.sbasClockModel_element",
10426
15
        FT_NONE, BASE_NONE, NULL, 0,
10427
15
        NULL, HFILL }},
10428
15
    { &hf_rrlp_bdsClockModel_r12,
10429
15
      { "bdsClockModel-r12", "rrlp.bdsClockModel_r12_element",
10430
15
        FT_NONE, BASE_NONE, NULL, 0,
10431
15
        NULL, HFILL }},
10432
15
    { &hf_rrlp_SeqOfStandardClockModelElement_item,
10433
15
      { "StandardClockModelElement", "rrlp.StandardClockModelElement_element",
10434
15
        FT_NONE, BASE_NONE, NULL, 0,
10435
15
        NULL, HFILL }},
10436
15
    { &hf_rrlp_stanClockToc,
10437
15
      { "stanClockToc", "rrlp.stanClockToc",
10438
15
        FT_UINT32, BASE_DEC, NULL, 0,
10439
15
        "INTEGER_0_16383", HFILL }},
10440
15
    { &hf_rrlp_stanClockAF2,
10441
15
      { "stanClockAF2", "rrlp.stanClockAF2",
10442
15
        FT_INT32, BASE_DEC, NULL, 0,
10443
15
        "INTEGER_M32_31", HFILL }},
10444
15
    { &hf_rrlp_stanClockAF1,
10445
15
      { "stanClockAF1", "rrlp.stanClockAF1",
10446
15
        FT_INT32, BASE_DEC, NULL, 0,
10447
15
        "INTEGER_M1048576_1048575", HFILL }},
10448
15
    { &hf_rrlp_stanClockAF0,
10449
15
      { "stanClockAF0", "rrlp.stanClockAF0",
10450
15
        FT_INT32, BASE_DEC, NULL, 0,
10451
15
        "INTEGER_M1073741824_1073741823", HFILL }},
10452
15
    { &hf_rrlp_stanClockTgd,
10453
15
      { "stanClockTgd", "rrlp.stanClockTgd",
10454
15
        FT_INT32, BASE_DEC, NULL, 0,
10455
15
        "INTEGER_M512_511", HFILL }},
10456
15
    { &hf_rrlp_stanModelID,
10457
15
      { "stanModelID", "rrlp.stanModelID",
10458
15
        FT_UINT32, BASE_DEC, NULL, 0,
10459
15
        "INTEGER_0_1", HFILL }},
10460
15
    { &hf_rrlp_navToc,
10461
15
      { "navToc", "rrlp.navToc",
10462
15
        FT_UINT32, BASE_DEC, NULL, 0,
10463
15
        "INTEGER_0_37799", HFILL }},
10464
15
    { &hf_rrlp_navaf2,
10465
15
      { "navaf2", "rrlp.navaf2",
10466
15
        FT_INT32, BASE_DEC, NULL, 0,
10467
15
        "INTEGER_M128_127", HFILL }},
10468
15
    { &hf_rrlp_navaf1,
10469
15
      { "navaf1", "rrlp.navaf1",
10470
15
        FT_INT32, BASE_DEC, NULL, 0,
10471
15
        "INTEGER_M32768_32767", HFILL }},
10472
15
    { &hf_rrlp_navaf0,
10473
15
      { "navaf0", "rrlp.navaf0",
10474
15
        FT_INT32, BASE_DEC, NULL, 0,
10475
15
        "INTEGER_M2097152_2097151", HFILL }},
10476
15
    { &hf_rrlp_navTgd,
10477
15
      { "navTgd", "rrlp.navTgd",
10478
15
        FT_INT32, BASE_DEC, NULL, 0,
10479
15
        "INTEGER_M128_127", HFILL }},
10480
15
    { &hf_rrlp_cnavToc,
10481
15
      { "cnavToc", "rrlp.cnavToc",
10482
15
        FT_UINT32, BASE_DEC, NULL, 0,
10483
15
        "INTEGER_0_2015", HFILL }},
10484
15
    { &hf_rrlp_cnavURA0,
10485
15
      { "cnavURA0", "rrlp.cnavURA0",
10486
15
        FT_INT32, BASE_DEC, NULL, 0,
10487
15
        "INTEGER_M16_15", HFILL }},
10488
15
    { &hf_rrlp_cnavURA1,
10489
15
      { "cnavURA1", "rrlp.cnavURA1",
10490
15
        FT_UINT32, BASE_DEC, NULL, 0,
10491
15
        "INTEGER_0_7", HFILL }},
10492
15
    { &hf_rrlp_cnavURA2,
10493
15
      { "cnavURA2", "rrlp.cnavURA2",
10494
15
        FT_UINT32, BASE_DEC, NULL, 0,
10495
15
        "INTEGER_0_7", HFILL }},
10496
15
    { &hf_rrlp_cnavAf2,
10497
15
      { "cnavAf2", "rrlp.cnavAf2",
10498
15
        FT_INT32, BASE_DEC, NULL, 0,
10499
15
        "INTEGER_M512_511", HFILL }},
10500
15
    { &hf_rrlp_cnavAf1,
10501
15
      { "cnavAf1", "rrlp.cnavAf1",
10502
15
        FT_INT32, BASE_DEC, NULL, 0,
10503
15
        "INTEGER_M524288_524287", HFILL }},
10504
15
    { &hf_rrlp_cnavAf0,
10505
15
      { "cnavAf0", "rrlp.cnavAf0",
10506
15
        FT_INT32, BASE_DEC, NULL, 0,
10507
15
        "INTEGER_M33554432_33554431", HFILL }},
10508
15
    { &hf_rrlp_cnavTgd,
10509
15
      { "cnavTgd", "rrlp.cnavTgd",
10510
15
        FT_INT32, BASE_DEC, NULL, 0,
10511
15
        "INTEGER_M4096_4095", HFILL }},
10512
15
    { &hf_rrlp_cnavISCl1cp,
10513
15
      { "cnavISCl1cp", "rrlp.cnavISCl1cp",
10514
15
        FT_INT32, BASE_DEC, NULL, 0,
10515
15
        "INTEGER_M4096_4095", HFILL }},
10516
15
    { &hf_rrlp_cnavISCl1cd,
10517
15
      { "cnavISCl1cd", "rrlp.cnavISCl1cd",
10518
15
        FT_INT32, BASE_DEC, NULL, 0,
10519
15
        "INTEGER_M4096_4095", HFILL }},
10520
15
    { &hf_rrlp_cnavISCl1ca,
10521
15
      { "cnavISCl1ca", "rrlp.cnavISCl1ca",
10522
15
        FT_INT32, BASE_DEC, NULL, 0,
10523
15
        "INTEGER_M4096_4095", HFILL }},
10524
15
    { &hf_rrlp_cnavISCl2c,
10525
15
      { "cnavISCl2c", "rrlp.cnavISCl2c",
10526
15
        FT_INT32, BASE_DEC, NULL, 0,
10527
15
        "INTEGER_M4096_4095", HFILL }},
10528
15
    { &hf_rrlp_cnavISCl5i5,
10529
15
      { "cnavISCl5i5", "rrlp.cnavISCl5i5",
10530
15
        FT_INT32, BASE_DEC, NULL, 0,
10531
15
        "INTEGER_M4096_4095", HFILL }},
10532
15
    { &hf_rrlp_cnavISCl5q5,
10533
15
      { "cnavISCl5q5", "rrlp.cnavISCl5q5",
10534
15
        FT_INT32, BASE_DEC, NULL, 0,
10535
15
        "INTEGER_M4096_4095", HFILL }},
10536
15
    { &hf_rrlp_gloTau,
10537
15
      { "gloTau", "rrlp.gloTau",
10538
15
        FT_INT32, BASE_DEC, NULL, 0,
10539
15
        "INTEGER_M2097152_2097151", HFILL }},
10540
15
    { &hf_rrlp_gloGamma,
10541
15
      { "gloGamma", "rrlp.gloGamma",
10542
15
        FT_INT32, BASE_DEC, NULL, 0,
10543
15
        "INTEGER_M1024_1023", HFILL }},
10544
15
    { &hf_rrlp_gloDeltaTau,
10545
15
      { "gloDeltaTau", "rrlp.gloDeltaTau",
10546
15
        FT_INT32, BASE_DEC, NULL, 0,
10547
15
        "INTEGER_M16_15", HFILL }},
10548
15
    { &hf_rrlp_sbasAgfo,
10549
15
      { "sbasAgfo", "rrlp.sbasAgfo",
10550
15
        FT_INT32, BASE_DEC, NULL, 0,
10551
15
        "INTEGER_M2048_2047", HFILL }},
10552
15
    { &hf_rrlp_sbasAgf1,
10553
15
      { "sbasAgf1", "rrlp.sbasAgf1",
10554
15
        FT_INT32, BASE_DEC, NULL, 0,
10555
15
        "INTEGER_M128_127", HFILL }},
10556
15
    { &hf_rrlp_bdsAODC_r12,
10557
15
      { "bdsAODC-r12", "rrlp.bdsAODC_r12",
10558
15
        FT_UINT32, BASE_DEC, NULL, 0,
10559
15
        "INTEGER_0_31", HFILL }},
10560
15
    { &hf_rrlp_bdsToc_r12,
10561
15
      { "bdsToc-r12", "rrlp.bdsToc_r12",
10562
15
        FT_UINT32, BASE_DEC, NULL, 0,
10563
15
        "INTEGER_0_131071", HFILL }},
10564
15
    { &hf_rrlp_bdsA0_r12,
10565
15
      { "bdsA0-r12", "rrlp.bdsA0_r12",
10566
15
        FT_INT32, BASE_DEC, NULL, 0,
10567
15
        "INTEGER_M8388608_8388607", HFILL }},
10568
15
    { &hf_rrlp_bdsA1_r12,
10569
15
      { "bdsA1-r12", "rrlp.bdsA1_r12",
10570
15
        FT_INT32, BASE_DEC, NULL, 0,
10571
15
        "INTEGER_M2097152_2097151", HFILL }},
10572
15
    { &hf_rrlp_bdsA2_r12,
10573
15
      { "bdsA2-r12", "rrlp.bdsA2_r12",
10574
15
        FT_INT32, BASE_DEC, NULL, 0,
10575
15
        "INTEGER_M1024_1023", HFILL }},
10576
15
    { &hf_rrlp_bdsTgd1_r12,
10577
15
      { "bdsTgd1-r12", "rrlp.bdsTgd1_r12",
10578
15
        FT_INT32, BASE_DEC, NULL, 0,
10579
15
        "INTEGER_M512_511", HFILL }},
10580
15
    { &hf_rrlp_ganssBadSignalList,
10581
15
      { "ganssBadSignalList", "rrlp.ganssBadSignalList",
10582
15
        FT_UINT32, BASE_DEC, NULL, 0,
10583
15
        "SeqOfBadSignalElement", HFILL }},
10584
15
    { &hf_rrlp_SeqOfBadSignalElement_item,
10585
15
      { "BadSignalElement", "rrlp.BadSignalElement_element",
10586
15
        FT_NONE, BASE_NONE, NULL, 0,
10587
15
        NULL, HFILL }},
10588
15
    { &hf_rrlp_badSVID,
10589
15
      { "badSVID", "rrlp.badSVID",
10590
15
        FT_UINT32, BASE_DEC, NULL, 0,
10591
15
        "SVID", HFILL }},
10592
15
    { &hf_rrlp_badSignalID,
10593
15
      { "badSignalID", "rrlp.badSignalID",
10594
15
        FT_BYTES, BASE_NONE, NULL, 0,
10595
15
        "GANSSSignals", HFILL }},
10596
15
    { &hf_rrlp_ganssTOD_01,
10597
15
      { "ganssTOD", "rrlp.ganssTOD",
10598
15
        FT_UINT32, BASE_DEC, NULL, 0,
10599
15
        "INTEGER_0_59", HFILL }},
10600
15
    { &hf_rrlp_ganssDataBitsSatList,
10601
15
      { "ganssDataBitsSatList", "rrlp.ganssDataBitsSatList",
10602
15
        FT_UINT32, BASE_DEC, NULL, 0,
10603
15
        "SeqOfGanssDataBitsElement", HFILL }},
10604
15
    { &hf_rrlp_SeqOfGanssDataBitsElement_item,
10605
15
      { "GanssDataBitsElement", "rrlp.GanssDataBitsElement_element",
10606
15
        FT_NONE, BASE_NONE, NULL, 0,
10607
15
        NULL, HFILL }},
10608
15
    { &hf_rrlp_ganssDataBitsSgnList,
10609
15
      { "ganssDataBitsSgnList", "rrlp.ganssDataBitsSgnList",
10610
15
        FT_UINT32, BASE_DEC, NULL, 0,
10611
15
        "Seq_OfGANSSDataBitsSgn", HFILL }},
10612
15
    { &hf_rrlp_Seq_OfGANSSDataBitsSgn_item,
10613
15
      { "GANSSDataBitsSgnElement", "rrlp.GANSSDataBitsSgnElement_element",
10614
15
        FT_NONE, BASE_NONE, NULL, 0,
10615
15
        NULL, HFILL }},
10616
15
    { &hf_rrlp_ganssSignalType,
10617
15
      { "ganssSignalType", "rrlp.ganssSignalType",
10618
15
        FT_UINT32, BASE_DEC, NULL, 0,
10619
15
        "GANSSSignalID", HFILL }},
10620
15
    { &hf_rrlp_ganssDataBits,
10621
15
      { "ganssDataBits", "rrlp.ganssDataBits",
10622
15
        FT_UINT32, BASE_DEC, NULL, 0,
10623
15
        "SeqOf_GANSSDataBits", HFILL }},
10624
15
    { &hf_rrlp_SeqOf_GANSSDataBits_item,
10625
15
      { "GANSSDataBit", "rrlp.GANSSDataBit",
10626
15
        FT_UINT32, BASE_DEC, NULL, 0,
10627
15
        NULL, HFILL }},
10628
15
    { &hf_rrlp_ganssRefMeasAssistList,
10629
15
      { "ganssRefMeasAssistList", "rrlp.ganssRefMeasAssistList",
10630
15
        FT_UINT32, BASE_DEC, NULL, 0,
10631
15
        "SeqOfGANSSRefMeasurementElement", HFILL }},
10632
15
    { &hf_rrlp_SeqOfGANSSRefMeasurementElement_item,
10633
15
      { "GANSSRefMeasurementElement", "rrlp.GANSSRefMeasurementElement_element",
10634
15
        FT_NONE, BASE_NONE, NULL, 0,
10635
15
        NULL, HFILL }},
10636
15
    { &hf_rrlp_additionalDoppler,
10637
15
      { "additionalDoppler", "rrlp.additionalDoppler_element",
10638
15
        FT_NONE, BASE_NONE, NULL, 0,
10639
15
        "AdditionalDopplerFields", HFILL }},
10640
15
    { &hf_rrlp_intCodePhase_01,
10641
15
      { "intCodePhase", "rrlp.intCodePhase",
10642
15
        FT_UINT32, BASE_DEC, NULL, 0,
10643
15
        "INTEGER_0_127", HFILL }},
10644
15
    { &hf_rrlp_codePhaseSearchWindow_01,
10645
15
      { "codePhaseSearchWindow", "rrlp.codePhaseSearchWindow",
10646
15
        FT_UINT32, BASE_DEC, NULL, 0,
10647
15
        "INTEGER_0_31", HFILL }},
10648
15
    { &hf_rrlp_additionalAngle,
10649
15
      { "additionalAngle", "rrlp.additionalAngle_element",
10650
15
        FT_NONE, BASE_NONE, NULL, 0,
10651
15
        "AddionalAngleFields", HFILL }},
10652
15
    { &hf_rrlp_codePhase1023,
10653
15
      { "codePhase1023", "rrlp.codePhase1023",
10654
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10655
15
        "BOOLEAN", HFILL }},
10656
15
    { &hf_rrlp_dopplerUncertainty_01,
10657
15
      { "dopplerUncertainty", "rrlp.dopplerUncertainty",
10658
15
        FT_UINT32, BASE_DEC, NULL, 0,
10659
15
        "INTEGER_0_4", HFILL }},
10660
15
    { &hf_rrlp_GANSSRefMeasurementAssist_R10_Ext_item,
10661
15
      { "GANSSRefMeasurement-R10-Ext-Element", "rrlp.GANSSRefMeasurement_R10_Ext_Element_element",
10662
15
        FT_NONE, BASE_NONE, NULL, 0,
10663
15
        NULL, HFILL }},
10664
15
    { &hf_rrlp_azimuthLSB,
10665
15
      { "azimuthLSB", "rrlp.azimuthLSB",
10666
15
        FT_UINT32, BASE_DEC, NULL, 0,
10667
15
        "INTEGER_0_15", HFILL }},
10668
15
    { &hf_rrlp_elevationLSB,
10669
15
      { "elevationLSB", "rrlp.elevationLSB",
10670
15
        FT_UINT32, BASE_DEC, NULL, 0,
10671
15
        "INTEGER_0_15", HFILL }},
10672
15
    { &hf_rrlp_confidence,
10673
15
      { "confidence", "rrlp.confidence",
10674
15
        FT_UINT32, BASE_DEC, NULL, 0,
10675
15
        "INTEGER_0_100", HFILL }},
10676
15
    { &hf_rrlp_ganssRefMeasAssistList_01,
10677
15
      { "ganssRefMeasAssistList", "rrlp.ganssRefMeasAssistList",
10678
15
        FT_UINT32, BASE_DEC, NULL, 0,
10679
15
        "SeqOfGANSSRefMeasurementElement_R12", HFILL }},
10680
15
    { &hf_rrlp_SeqOfGANSSRefMeasurementElement_R12_item,
10681
15
      { "GANSSRefMeasurement-R12-Ext-Element", "rrlp.GANSSRefMeasurement_R12_Ext_Element_element",
10682
15
        FT_NONE, BASE_NONE, NULL, 0,
10683
15
        NULL, HFILL }},
10684
15
    { &hf_rrlp_dopplerUncertaintyExt,
10685
15
      { "dopplerUncertaintyExt", "rrlp.dopplerUncertaintyExt",
10686
15
        FT_UINT32, BASE_DEC, VALS(rrlp_T_dopplerUncertaintyExt_vals), 0,
10687
15
        NULL, HFILL }},
10688
15
    { &hf_rrlp_weekNumber_01,
10689
15
      { "weekNumber", "rrlp.weekNumber",
10690
15
        FT_UINT32, BASE_DEC, NULL, 0,
10691
15
        "INTEGER_0_255", HFILL }},
10692
15
    { &hf_rrlp_toa,
10693
15
      { "toa", "rrlp.toa",
10694
15
        FT_UINT32, BASE_DEC, NULL, 0,
10695
15
        "INTEGER_0_255", HFILL }},
10696
15
    { &hf_rrlp_ioda,
10697
15
      { "ioda", "rrlp.ioda",
10698
15
        FT_UINT32, BASE_DEC, NULL, 0,
10699
15
        "INTEGER_0_3", HFILL }},
10700
15
    { &hf_rrlp_ganssAlmanacList,
10701
15
      { "ganssAlmanacList", "rrlp.ganssAlmanacList",
10702
15
        FT_UINT32, BASE_DEC, NULL, 0,
10703
15
        "SeqOfGANSSAlmanacElement", HFILL }},
10704
15
    { &hf_rrlp_SeqOfGANSSAlmanacElement_item,
10705
15
      { "GANSSAlmanacElement", "rrlp.GANSSAlmanacElement",
10706
15
        FT_UINT32, BASE_DEC, VALS(rrlp_GANSSAlmanacElement_vals), 0,
10707
15
        NULL, HFILL }},
10708
15
    { &hf_rrlp_keplerianAlmanacSet,
10709
15
      { "keplerianAlmanacSet", "rrlp.keplerianAlmanacSet_element",
10710
15
        FT_NONE, BASE_NONE, NULL, 0,
10711
15
        "Almanac_KeplerianSet", HFILL }},
10712
15
    { &hf_rrlp_keplerianNAVAlmanac,
10713
15
      { "keplerianNAVAlmanac", "rrlp.keplerianNAVAlmanac_element",
10714
15
        FT_NONE, BASE_NONE, NULL, 0,
10715
15
        "Almanac_NAVKeplerianSet", HFILL }},
10716
15
    { &hf_rrlp_keplerianReducedAlmanac,
10717
15
      { "keplerianReducedAlmanac", "rrlp.keplerianReducedAlmanac_element",
10718
15
        FT_NONE, BASE_NONE, NULL, 0,
10719
15
        "Almanac_ReducedKeplerianSet", HFILL }},
10720
15
    { &hf_rrlp_keplerianMidiAlmanac,
10721
15
      { "keplerianMidiAlmanac", "rrlp.keplerianMidiAlmanac_element",
10722
15
        FT_NONE, BASE_NONE, NULL, 0,
10723
15
        "Almanac_MidiAlmanacSet", HFILL }},
10724
15
    { &hf_rrlp_keplerianGLONASS,
10725
15
      { "keplerianGLONASS", "rrlp.keplerianGLONASS_element",
10726
15
        FT_NONE, BASE_NONE, NULL, 0,
10727
15
        "Almanac_GlonassAlmanacSet", HFILL }},
10728
15
    { &hf_rrlp_ecefSBASAlmanac,
10729
15
      { "ecefSBASAlmanac", "rrlp.ecefSBASAlmanac_element",
10730
15
        FT_NONE, BASE_NONE, NULL, 0,
10731
15
        "Almanac_ECEFsbasAlmanacSet", HFILL }},
10732
15
    { &hf_rrlp_keplerianBDSAlmanac_r12,
10733
15
      { "keplerianBDSAlmanac-r12", "rrlp.keplerianBDSAlmanac_r12_element",
10734
15
        FT_NONE, BASE_NONE, NULL, 0,
10735
15
        "Almanac_BDSAlmanacSet_r12", HFILL }},
10736
15
    { &hf_rrlp_kepAlmanacE,
10737
15
      { "kepAlmanacE", "rrlp.kepAlmanacE",
10738
15
        FT_UINT32, BASE_DEC, NULL, 0,
10739
15
        "INTEGER_0_2047", HFILL }},
10740
15
    { &hf_rrlp_kepAlmanacDeltaI,
10741
15
      { "kepAlmanacDeltaI", "rrlp.kepAlmanacDeltaI",
10742
15
        FT_INT32, BASE_DEC, NULL, 0,
10743
15
        "INTEGER_M1024_1023", HFILL }},
10744
15
    { &hf_rrlp_kepAlmanacOmegaDot,
10745
15
      { "kepAlmanacOmegaDot", "rrlp.kepAlmanacOmegaDot",
10746
15
        FT_INT32, BASE_DEC, NULL, 0,
10747
15
        "INTEGER_M1024_1023", HFILL }},
10748
15
    { &hf_rrlp_kepSVStatusINAV,
10749
15
      { "kepSVStatusINAV", "rrlp.kepSVStatusINAV",
10750
15
        FT_BYTES, BASE_NONE, NULL, 0,
10751
15
        "BIT_STRING_SIZE_4", HFILL }},
10752
15
    { &hf_rrlp_kepSVStatusFNAV,
10753
15
      { "kepSVStatusFNAV", "rrlp.kepSVStatusFNAV",
10754
15
        FT_BYTES, BASE_NONE, NULL, 0,
10755
15
        "BIT_STRING_SIZE_2", HFILL }},
10756
15
    { &hf_rrlp_kepAlmanacAPowerHalf,
10757
15
      { "kepAlmanacAPowerHalf", "rrlp.kepAlmanacAPowerHalf",
10758
15
        FT_INT32, BASE_DEC, NULL, 0,
10759
15
        "INTEGER_M4096_4095", HFILL }},
10760
15
    { &hf_rrlp_kepAlmanacOmega0,
10761
15
      { "kepAlmanacOmega0", "rrlp.kepAlmanacOmega0",
10762
15
        FT_INT32, BASE_DEC, NULL, 0,
10763
15
        "INTEGER_M32768_32767", HFILL }},
10764
15
    { &hf_rrlp_kepAlmanacW,
10765
15
      { "kepAlmanacW", "rrlp.kepAlmanacW",
10766
15
        FT_INT32, BASE_DEC, NULL, 0,
10767
15
        "INTEGER_M32768_32767", HFILL }},
10768
15
    { &hf_rrlp_kepAlmanacM0,
10769
15
      { "kepAlmanacM0", "rrlp.kepAlmanacM0",
10770
15
        FT_INT32, BASE_DEC, NULL, 0,
10771
15
        "INTEGER_M32768_32767", HFILL }},
10772
15
    { &hf_rrlp_kepAlmanacAF0,
10773
15
      { "kepAlmanacAF0", "rrlp.kepAlmanacAF0",
10774
15
        FT_INT32, BASE_DEC, NULL, 0,
10775
15
        "INTEGER_M32768_32767", HFILL }},
10776
15
    { &hf_rrlp_kepAlmanacAF1,
10777
15
      { "kepAlmanacAF1", "rrlp.kepAlmanacAF1",
10778
15
        FT_INT32, BASE_DEC, NULL, 0,
10779
15
        "INTEGER_M4096_4095", HFILL }},
10780
15
    { &hf_rrlp_navAlmE,
10781
15
      { "navAlmE", "rrlp.navAlmE",
10782
15
        FT_UINT32, BASE_DEC, NULL, 0,
10783
15
        "INTEGER_0_65535", HFILL }},
10784
15
    { &hf_rrlp_navAlmDeltaI,
10785
15
      { "navAlmDeltaI", "rrlp.navAlmDeltaI",
10786
15
        FT_INT32, BASE_DEC, NULL, 0,
10787
15
        "INTEGER_M32768_32767", HFILL }},
10788
15
    { &hf_rrlp_navAlmOMEGADOT,
10789
15
      { "navAlmOMEGADOT", "rrlp.navAlmOMEGADOT",
10790
15
        FT_INT32, BASE_DEC, NULL, 0,
10791
15
        "INTEGER_M32768_32767", HFILL }},
10792
15
    { &hf_rrlp_navAlmSVHealth,
10793
15
      { "navAlmSVHealth", "rrlp.navAlmSVHealth",
10794
15
        FT_UINT32, BASE_DEC, NULL, 0,
10795
15
        "INTEGER_0_255", HFILL }},
10796
15
    { &hf_rrlp_navAlmSqrtA,
10797
15
      { "navAlmSqrtA", "rrlp.navAlmSqrtA",
10798
15
        FT_UINT32, BASE_DEC, NULL, 0,
10799
15
        "INTEGER_0_16777215", HFILL }},
10800
15
    { &hf_rrlp_navAlmOMEGAo,
10801
15
      { "navAlmOMEGAo", "rrlp.navAlmOMEGAo",
10802
15
        FT_INT32, BASE_DEC, NULL, 0,
10803
15
        "INTEGER_M8388608_8388607", HFILL }},
10804
15
    { &hf_rrlp_navAlmOmega,
10805
15
      { "navAlmOmega", "rrlp.navAlmOmega",
10806
15
        FT_INT32, BASE_DEC, NULL, 0,
10807
15
        "INTEGER_M8388608_8388607", HFILL }},
10808
15
    { &hf_rrlp_navAlmMo,
10809
15
      { "navAlmMo", "rrlp.navAlmMo",
10810
15
        FT_INT32, BASE_DEC, NULL, 0,
10811
15
        "INTEGER_M8388608_8388607", HFILL }},
10812
15
    { &hf_rrlp_navAlmaf0,
10813
15
      { "navAlmaf0", "rrlp.navAlmaf0",
10814
15
        FT_INT32, BASE_DEC, NULL, 0,
10815
15
        "INTEGER_M1024_1023", HFILL }},
10816
15
    { &hf_rrlp_navAlmaf1,
10817
15
      { "navAlmaf1", "rrlp.navAlmaf1",
10818
15
        FT_INT32, BASE_DEC, NULL, 0,
10819
15
        "INTEGER_M1024_1023", HFILL }},
10820
15
    { &hf_rrlp_redAlmDeltaA,
10821
15
      { "redAlmDeltaA", "rrlp.redAlmDeltaA",
10822
15
        FT_INT32, BASE_DEC, NULL, 0,
10823
15
        "INTEGER_M128_127", HFILL }},
10824
15
    { &hf_rrlp_redAlmOmega0,
10825
15
      { "redAlmOmega0", "rrlp.redAlmOmega0",
10826
15
        FT_INT32, BASE_DEC, NULL, 0,
10827
15
        "INTEGER_M64_63", HFILL }},
10828
15
    { &hf_rrlp_redAlmPhi0,
10829
15
      { "redAlmPhi0", "rrlp.redAlmPhi0",
10830
15
        FT_INT32, BASE_DEC, NULL, 0,
10831
15
        "INTEGER_M64_63", HFILL }},
10832
15
    { &hf_rrlp_redAlmL1Health,
10833
15
      { "redAlmL1Health", "rrlp.redAlmL1Health",
10834
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10835
15
        "BOOLEAN", HFILL }},
10836
15
    { &hf_rrlp_redAlmL2Health,
10837
15
      { "redAlmL2Health", "rrlp.redAlmL2Health",
10838
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10839
15
        "BOOLEAN", HFILL }},
10840
15
    { &hf_rrlp_redAlmL5Health,
10841
15
      { "redAlmL5Health", "rrlp.redAlmL5Health",
10842
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10843
15
        "BOOLEAN", HFILL }},
10844
15
    { &hf_rrlp_midiAlmE,
10845
15
      { "midiAlmE", "rrlp.midiAlmE",
10846
15
        FT_UINT32, BASE_DEC, NULL, 0,
10847
15
        "INTEGER_0_2047", HFILL }},
10848
15
    { &hf_rrlp_midiAlmDeltaI,
10849
15
      { "midiAlmDeltaI", "rrlp.midiAlmDeltaI",
10850
15
        FT_INT32, BASE_DEC, NULL, 0,
10851
15
        "INTEGER_M1024_1023", HFILL }},
10852
15
    { &hf_rrlp_midiAlmOmegaDot,
10853
15
      { "midiAlmOmegaDot", "rrlp.midiAlmOmegaDot",
10854
15
        FT_INT32, BASE_DEC, NULL, 0,
10855
15
        "INTEGER_M1024_1023", HFILL }},
10856
15
    { &hf_rrlp_midiAlmSqrtA,
10857
15
      { "midiAlmSqrtA", "rrlp.midiAlmSqrtA",
10858
15
        FT_UINT32, BASE_DEC, NULL, 0,
10859
15
        "INTEGER_0_131071", HFILL }},
10860
15
    { &hf_rrlp_midiAlmOmega0,
10861
15
      { "midiAlmOmega0", "rrlp.midiAlmOmega0",
10862
15
        FT_INT32, BASE_DEC, NULL, 0,
10863
15
        "INTEGER_M32768_32767", HFILL }},
10864
15
    { &hf_rrlp_midiAlmOmega,
10865
15
      { "midiAlmOmega", "rrlp.midiAlmOmega",
10866
15
        FT_INT32, BASE_DEC, NULL, 0,
10867
15
        "INTEGER_M32768_32767", HFILL }},
10868
15
    { &hf_rrlp_midiAlmMo,
10869
15
      { "midiAlmMo", "rrlp.midiAlmMo",
10870
15
        FT_INT32, BASE_DEC, NULL, 0,
10871
15
        "INTEGER_M32768_32767", HFILL }},
10872
15
    { &hf_rrlp_midiAlmaf0,
10873
15
      { "midiAlmaf0", "rrlp.midiAlmaf0",
10874
15
        FT_INT32, BASE_DEC, NULL, 0,
10875
15
        "INTEGER_M1024_1023", HFILL }},
10876
15
    { &hf_rrlp_midiAlmaf1,
10877
15
      { "midiAlmaf1", "rrlp.midiAlmaf1",
10878
15
        FT_INT32, BASE_DEC, NULL, 0,
10879
15
        "INTEGER_M512_511", HFILL }},
10880
15
    { &hf_rrlp_midiAlmL1Health,
10881
15
      { "midiAlmL1Health", "rrlp.midiAlmL1Health",
10882
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10883
15
        "BOOLEAN", HFILL }},
10884
15
    { &hf_rrlp_midiAlmL2Health,
10885
15
      { "midiAlmL2Health", "rrlp.midiAlmL2Health",
10886
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10887
15
        "BOOLEAN", HFILL }},
10888
15
    { &hf_rrlp_midiAlmL5Health,
10889
15
      { "midiAlmL5Health", "rrlp.midiAlmL5Health",
10890
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
10891
15
        "BOOLEAN", HFILL }},
10892
15
    { &hf_rrlp_gloAlmNA,
10893
15
      { "gloAlmNA", "rrlp.gloAlmNA",
10894
15
        FT_UINT32, BASE_DEC, NULL, 0,
10895
15
        "INTEGER_1_1461", HFILL }},
10896
15
    { &hf_rrlp_gloAlmnA,
10897
15
      { "gloAlmnA", "rrlp.gloAlmnA",
10898
15
        FT_UINT32, BASE_DEC, NULL, 0,
10899
15
        "INTEGER_1_24", HFILL }},
10900
15
    { &hf_rrlp_gloAlmHA,
10901
15
      { "gloAlmHA", "rrlp.gloAlmHA",
10902
15
        FT_UINT32, BASE_DEC, NULL, 0,
10903
15
        "INTEGER_0_31", HFILL }},
10904
15
    { &hf_rrlp_gloAlmLambdaA,
10905
15
      { "gloAlmLambdaA", "rrlp.gloAlmLambdaA",
10906
15
        FT_INT32, BASE_DEC, NULL, 0,
10907
15
        "INTEGER_M1048576_1048575", HFILL }},
10908
15
    { &hf_rrlp_gloAlmtlambdaA,
10909
15
      { "gloAlmtlambdaA", "rrlp.gloAlmtlambdaA",
10910
15
        FT_UINT32, BASE_DEC, NULL, 0,
10911
15
        "INTEGER_0_2097151", HFILL }},
10912
15
    { &hf_rrlp_gloAlmDeltaIa,
10913
15
      { "gloAlmDeltaIa", "rrlp.gloAlmDeltaIa",
10914
15
        FT_INT32, BASE_DEC, NULL, 0,
10915
15
        "INTEGER_M131072_131071", HFILL }},
10916
15
    { &hf_rrlp_gloAlmDeltaTA,
10917
15
      { "gloAlmDeltaTA", "rrlp.gloAlmDeltaTA",
10918
15
        FT_INT32, BASE_DEC, NULL, 0,
10919
15
        "INTEGER_M2097152_2097151", HFILL }},
10920
15
    { &hf_rrlp_gloAlmDeltaTdotA,
10921
15
      { "gloAlmDeltaTdotA", "rrlp.gloAlmDeltaTdotA",
10922
15
        FT_INT32, BASE_DEC, NULL, 0,
10923
15
        "INTEGER_M64_63", HFILL }},
10924
15
    { &hf_rrlp_gloAlmEpsilonA,
10925
15
      { "gloAlmEpsilonA", "rrlp.gloAlmEpsilonA",
10926
15
        FT_UINT32, BASE_DEC, NULL, 0,
10927
15
        "INTEGER_0_32767", HFILL }},
10928
15
    { &hf_rrlp_gloAlmOmegaA,
10929
15
      { "gloAlmOmegaA", "rrlp.gloAlmOmegaA",
10930
15
        FT_INT32, BASE_DEC, NULL, 0,
10931
15
        "INTEGER_M32768_32767", HFILL }},
10932
15
    { &hf_rrlp_gloAlmTauA,
10933
15
      { "gloAlmTauA", "rrlp.gloAlmTauA",
10934
15
        FT_INT32, BASE_DEC, NULL, 0,
10935
15
        "INTEGER_M512_511", HFILL }},
10936
15
    { &hf_rrlp_gloAlmCA,
10937
15
      { "gloAlmCA", "rrlp.gloAlmCA",
10938
15
        FT_UINT32, BASE_DEC, NULL, 0,
10939
15
        "INTEGER_0_1", HFILL }},
10940
15
    { &hf_rrlp_gloAlmMA,
10941
15
      { "gloAlmMA", "rrlp.gloAlmMA",
10942
15
        FT_BYTES, BASE_NONE, NULL, 0,
10943
15
        "BIT_STRING_SIZE_2", HFILL }},
10944
15
    { &hf_rrlp_sbasAlmDataID,
10945
15
      { "sbasAlmDataID", "rrlp.sbasAlmDataID",
10946
15
        FT_UINT32, BASE_DEC, NULL, 0,
10947
15
        "INTEGER_0_3", HFILL }},
10948
15
    { &hf_rrlp_sbasAlmHealth,
10949
15
      { "sbasAlmHealth", "rrlp.sbasAlmHealth",
10950
15
        FT_BYTES, BASE_NONE, NULL, 0,
10951
15
        "BIT_STRING_SIZE_8", HFILL }},
10952
15
    { &hf_rrlp_sbasAlmXg,
10953
15
      { "sbasAlmXg", "rrlp.sbasAlmXg",
10954
15
        FT_INT32, BASE_DEC, NULL, 0,
10955
15
        "INTEGER_M16384_16383", HFILL }},
10956
15
    { &hf_rrlp_sbasAlmYg,
10957
15
      { "sbasAlmYg", "rrlp.sbasAlmYg",
10958
15
        FT_INT32, BASE_DEC, NULL, 0,
10959
15
        "INTEGER_M16384_16383", HFILL }},
10960
15
    { &hf_rrlp_sbasAlmZg,
10961
15
      { "sbasAlmZg", "rrlp.sbasAlmZg",
10962
15
        FT_INT32, BASE_DEC, NULL, 0,
10963
15
        "INTEGER_M256_255", HFILL }},
10964
15
    { &hf_rrlp_sbasAlmXgdot,
10965
15
      { "sbasAlmXgdot", "rrlp.sbasAlmXgdot",
10966
15
        FT_INT32, BASE_DEC, NULL, 0,
10967
15
        "INTEGER_M4_3", HFILL }},
10968
15
    { &hf_rrlp_sbasAlmYgDot,
10969
15
      { "sbasAlmYgDot", "rrlp.sbasAlmYgDot",
10970
15
        FT_INT32, BASE_DEC, NULL, 0,
10971
15
        "INTEGER_M4_3", HFILL }},
10972
15
    { &hf_rrlp_sbasAlmZgDot,
10973
15
      { "sbasAlmZgDot", "rrlp.sbasAlmZgDot",
10974
15
        FT_INT32, BASE_DEC, NULL, 0,
10975
15
        "INTEGER_M8_7", HFILL }},
10976
15
    { &hf_rrlp_sbasAlmTo,
10977
15
      { "sbasAlmTo", "rrlp.sbasAlmTo",
10978
15
        FT_UINT32, BASE_DEC, NULL, 0,
10979
15
        "INTEGER_0_2047", HFILL }},
10980
15
    { &hf_rrlp_bdsAlmToa_r12,
10981
15
      { "bdsAlmToa-r12", "rrlp.bdsAlmToa_r12",
10982
15
        FT_UINT32, BASE_DEC, NULL, 0,
10983
15
        "INTEGER_0_255", HFILL }},
10984
15
    { &hf_rrlp_bdsAlmSqrtA_r12,
10985
15
      { "bdsAlmSqrtA-r12", "rrlp.bdsAlmSqrtA_r12",
10986
15
        FT_UINT32, BASE_DEC, NULL, 0,
10987
15
        "INTEGER_0_16777215", HFILL }},
10988
15
    { &hf_rrlp_bdsAlmE_r12,
10989
15
      { "bdsAlmE-r12", "rrlp.bdsAlmE_r12",
10990
15
        FT_UINT32, BASE_DEC, NULL, 0,
10991
15
        "INTEGER_0_131071", HFILL }},
10992
15
    { &hf_rrlp_bdsAlmW_r12,
10993
15
      { "bdsAlmW-r12", "rrlp.bdsAlmW_r12",
10994
15
        FT_INT32, BASE_DEC, NULL, 0,
10995
15
        "INTEGER_M8388608_8388607", HFILL }},
10996
15
    { &hf_rrlp_bdsAlmM0_r12,
10997
15
      { "bdsAlmM0-r12", "rrlp.bdsAlmM0_r12",
10998
15
        FT_INT32, BASE_DEC, NULL, 0,
10999
15
        "INTEGER_M8388608_8388607", HFILL }},
11000
15
    { &hf_rrlp_bdsAlmOmega0_r12,
11001
15
      { "bdsAlmOmega0-r12", "rrlp.bdsAlmOmega0_r12",
11002
15
        FT_INT32, BASE_DEC, NULL, 0,
11003
15
        "INTEGER_M8388608_8388607", HFILL }},
11004
15
    { &hf_rrlp_bdsAlmOmegaDot_r12,
11005
15
      { "bdsAlmOmegaDot-r12", "rrlp.bdsAlmOmegaDot_r12",
11006
15
        FT_INT32, BASE_DEC, NULL, 0,
11007
15
        "INTEGER_M65536_65535", HFILL }},
11008
15
    { &hf_rrlp_bdsAlmDeltaI_r12,
11009
15
      { "bdsAlmDeltaI-r12", "rrlp.bdsAlmDeltaI_r12",
11010
15
        FT_INT32, BASE_DEC, NULL, 0,
11011
15
        "INTEGER_M32768_32767", HFILL }},
11012
15
    { &hf_rrlp_bdsAlmA0_r12,
11013
15
      { "bdsAlmA0-r12", "rrlp.bdsAlmA0_r12",
11014
15
        FT_INT32, BASE_DEC, NULL, 0,
11015
15
        "INTEGER_M1024_1023", HFILL }},
11016
15
    { &hf_rrlp_bdsAlmA1_r12,
11017
15
      { "bdsAlmA1-r12", "rrlp.bdsAlmA1_r12",
11018
15
        FT_INT32, BASE_DEC, NULL, 0,
11019
15
        "INTEGER_M1024_1023", HFILL }},
11020
15
    { &hf_rrlp_bdsSvHealth_r12,
11021
15
      { "bdsSvHealth-r12", "rrlp.bdsSvHealth_r12",
11022
15
        FT_BYTES, BASE_NONE, NULL, 0,
11023
15
        "BIT_STRING_SIZE_9", HFILL }},
11024
15
    { &hf_rrlp_completeAlmanacProvided,
11025
15
      { "completeAlmanacProvided", "rrlp.completeAlmanacProvided",
11026
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
11027
15
        "BOOLEAN", HFILL }},
11028
15
    { &hf_rrlp_toa_ext,
11029
15
      { "toa-ext", "rrlp.toa_ext",
11030
15
        FT_UINT32, BASE_DEC, NULL, 0,
11031
15
        "INTEGER_256_1023", HFILL }},
11032
15
    { &hf_rrlp_ioda_ext,
11033
15
      { "ioda-ext", "rrlp.ioda_ext",
11034
15
        FT_UINT32, BASE_DEC, NULL, 0,
11035
15
        "INTEGER_4_15", HFILL }},
11036
15
    { &hf_rrlp_ganssUtcA1,
11037
15
      { "ganssUtcA1", "rrlp.ganssUtcA1",
11038
15
        FT_INT32, BASE_DEC, NULL, 0,
11039
15
        "INTEGER_M8388608_8388607", HFILL }},
11040
15
    { &hf_rrlp_ganssUtcA0,
11041
15
      { "ganssUtcA0", "rrlp.ganssUtcA0",
11042
15
        FT_INT32, BASE_DEC, NULL, 0,
11043
15
        "INTEGER_M2147483648_2147483647", HFILL }},
11044
15
    { &hf_rrlp_ganssUtcTot,
11045
15
      { "ganssUtcTot", "rrlp.ganssUtcTot",
11046
15
        FT_UINT32, BASE_DEC, NULL, 0,
11047
15
        "INTEGER_0_255", HFILL }},
11048
15
    { &hf_rrlp_ganssUtcWNt,
11049
15
      { "ganssUtcWNt", "rrlp.ganssUtcWNt",
11050
15
        FT_UINT32, BASE_DEC, NULL, 0,
11051
15
        "INTEGER_0_255", HFILL }},
11052
15
    { &hf_rrlp_ganssUtcDeltaTls,
11053
15
      { "ganssUtcDeltaTls", "rrlp.ganssUtcDeltaTls",
11054
15
        FT_INT32, BASE_DEC, NULL, 0,
11055
15
        "INTEGER_M128_127", HFILL }},
11056
15
    { &hf_rrlp_ganssUtcWNlsf,
11057
15
      { "ganssUtcWNlsf", "rrlp.ganssUtcWNlsf",
11058
15
        FT_UINT32, BASE_DEC, NULL, 0,
11059
15
        "INTEGER_0_255", HFILL }},
11060
15
    { &hf_rrlp_ganssUtcDN,
11061
15
      { "ganssUtcDN", "rrlp.ganssUtcDN",
11062
15
        FT_INT32, BASE_DEC, NULL, 0,
11063
15
        "INTEGER_M128_127", HFILL }},
11064
15
    { &hf_rrlp_ganssUtcDeltaTlsf,
11065
15
      { "ganssUtcDeltaTlsf", "rrlp.ganssUtcDeltaTlsf",
11066
15
        FT_INT32, BASE_DEC, NULL, 0,
11067
15
        "INTEGER_M128_127", HFILL }},
11068
15
    { &hf_rrlp_ganssEphemerisHeader,
11069
15
      { "ganssEphemerisHeader", "rrlp.ganssEphemerisHeader_element",
11070
15
        FT_NONE, BASE_NONE, NULL, 0,
11071
15
        "GANSSEphemerisExtensionHeader", HFILL }},
11072
15
    { &hf_rrlp_ganssReferenceSet,
11073
15
      { "ganssReferenceSet", "rrlp.ganssReferenceSet",
11074
15
        FT_UINT32, BASE_DEC, NULL, 0,
11075
15
        "SeqOfGANSSRefOrbit", HFILL }},
11076
15
    { &hf_rrlp_ganssephemerisDeltasMatrix,
11077
15
      { "ganssephemerisDeltasMatrix", "rrlp.ganssephemerisDeltasMatrix",
11078
15
        FT_UINT32, BASE_DEC, NULL, 0,
11079
15
        "GANSSEphemerisDeltaMatrix", HFILL }},
11080
15
    { &hf_rrlp_timeAtEstimation,
11081
15
      { "timeAtEstimation", "rrlp.timeAtEstimation_element",
11082
15
        FT_NONE, BASE_NONE, NULL, 0,
11083
15
        "GANSSEphemerisExtensionTime", HFILL }},
11084
15
    { &hf_rrlp_validityPeriod,
11085
15
      { "validityPeriod", "rrlp.validityPeriod",
11086
15
        FT_UINT32, BASE_DEC, NULL, 0,
11087
15
        "INTEGER_1_8", HFILL }},
11088
15
    { &hf_rrlp_ephemerisExtensionDuration,
11089
15
      { "ephemerisExtensionDuration", "rrlp.ephemerisExtensionDuration",
11090
15
        FT_UINT32, BASE_DEC, NULL, 0,
11091
15
        "INTEGER_1_512", HFILL }},
11092
15
    { &hf_rrlp_ganssEphExtDay,
11093
15
      { "ganssEphExtDay", "rrlp.ganssEphExtDay",
11094
15
        FT_UINT32, BASE_DEC, NULL, 0,
11095
15
        "INTEGER_0_8191", HFILL }},
11096
15
    { &hf_rrlp_ganssEphExtTOD,
11097
15
      { "ganssEphExtTOD", "rrlp.ganssEphExtTOD",
11098
15
        FT_UINT32, BASE_DEC, NULL, 0,
11099
15
        "GANSSTOD", HFILL }},
11100
15
    { &hf_rrlp_keplerToe_01,
11101
15
      { "keplerToe", "rrlp.keplerToe",
11102
15
        FT_UINT32, BASE_DEC, NULL, 0,
11103
15
        "INTEGER_0_37799", HFILL }},
11104
15
    { &hf_rrlp_SeqOfGANSSRefOrbit_item,
11105
15
      { "GANSSReferenceOrbit", "rrlp.GANSSReferenceOrbit_element",
11106
15
        FT_NONE, BASE_NONE, NULL, 0,
11107
15
        NULL, HFILL }},
11108
15
    { &hf_rrlp_ganssOrbitModel_01,
11109
15
      { "ganssOrbitModel", "rrlp.ganssOrbitModel_element",
11110
15
        FT_NONE, BASE_NONE, NULL, 0,
11111
15
        "ReferenceNavModel", HFILL }},
11112
15
    { &hf_rrlp_GANSSEphemerisDeltaMatrix_item,
11113
15
      { "GANSSEphemerisDeltaEpoch", "rrlp.GANSSEphemerisDeltaEpoch_element",
11114
15
        FT_NONE, BASE_NONE, NULL, 0,
11115
15
        NULL, HFILL }},
11116
15
    { &hf_rrlp_ganssDeltaEpochHeader,
11117
15
      { "ganssDeltaEpochHeader", "rrlp.ganssDeltaEpochHeader_element",
11118
15
        FT_NONE, BASE_NONE, NULL, 0,
11119
15
        NULL, HFILL }},
11120
15
    { &hf_rrlp_ganssDeltaElementList,
11121
15
      { "ganssDeltaElementList", "rrlp.ganssDeltaElementList",
11122
15
        FT_UINT32, BASE_DEC, NULL, 0,
11123
15
        NULL, HFILL }},
11124
15
    { &hf_rrlp_ephemerisDeltaSizes,
11125
15
      { "ephemerisDeltaSizes", "rrlp.ephemerisDeltaSizes_element",
11126
15
        FT_NONE, BASE_NONE, NULL, 0,
11127
15
        "GANSSEphemerisDeltaBitSizes", HFILL }},
11128
15
    { &hf_rrlp_ephemerisDeltaScales,
11129
15
      { "ephemerisDeltaScales", "rrlp.ephemerisDeltaScales_element",
11130
15
        FT_NONE, BASE_NONE, NULL, 0,
11131
15
        "GANSSEphemerisDeltaScales", HFILL }},
11132
15
    { &hf_rrlp_GANSSDeltaElementList_item,
11133
15
      { "GANSSDeltaElementList item", "rrlp.GANSSDeltaElementList_item",
11134
15
        FT_BYTES, BASE_NONE, NULL, 0,
11135
15
        "OCTET_STRING_SIZE_1_49", HFILL }},
11136
15
    { &hf_rrlp_bitsize_delta_omega,
11137
15
      { "bitsize-delta-omega", "rrlp.bitsize_delta_omega",
11138
15
        FT_UINT32, BASE_DEC, NULL, 0,
11139
15
        "INTEGER_1_32", HFILL }},
11140
15
    { &hf_rrlp_bitsize_delta_deltaN,
11141
15
      { "bitsize-delta-deltaN", "rrlp.bitsize_delta_deltaN",
11142
15
        FT_UINT32, BASE_DEC, NULL, 0,
11143
15
        "INTEGER_1_16", HFILL }},
11144
15
    { &hf_rrlp_bitsize_delta_m0,
11145
15
      { "bitsize-delta-m0", "rrlp.bitsize_delta_m0",
11146
15
        FT_UINT32, BASE_DEC, NULL, 0,
11147
15
        "INTEGER_1_32", HFILL }},
11148
15
    { &hf_rrlp_bitsize_delta_omegadot,
11149
15
      { "bitsize-delta-omegadot", "rrlp.bitsize_delta_omegadot",
11150
15
        FT_UINT32, BASE_DEC, NULL, 0,
11151
15
        "INTEGER_1_24", HFILL }},
11152
15
    { &hf_rrlp_bitsize_delta_e,
11153
15
      { "bitsize-delta-e", "rrlp.bitsize_delta_e",
11154
15
        FT_UINT32, BASE_DEC, NULL, 0,
11155
15
        "INTEGER_1_32", HFILL }},
11156
15
    { &hf_rrlp_bitsize_delta_idot,
11157
15
      { "bitsize-delta-idot", "rrlp.bitsize_delta_idot",
11158
15
        FT_UINT32, BASE_DEC, NULL, 0,
11159
15
        "INTEGER_1_14", HFILL }},
11160
15
    { &hf_rrlp_bitsize_delta_sqrtA,
11161
15
      { "bitsize-delta-sqrtA", "rrlp.bitsize_delta_sqrtA",
11162
15
        FT_UINT32, BASE_DEC, NULL, 0,
11163
15
        "INTEGER_1_32", HFILL }},
11164
15
    { &hf_rrlp_bitsize_delta_i0,
11165
15
      { "bitsize-delta-i0", "rrlp.bitsize_delta_i0",
11166
15
        FT_UINT32, BASE_DEC, NULL, 0,
11167
15
        "INTEGER_1_32", HFILL }},
11168
15
    { &hf_rrlp_bitsize_delta_omega0,
11169
15
      { "bitsize-delta-omega0", "rrlp.bitsize_delta_omega0",
11170
15
        FT_UINT32, BASE_DEC, NULL, 0,
11171
15
        "INTEGER_1_32", HFILL }},
11172
15
    { &hf_rrlp_bitsize_delta_crs,
11173
15
      { "bitsize-delta-crs", "rrlp.bitsize_delta_crs",
11174
15
        FT_UINT32, BASE_DEC, NULL, 0,
11175
15
        "INTEGER_1_16", HFILL }},
11176
15
    { &hf_rrlp_bitsize_delta_cis,
11177
15
      { "bitsize-delta-cis", "rrlp.bitsize_delta_cis",
11178
15
        FT_UINT32, BASE_DEC, NULL, 0,
11179
15
        "INTEGER_1_16", HFILL }},
11180
15
    { &hf_rrlp_bitsize_delta_cus,
11181
15
      { "bitsize-delta-cus", "rrlp.bitsize_delta_cus",
11182
15
        FT_UINT32, BASE_DEC, NULL, 0,
11183
15
        "INTEGER_1_16", HFILL }},
11184
15
    { &hf_rrlp_bitsize_delta_crc,
11185
15
      { "bitsize-delta-crc", "rrlp.bitsize_delta_crc",
11186
15
        FT_UINT32, BASE_DEC, NULL, 0,
11187
15
        "INTEGER_1_16", HFILL }},
11188
15
    { &hf_rrlp_bitsize_delta_cic,
11189
15
      { "bitsize-delta-cic", "rrlp.bitsize_delta_cic",
11190
15
        FT_UINT32, BASE_DEC, NULL, 0,
11191
15
        "INTEGER_1_16", HFILL }},
11192
15
    { &hf_rrlp_bitsize_delta_cuc,
11193
15
      { "bitsize-delta-cuc", "rrlp.bitsize_delta_cuc",
11194
15
        FT_UINT32, BASE_DEC, NULL, 0,
11195
15
        "INTEGER_1_16", HFILL }},
11196
15
    { &hf_rrlp_bitsize_delta_tgd1,
11197
15
      { "bitsize-delta-tgd1", "rrlp.bitsize_delta_tgd1",
11198
15
        FT_UINT32, BASE_DEC, NULL, 0,
11199
15
        "INTEGER_1_10", HFILL }},
11200
15
    { &hf_rrlp_bitsize_delta_tgd2,
11201
15
      { "bitsize-delta-tgd2", "rrlp.bitsize_delta_tgd2",
11202
15
        FT_UINT32, BASE_DEC, NULL, 0,
11203
15
        "INTEGER_1_10", HFILL }},
11204
15
    { &hf_rrlp_scale_delta_omega,
11205
15
      { "scale-delta-omega", "rrlp.scale_delta_omega",
11206
15
        FT_INT32, BASE_DEC, NULL, 0,
11207
15
        "INTEGER_M16_15", HFILL }},
11208
15
    { &hf_rrlp_scale_delta_deltaN,
11209
15
      { "scale-delta-deltaN", "rrlp.scale_delta_deltaN",
11210
15
        FT_INT32, BASE_DEC, NULL, 0,
11211
15
        "INTEGER_M16_15", HFILL }},
11212
15
    { &hf_rrlp_scale_delta_m0,
11213
15
      { "scale-delta-m0", "rrlp.scale_delta_m0",
11214
15
        FT_INT32, BASE_DEC, NULL, 0,
11215
15
        "INTEGER_M16_15", HFILL }},
11216
15
    { &hf_rrlp_scale_delta_omegadot,
11217
15
      { "scale-delta-omegadot", "rrlp.scale_delta_omegadot",
11218
15
        FT_INT32, BASE_DEC, NULL, 0,
11219
15
        "INTEGER_M16_15", HFILL }},
11220
15
    { &hf_rrlp_scale_delta_e,
11221
15
      { "scale-delta-e", "rrlp.scale_delta_e",
11222
15
        FT_INT32, BASE_DEC, NULL, 0,
11223
15
        "INTEGER_M16_15", HFILL }},
11224
15
    { &hf_rrlp_scale_delta_idot,
11225
15
      { "scale-delta-idot", "rrlp.scale_delta_idot",
11226
15
        FT_INT32, BASE_DEC, NULL, 0,
11227
15
        "INTEGER_M16_15", HFILL }},
11228
15
    { &hf_rrlp_scale_delta_sqrtA,
11229
15
      { "scale-delta-sqrtA", "rrlp.scale_delta_sqrtA",
11230
15
        FT_INT32, BASE_DEC, NULL, 0,
11231
15
        "INTEGER_M16_15", HFILL }},
11232
15
    { &hf_rrlp_scale_delta_i0,
11233
15
      { "scale-delta-i0", "rrlp.scale_delta_i0",
11234
15
        FT_INT32, BASE_DEC, NULL, 0,
11235
15
        "INTEGER_M16_15", HFILL }},
11236
15
    { &hf_rrlp_scale_delta_omega0,
11237
15
      { "scale-delta-omega0", "rrlp.scale_delta_omega0",
11238
15
        FT_INT32, BASE_DEC, NULL, 0,
11239
15
        "INTEGER_M16_15", HFILL }},
11240
15
    { &hf_rrlp_scale_delta_crs,
11241
15
      { "scale-delta-crs", "rrlp.scale_delta_crs",
11242
15
        FT_INT32, BASE_DEC, NULL, 0,
11243
15
        "INTEGER_M16_15", HFILL }},
11244
15
    { &hf_rrlp_scale_delta_cis,
11245
15
      { "scale-delta-cis", "rrlp.scale_delta_cis",
11246
15
        FT_INT32, BASE_DEC, NULL, 0,
11247
15
        "INTEGER_M16_15", HFILL }},
11248
15
    { &hf_rrlp_scale_delta_cus,
11249
15
      { "scale-delta-cus", "rrlp.scale_delta_cus",
11250
15
        FT_INT32, BASE_DEC, NULL, 0,
11251
15
        "INTEGER_M16_15", HFILL }},
11252
15
    { &hf_rrlp_scale_delta_crc,
11253
15
      { "scale-delta-crc", "rrlp.scale_delta_crc",
11254
15
        FT_INT32, BASE_DEC, NULL, 0,
11255
15
        "INTEGER_M16_15", HFILL }},
11256
15
    { &hf_rrlp_scale_delta_cic,
11257
15
      { "scale-delta-cic", "rrlp.scale_delta_cic",
11258
15
        FT_INT32, BASE_DEC, NULL, 0,
11259
15
        "INTEGER_M16_15", HFILL }},
11260
15
    { &hf_rrlp_scale_delta_cuc,
11261
15
      { "scale-delta-cuc", "rrlp.scale_delta_cuc",
11262
15
        FT_INT32, BASE_DEC, NULL, 0,
11263
15
        "INTEGER_M16_15", HFILL }},
11264
15
    { &hf_rrlp_scale_delta_tgd1,
11265
15
      { "scale-delta-tgd1", "rrlp.scale_delta_tgd1",
11266
15
        FT_INT32, BASE_DEC, NULL, 0,
11267
15
        "INTEGER_M16_15", HFILL }},
11268
15
    { &hf_rrlp_scale_delta_tgd2,
11269
15
      { "scale-delta-tgd2", "rrlp.scale_delta_tgd2",
11270
15
        FT_INT32, BASE_DEC, NULL, 0,
11271
15
        "INTEGER_M16_15", HFILL }},
11272
15
    { &hf_rrlp_ganssBeginTime,
11273
15
      { "ganssBeginTime", "rrlp.ganssBeginTime_element",
11274
15
        FT_NONE, BASE_NONE, NULL, 0,
11275
15
        "GANSSEphemerisExtensionTime", HFILL }},
11276
15
    { &hf_rrlp_ganssEndTime,
11277
15
      { "ganssEndTime", "rrlp.ganssEndTime_element",
11278
15
        FT_NONE, BASE_NONE, NULL, 0,
11279
15
        "GANSSEphemerisExtensionTime", HFILL }},
11280
15
    { &hf_rrlp_ganssSatEventsInfo,
11281
15
      { "ganssSatEventsInfo", "rrlp.ganssSatEventsInfo_element",
11282
15
        FT_NONE, BASE_NONE, NULL, 0,
11283
15
        NULL, HFILL }},
11284
15
    { &hf_rrlp_eventOccured,
11285
15
      { "eventOccured", "rrlp.eventOccured",
11286
15
        FT_BYTES, BASE_NONE, NULL, 0,
11287
15
        "BIT_STRING_SIZE_64", HFILL }},
11288
15
    { &hf_rrlp_futureEventNoted,
11289
15
      { "futureEventNoted", "rrlp.futureEventNoted",
11290
15
        FT_BYTES, BASE_NONE, NULL, 0,
11291
15
        "BIT_STRING_SIZE_64", HFILL }},
11292
15
    { &hf_rrlp_utcModel2,
11293
15
      { "utcModel2", "rrlp.utcModel2_element",
11294
15
        FT_NONE, BASE_NONE, NULL, 0,
11295
15
        "UTCmodelSet2", HFILL }},
11296
15
    { &hf_rrlp_utcModel3,
11297
15
      { "utcModel3", "rrlp.utcModel3_element",
11298
15
        FT_NONE, BASE_NONE, NULL, 0,
11299
15
        "UTCmodelSet3", HFILL }},
11300
15
    { &hf_rrlp_utcModel4,
11301
15
      { "utcModel4", "rrlp.utcModel4_element",
11302
15
        FT_NONE, BASE_NONE, NULL, 0,
11303
15
        "UTCmodelSet4", HFILL }},
11304
15
    { &hf_rrlp_utcModel5_r12,
11305
15
      { "utcModel5-r12", "rrlp.utcModel5_r12_element",
11306
15
        FT_NONE, BASE_NONE, NULL, 0,
11307
15
        "UTCmodelSet5_r12", HFILL }},
11308
15
    { &hf_rrlp_utcA0_01,
11309
15
      { "utcA0", "rrlp.utcA0",
11310
15
        FT_INT32, BASE_DEC, NULL, 0,
11311
15
        "INTEGER_M32768_32767", HFILL }},
11312
15
    { &hf_rrlp_utcA1_01,
11313
15
      { "utcA1", "rrlp.utcA1",
11314
15
        FT_INT32, BASE_DEC, NULL, 0,
11315
15
        "INTEGER_M4096_4095", HFILL }},
11316
15
    { &hf_rrlp_utcA2,
11317
15
      { "utcA2", "rrlp.utcA2",
11318
15
        FT_INT32, BASE_DEC, NULL, 0,
11319
15
        "INTEGER_M64_63", HFILL }},
11320
15
    { &hf_rrlp_utcTot_01,
11321
15
      { "utcTot", "rrlp.utcTot",
11322
15
        FT_UINT32, BASE_DEC, NULL, 0,
11323
15
        "INTEGER_0_65535", HFILL }},
11324
15
    { &hf_rrlp_utcWNot,
11325
15
      { "utcWNot", "rrlp.utcWNot",
11326
15
        FT_UINT32, BASE_DEC, NULL, 0,
11327
15
        "INTEGER_0_8191", HFILL }},
11328
15
    { &hf_rrlp_utcDN_bit_str,
11329
15
      { "utcDN", "rrlp.utcDN_bit_str",
11330
15
        FT_BYTES, BASE_NONE, NULL, 0,
11331
15
        "BIT_STRING_SIZE_4", HFILL }},
11332
15
    { &hf_rrlp_nA,
11333
15
      { "nA", "rrlp.nA",
11334
15
        FT_UINT32, BASE_DEC, NULL, 0,
11335
15
        "INTEGER_1_1461", HFILL }},
11336
15
    { &hf_rrlp_tauC,
11337
15
      { "tauC", "rrlp.tauC",
11338
15
        FT_INT32, BASE_DEC, NULL, 0,
11339
15
        "INTEGER_M2147483648_2147483647", HFILL }},
11340
15
    { &hf_rrlp_b1,
11341
15
      { "b1", "rrlp.b1",
11342
15
        FT_INT32, BASE_DEC, NULL, 0,
11343
15
        "INTEGER_M1024_1023", HFILL }},
11344
15
    { &hf_rrlp_b2,
11345
15
      { "b2", "rrlp.b2",
11346
15
        FT_INT32, BASE_DEC, NULL, 0,
11347
15
        "INTEGER_M512_511", HFILL }},
11348
15
    { &hf_rrlp_kp,
11349
15
      { "kp", "rrlp.kp",
11350
15
        FT_BYTES, BASE_NONE, NULL, 0,
11351
15
        "BIT_STRING_SIZE_2", HFILL }},
11352
15
    { &hf_rrlp_utcA1wnt,
11353
15
      { "utcA1wnt", "rrlp.utcA1wnt",
11354
15
        FT_INT32, BASE_DEC, NULL, 0,
11355
15
        "INTEGER_M8388608_8388607", HFILL }},
11356
15
    { &hf_rrlp_utcA0wnt,
11357
15
      { "utcA0wnt", "rrlp.utcA0wnt",
11358
15
        FT_INT32, BASE_DEC, NULL, 0,
11359
15
        "INTEGER_M2147483648_2147483647", HFILL }},
11360
15
    { &hf_rrlp_utcStandardID,
11361
15
      { "utcStandardID", "rrlp.utcStandardID",
11362
15
        FT_UINT32, BASE_DEC, NULL, 0,
11363
15
        "INTEGER_0_7", HFILL }},
11364
15
    { &hf_rrlp_utcA0_r12,
11365
15
      { "utcA0-r12", "rrlp.utcA0_r12",
11366
15
        FT_INT32, BASE_DEC, NULL, 0,
11367
15
        "INTEGER_M2147483648_2147483647", HFILL }},
11368
15
    { &hf_rrlp_utcA1_r12,
11369
15
      { "utcA1-r12", "rrlp.utcA1_r12",
11370
15
        FT_INT32, BASE_DEC, NULL, 0,
11371
15
        "INTEGER_M8388608_8388607", HFILL }},
11372
15
    { &hf_rrlp_utcDeltaTls_r12,
11373
15
      { "utcDeltaTls-r12", "rrlp.utcDeltaTls_r12",
11374
15
        FT_INT32, BASE_DEC, NULL, 0,
11375
15
        "INTEGER_M128_127", HFILL }},
11376
15
    { &hf_rrlp_utcWNlsf_r12,
11377
15
      { "utcWNlsf-r12", "rrlp.utcWNlsf_r12",
11378
15
        FT_UINT32, BASE_DEC, NULL, 0,
11379
15
        "INTEGER_0_255", HFILL }},
11380
15
    { &hf_rrlp_utcDN_r12,
11381
15
      { "utcDN-r12", "rrlp.utcDN_r12",
11382
15
        FT_UINT32, BASE_DEC, NULL, 0,
11383
15
        "INTEGER_0_255", HFILL }},
11384
15
    { &hf_rrlp_utcDeltaTlsf_r12,
11385
15
      { "utcDeltaTlsf-r12", "rrlp.utcDeltaTlsf_r12",
11386
15
        FT_INT32, BASE_DEC, NULL, 0,
11387
15
        "INTEGER_M128_127", HFILL }},
11388
15
    { &hf_rrlp_ganssID1,
11389
15
      { "ganssID1", "rrlp.ganssID1",
11390
15
        FT_UINT32, BASE_DEC, NULL, 0,
11391
15
        "GANSS_ID1", HFILL }},
11392
15
    { &hf_rrlp_ganssID3,
11393
15
      { "ganssID3", "rrlp.ganssID3",
11394
15
        FT_UINT32, BASE_DEC, NULL, 0,
11395
15
        "GANSS_ID3", HFILL }},
11396
15
    { &hf_rrlp_GANSS_ID1_item,
11397
15
      { "GANSS-ID1-element", "rrlp.GANSS_ID1_element_element",
11398
15
        FT_NONE, BASE_NONE, NULL, 0,
11399
15
        NULL, HFILL }},
11400
15
    { &hf_rrlp_signalsAvailable,
11401
15
      { "signalsAvailable", "rrlp.signalsAvailable",
11402
15
        FT_BYTES, BASE_NONE, NULL, 0,
11403
15
        "GANSSSignals", HFILL }},
11404
15
    { &hf_rrlp_GANSS_ID3_item,
11405
15
      { "GANSS-ID3-element", "rrlp.GANSS_ID3_element_element",
11406
15
        FT_NONE, BASE_NONE, NULL, 0,
11407
15
        NULL, HFILL }},
11408
15
    { &hf_rrlp_channelNumber,
11409
15
      { "channelNumber", "rrlp.channelNumber",
11410
15
        FT_INT32, BASE_DEC, NULL, 0,
11411
15
        "INTEGER_M7_13", HFILL }},
11412
15
    { &hf_rrlp_GANSSDiffCorrectionsValidityPeriod_item,
11413
15
      { "DGANSSExtensionSgnTypeElement", "rrlp.DGANSSExtensionSgnTypeElement_element",
11414
15
        FT_NONE, BASE_NONE, NULL, 0,
11415
15
        NULL, HFILL }},
11416
15
    { &hf_rrlp_dganssExtensionSgnList,
11417
15
      { "dganssExtensionSgnList", "rrlp.dganssExtensionSgnList",
11418
15
        FT_UINT32, BASE_DEC, NULL, 0,
11419
15
        "SeqOfDGANSSExtensionSgnElement", HFILL }},
11420
15
    { &hf_rrlp_SeqOfDGANSSExtensionSgnElement_item,
11421
15
      { "DGANSSExtensionSgnElement", "rrlp.DGANSSExtensionSgnElement_element",
11422
15
        FT_NONE, BASE_NONE, NULL, 0,
11423
15
        NULL, HFILL }},
11424
15
    { &hf_rrlp_udreGrowthRate,
11425
15
      { "udreGrowthRate", "rrlp.udreGrowthRate",
11426
15
        FT_UINT32, BASE_DEC, NULL, 0,
11427
15
        "INTEGER_0_7", HFILL }},
11428
15
    { &hf_rrlp_udreValidityTime,
11429
15
      { "udreValidityTime", "rrlp.udreValidityTime",
11430
15
        FT_UINT32, BASE_DEC, NULL, 0,
11431
15
        "INTEGER_0_7", HFILL }},
11432
15
    { &hf_rrlp_add_GPS_controlHeader,
11433
15
      { "add-GPS-controlHeader", "rrlp.add_GPS_controlHeader_element",
11434
15
        FT_NONE, BASE_NONE, NULL, 0,
11435
15
        NULL, HFILL }},
11436
15
    { &hf_rrlp_gpsEphemerisExtension,
11437
15
      { "gpsEphemerisExtension", "rrlp.gpsEphemerisExtension_element",
11438
15
        FT_NONE, BASE_NONE, NULL, 0,
11439
15
        NULL, HFILL }},
11440
15
    { &hf_rrlp_gpsEphemerisExtensionCheck,
11441
15
      { "gpsEphemerisExtensionCheck", "rrlp.gpsEphemerisExtensionCheck_element",
11442
15
        FT_NONE, BASE_NONE, NULL, 0,
11443
15
        NULL, HFILL }},
11444
15
    { &hf_rrlp_dgpsCorrectionsValidityPeriod,
11445
15
      { "dgpsCorrectionsValidityPeriod", "rrlp.dgpsCorrectionsValidityPeriod",
11446
15
        FT_UINT32, BASE_DEC, NULL, 0,
11447
15
        NULL, HFILL }},
11448
15
    { &hf_rrlp_gpsReferenceTime_R10_Ext,
11449
15
      { "gpsReferenceTime-R10-Ext", "rrlp.gpsReferenceTime_R10_Ext_element",
11450
15
        FT_NONE, BASE_NONE, NULL, 0,
11451
15
        NULL, HFILL }},
11452
15
    { &hf_rrlp_gpsAcquisAssist_R10_Ext,
11453
15
      { "gpsAcquisAssist-R10-Ext", "rrlp.gpsAcquisAssist_R10_Ext",
11454
15
        FT_UINT32, BASE_DEC, NULL, 0,
11455
15
        NULL, HFILL }},
11456
15
    { &hf_rrlp_gpsAlmanac_R10_Ext,
11457
15
      { "gpsAlmanac-R10-Ext", "rrlp.gpsAlmanac_R10_Ext_element",
11458
15
        FT_NONE, BASE_NONE, NULL, 0,
11459
15
        NULL, HFILL }},
11460
15
    { &hf_rrlp_gpsAcquisAssist_R12_Ext,
11461
15
      { "gpsAcquisAssist-R12-Ext", "rrlp.gpsAcquisAssist_R12_Ext_element",
11462
15
        FT_NONE, BASE_NONE, NULL, 0,
11463
15
        NULL, HFILL }},
11464
15
    { &hf_rrlp_af2,
11465
15
      { "af2", "rrlp.af2",
11466
15
        FT_INT32, BASE_DEC, NULL, 0,
11467
15
        "INTEGER_M128_127", HFILL }},
11468
15
    { &hf_rrlp_af1,
11469
15
      { "af1", "rrlp.af1",
11470
15
        FT_INT32, BASE_DEC, NULL, 0,
11471
15
        "INTEGER_M32768_32767", HFILL }},
11472
15
    { &hf_rrlp_af0,
11473
15
      { "af0", "rrlp.af0",
11474
15
        FT_INT32, BASE_DEC, NULL, 0,
11475
15
        "INTEGER_M2097152_2097151", HFILL }},
11476
15
    { &hf_rrlp_tgd,
11477
15
      { "tgd", "rrlp.tgd",
11478
15
        FT_INT32, BASE_DEC, NULL, 0,
11479
15
        "INTEGER_M128_127", HFILL }},
11480
15
    { &hf_rrlp_gpsEphemerisHeader,
11481
15
      { "gpsEphemerisHeader", "rrlp.gpsEphemerisHeader_element",
11482
15
        FT_NONE, BASE_NONE, NULL, 0,
11483
15
        "GPSEphemerisExtensionHeader", HFILL }},
11484
15
    { &hf_rrlp_gpsReferenceSet,
11485
15
      { "gpsReferenceSet", "rrlp.gpsReferenceSet",
11486
15
        FT_UINT32, BASE_DEC, NULL, 0,
11487
15
        "SeqOfGPSRefOrbit", HFILL }},
11488
15
    { &hf_rrlp_gpsephemerisDeltaMatrix,
11489
15
      { "gpsephemerisDeltaMatrix", "rrlp.gpsephemerisDeltaMatrix",
11490
15
        FT_UINT32, BASE_DEC, NULL, 0,
11491
15
        NULL, HFILL }},
11492
15
    { &hf_rrlp_timeofEstimation,
11493
15
      { "timeofEstimation", "rrlp.timeofEstimation_element",
11494
15
        FT_NONE, BASE_NONE, NULL, 0,
11495
15
        "GPSEphemerisExtensionTime", HFILL }},
11496
15
    { &hf_rrlp_SeqOfGPSRefOrbit_item,
11497
15
      { "GPSReferenceOrbit", "rrlp.GPSReferenceOrbit_element",
11498
15
        FT_NONE, BASE_NONE, NULL, 0,
11499
15
        NULL, HFILL }},
11500
15
    { &hf_rrlp_gpsOrbitModel,
11501
15
      { "gpsOrbitModel", "rrlp.gpsOrbitModel_element",
11502
15
        FT_NONE, BASE_NONE, NULL, 0,
11503
15
        "ReferenceNavModel", HFILL }},
11504
15
    { &hf_rrlp_gpsClockModel,
11505
15
      { "gpsClockModel", "rrlp.gpsClockModel_element",
11506
15
        FT_NONE, BASE_NONE, NULL, 0,
11507
15
        NULL, HFILL }},
11508
15
    { &hf_rrlp_GPSEphemerisDeltaMatrix_item,
11509
15
      { "GPSEphemerisDeltaEpoch", "rrlp.GPSEphemerisDeltaEpoch_element",
11510
15
        FT_NONE, BASE_NONE, NULL, 0,
11511
15
        NULL, HFILL }},
11512
15
    { &hf_rrlp_gpsDeltaEpochHeader,
11513
15
      { "gpsDeltaEpochHeader", "rrlp.gpsDeltaEpochHeader_element",
11514
15
        FT_NONE, BASE_NONE, NULL, 0,
11515
15
        NULL, HFILL }},
11516
15
    { &hf_rrlp_gpsDeltaElementList,
11517
15
      { "gpsDeltaElementList", "rrlp.gpsDeltaElementList",
11518
15
        FT_UINT32, BASE_DEC, NULL, 0,
11519
15
        NULL, HFILL }},
11520
15
    { &hf_rrlp_ephemerisDeltaSizes_01,
11521
15
      { "ephemerisDeltaSizes", "rrlp.ephemerisDeltaSizes_element",
11522
15
        FT_NONE, BASE_NONE, NULL, 0,
11523
15
        "GPSEphemerisDeltaBitSizes", HFILL }},
11524
15
    { &hf_rrlp_ephemerisDeltaScales_01,
11525
15
      { "ephemerisDeltaScales", "rrlp.ephemerisDeltaScales_element",
11526
15
        FT_NONE, BASE_NONE, NULL, 0,
11527
15
        "GPSEphemerisDeltaScales", HFILL }},
11528
15
    { &hf_rrlp_GPSDeltaElementList_item,
11529
15
      { "GPSDeltaElementList item", "rrlp.GPSDeltaElementList_item",
11530
15
        FT_BYTES, BASE_NONE, NULL, 0,
11531
15
        "OCTET_STRING_SIZE_1_47", HFILL }},
11532
15
    { &hf_rrlp_bitsize_delta_tgd,
11533
15
      { "bitsize-delta-tgd", "rrlp.bitsize_delta_tgd",
11534
15
        FT_UINT32, BASE_DEC, NULL, 0,
11535
15
        "INTEGER_1_10", HFILL }},
11536
15
    { &hf_rrlp_scale_delta_tgd,
11537
15
      { "scale-delta-tgd", "rrlp.scale_delta_tgd",
11538
15
        FT_INT32, BASE_DEC, NULL, 0,
11539
15
        "INTEGER_M16_15", HFILL }},
11540
15
    { &hf_rrlp_gpsBeginTime,
11541
15
      { "gpsBeginTime", "rrlp.gpsBeginTime_element",
11542
15
        FT_NONE, BASE_NONE, NULL, 0,
11543
15
        "GPSEphemerisExtensionTime", HFILL }},
11544
15
    { &hf_rrlp_gpsEndTime,
11545
15
      { "gpsEndTime", "rrlp.gpsEndTime_element",
11546
15
        FT_NONE, BASE_NONE, NULL, 0,
11547
15
        "GPSEphemerisExtensionTime", HFILL }},
11548
15
    { &hf_rrlp_gpsSatEventsInfo,
11549
15
      { "gpsSatEventsInfo", "rrlp.gpsSatEventsInfo_element",
11550
15
        FT_NONE, BASE_NONE, NULL, 0,
11551
15
        NULL, HFILL }},
11552
15
    { &hf_rrlp_eventOccured_01,
11553
15
      { "eventOccured", "rrlp.eventOccured",
11554
15
        FT_BYTES, BASE_NONE, NULL, 0,
11555
15
        "BIT_STRING_SIZE_32", HFILL }},
11556
15
    { &hf_rrlp_futureEventNoted_01,
11557
15
      { "futureEventNoted", "rrlp.futureEventNoted",
11558
15
        FT_BYTES, BASE_NONE, NULL, 0,
11559
15
        "BIT_STRING_SIZE_32", HFILL }},
11560
15
    { &hf_rrlp_DGPSCorrectionsValidityPeriod_item,
11561
15
      { "DGPSExtensionSatElement", "rrlp.DGPSExtensionSatElement_element",
11562
15
        FT_NONE, BASE_NONE, NULL, 0,
11563
15
        NULL, HFILL }},
11564
15
    { &hf_rrlp_gpsWeekCycleNumber,
11565
15
      { "gpsWeekCycleNumber", "rrlp.gpsWeekCycleNumber",
11566
15
        FT_UINT32, BASE_DEC, NULL, 0,
11567
15
        "INTEGER_0_7", HFILL }},
11568
15
    { &hf_rrlp_GPSAcquisAssist_R10_Ext_item,
11569
15
      { "GPSAcquisAssist-R10-Ext-Element", "rrlp.GPSAcquisAssist_R10_Ext_Element_element",
11570
15
        FT_NONE, BASE_NONE, NULL, 0,
11571
15
        NULL, HFILL }},
11572
15
    { &hf_rrlp_acquisList_01,
11573
15
      { "acquisList", "rrlp.acquisList",
11574
15
        FT_UINT32, BASE_DEC, NULL, 0,
11575
15
        "SeqOfGPSAcquisAssist_R12_Ext", HFILL }},
11576
15
    { &hf_rrlp_SeqOfGPSAcquisAssist_R12_Ext_item,
11577
15
      { "GPSAcquisAssist-R12-Ext-Element", "rrlp.GPSAcquisAssist_R12_Ext_Element_element",
11578
15
        FT_NONE, BASE_NONE, NULL, 0,
11579
15
        NULL, HFILL }},
11580
15
    { &hf_rrlp_dopplerUncertaintyExt_01,
11581
15
      { "dopplerUncertaintyExt", "rrlp.dopplerUncertaintyExt",
11582
15
        FT_UINT32, BASE_DEC, VALS(rrlp_T_dopplerUncertaintyExt_01_vals), 0,
11583
15
        "T_dopplerUncertaintyExt_01", HFILL }},
11584
15
    { &hf_rrlp_velEstimate,
11585
15
      { "velEstimate", "rrlp.velEstimate",
11586
15
        FT_BYTES, BASE_NONE, NULL, 0,
11587
15
        "VelocityEstimate", HFILL }},
11588
15
    { &hf_rrlp_ganssLocationInfo,
11589
15
      { "ganssLocationInfo", "rrlp.ganssLocationInfo_element",
11590
15
        FT_NONE, BASE_NONE, NULL, 0,
11591
15
        NULL, HFILL }},
11592
15
    { &hf_rrlp_ganssMeasureInfo,
11593
15
      { "ganssMeasureInfo", "rrlp.ganssMeasureInfo_element",
11594
15
        FT_NONE, BASE_NONE, NULL, 0,
11595
15
        NULL, HFILL }},
11596
15
    { &hf_rrlp_referenceFrame,
11597
15
      { "referenceFrame", "rrlp.referenceFrame_element",
11598
15
        FT_NONE, BASE_NONE, NULL, 0,
11599
15
        NULL, HFILL }},
11600
15
    { &hf_rrlp_ganssTODm,
11601
15
      { "ganssTODm", "rrlp.ganssTODm",
11602
15
        FT_UINT32, BASE_DEC, NULL, 0,
11603
15
        NULL, HFILL }},
11604
15
    { &hf_rrlp_ganssTODFrac,
11605
15
      { "ganssTODFrac", "rrlp.ganssTODFrac",
11606
15
        FT_UINT32, BASE_DEC, NULL, 0,
11607
15
        "INTEGER_0_16384", HFILL }},
11608
15
    { &hf_rrlp_posData,
11609
15
      { "posData", "rrlp.posData",
11610
15
        FT_BYTES, BASE_NONE, NULL, 0,
11611
15
        "PositionData", HFILL }},
11612
15
    { &hf_rrlp_stationaryIndication,
11613
15
      { "stationaryIndication", "rrlp.stationaryIndication",
11614
15
        FT_UINT32, BASE_DEC, NULL, 0,
11615
15
        "INTEGER_0_1", HFILL }},
11616
15
    { &hf_rrlp_referenceFN,
11617
15
      { "referenceFN", "rrlp.referenceFN",
11618
15
        FT_UINT32, BASE_DEC, NULL, 0,
11619
15
        "INTEGER_0_65535", HFILL }},
11620
15
    { &hf_rrlp_referenceFNMSB,
11621
15
      { "referenceFNMSB", "rrlp.referenceFNMSB",
11622
15
        FT_UINT32, BASE_DEC, NULL, 0,
11623
15
        "INTEGER_0_63", HFILL }},
11624
15
    { &hf_rrlp_ganssMsrSetList,
11625
15
      { "ganssMsrSetList", "rrlp.ganssMsrSetList",
11626
15
        FT_UINT32, BASE_DEC, NULL, 0,
11627
15
        "SeqOfGANSS_MsrSetElement", HFILL }},
11628
15
    { &hf_rrlp_SeqOfGANSS_MsrSetElement_item,
11629
15
      { "GANSS-MsrSetElement", "rrlp.GANSS_MsrSetElement_element",
11630
15
        FT_NONE, BASE_NONE, NULL, 0,
11631
15
        NULL, HFILL }},
11632
15
    { &hf_rrlp_deltaGANSSTOD,
11633
15
      { "deltaGANSSTOD", "rrlp.deltaGANSSTOD",
11634
15
        FT_UINT32, BASE_DEC, NULL, 0,
11635
15
        "INTEGER_0_127", HFILL }},
11636
15
    { &hf_rrlp_ganss_MsrElementList,
11637
15
      { "ganss-MsrElementList", "rrlp.ganss_MsrElementList",
11638
15
        FT_UINT32, BASE_DEC, NULL, 0,
11639
15
        "SeqOfGANSS_MsrElement", HFILL }},
11640
15
    { &hf_rrlp_SeqOfGANSS_MsrElement_item,
11641
15
      { "GANSS-MsrElement", "rrlp.GANSS_MsrElement_element",
11642
15
        FT_NONE, BASE_NONE, NULL, 0,
11643
15
        NULL, HFILL }},
11644
15
    { &hf_rrlp_ganss_SgnTypeList,
11645
15
      { "ganss-SgnTypeList", "rrlp.ganss_SgnTypeList",
11646
15
        FT_UINT32, BASE_DEC, NULL, 0,
11647
15
        "SeqOfGANSS_SgnTypeElement", HFILL }},
11648
15
    { &hf_rrlp_SeqOfGANSS_SgnTypeElement_item,
11649
15
      { "GANSS-SgnTypeElement", "rrlp.GANSS_SgnTypeElement_element",
11650
15
        FT_NONE, BASE_NONE, NULL, 0,
11651
15
        NULL, HFILL }},
11652
15
    { &hf_rrlp_ganssCodePhaseAmbiguity,
11653
15
      { "ganssCodePhaseAmbiguity", "rrlp.ganssCodePhaseAmbiguity",
11654
15
        FT_UINT32, BASE_DEC, NULL, 0,
11655
15
        "INTEGER_0_127", HFILL }},
11656
15
    { &hf_rrlp_ganss_SgnList,
11657
15
      { "ganss-SgnList", "rrlp.ganss_SgnList",
11658
15
        FT_UINT32, BASE_DEC, NULL, 0,
11659
15
        "SeqOfGANSS_SgnElement", HFILL }},
11660
15
    { &hf_rrlp_SeqOfGANSS_SgnElement_item,
11661
15
      { "GANSS-SgnElement", "rrlp.GANSS_SgnElement_element",
11662
15
        FT_NONE, BASE_NONE, NULL, 0,
11663
15
        NULL, HFILL }},
11664
15
    { &hf_rrlp_mpathDet,
11665
15
      { "mpathDet", "rrlp.mpathDet",
11666
15
        FT_UINT32, BASE_DEC, VALS(rrlp_MpathIndic_vals), 0,
11667
15
        "MpathIndic", HFILL }},
11668
15
    { &hf_rrlp_carrierQualityInd,
11669
15
      { "carrierQualityInd", "rrlp.carrierQualityInd",
11670
15
        FT_UINT32, BASE_DEC, NULL, 0,
11671
15
        "INTEGER_0_3", HFILL }},
11672
15
    { &hf_rrlp_codePhase_01,
11673
15
      { "codePhase", "rrlp.codePhase",
11674
15
        FT_UINT32, BASE_DEC, NULL, 0,
11675
15
        "INTEGER_0_2097151", HFILL }},
11676
15
    { &hf_rrlp_integerCodePhase,
11677
15
      { "integerCodePhase", "rrlp.integerCodePhase",
11678
15
        FT_UINT32, BASE_DEC, NULL, 0,
11679
15
        "INTEGER_0_127", HFILL }},
11680
15
    { &hf_rrlp_codePhaseRMSError,
11681
15
      { "codePhaseRMSError", "rrlp.codePhaseRMSError",
11682
15
        FT_UINT32, BASE_DEC, NULL, 0,
11683
15
        "INTEGER_0_63", HFILL }},
11684
15
    { &hf_rrlp_adr,
11685
15
      { "adr", "rrlp.adr",
11686
15
        FT_UINT32, BASE_DEC, NULL, 0,
11687
15
        "INTEGER_0_33554431", HFILL }},
11688
15
    { &hf_rrlp_dbds_RefTime_r12,
11689
15
      { "dbds-RefTime-r12", "rrlp.dbds_RefTime_r12",
11690
15
        FT_UINT32, BASE_DEC, NULL, 0,
11691
15
        "INTEGER_0_3599", HFILL }},
11692
15
    { &hf_rrlp_bds_SgnTypeList_r12,
11693
15
      { "bds-SgnTypeList-r12", "rrlp.bds_SgnTypeList_r12",
11694
15
        FT_UINT32, BASE_DEC, NULL, 0,
11695
15
        NULL, HFILL }},
11696
15
    { &hf_rrlp_BDS_SgnTypeList_r12_item,
11697
15
      { "BDS-SgnTypeElement-r12", "rrlp.BDS_SgnTypeElement_r12_element",
11698
15
        FT_NONE, BASE_NONE, NULL, 0,
11699
15
        NULL, HFILL }},
11700
15
    { &hf_rrlp_dbds_CorrectionList_r12,
11701
15
      { "dbds-CorrectionList-r12", "rrlp.dbds_CorrectionList_r12",
11702
15
        FT_UINT32, BASE_DEC, NULL, 0,
11703
15
        NULL, HFILL }},
11704
15
    { &hf_rrlp_DBDS_CorrectionList_r12_item,
11705
15
      { "DBDS-CorrectionElement-r12", "rrlp.DBDS_CorrectionElement_r12_element",
11706
15
        FT_NONE, BASE_NONE, NULL, 0,
11707
15
        NULL, HFILL }},
11708
15
    { &hf_rrlp_bds_UDREI_r12,
11709
15
      { "bds-UDREI-r12", "rrlp.bds_UDREI_r12",
11710
15
        FT_UINT32, BASE_DEC, NULL, 0,
11711
15
        "INTEGER_0_15", HFILL }},
11712
15
    { &hf_rrlp_bds_RURAI_r12,
11713
15
      { "bds-RURAI-r12", "rrlp.bds_RURAI_r12",
11714
15
        FT_UINT32, BASE_DEC, NULL, 0,
11715
15
        "INTEGER_0_15", HFILL }},
11716
15
    { &hf_rrlp_bds_ECC_DeltaT_r12,
11717
15
      { "bds-ECC-DeltaT-r12", "rrlp.bds_ECC_DeltaT_r12",
11718
15
        FT_INT32, BASE_DEC, NULL, 0,
11719
15
        "INTEGER_M4096_4095", HFILL }},
11720
15
    { &hf_rrlp_bds_RefTime_r12,
11721
15
      { "bds-RefTime-r12", "rrlp.bds_RefTime_r12",
11722
15
        FT_UINT32, BASE_DEC, NULL, 0,
11723
15
        "INTEGER_0_3599", HFILL }},
11724
15
    { &hf_rrlp_gridIonList_r12,
11725
15
      { "gridIonList-r12", "rrlp.gridIonList_r12",
11726
15
        FT_UINT32, BASE_DEC, NULL, 0,
11727
15
        NULL, HFILL }},
11728
15
    { &hf_rrlp_GridIonList_r12_item,
11729
15
      { "GridIonElement-r12", "rrlp.GridIonElement_r12_element",
11730
15
        FT_NONE, BASE_NONE, NULL, 0,
11731
15
        NULL, HFILL }},
11732
15
    { &hf_rrlp_igp_ID_r12,
11733
15
      { "igp-ID-r12", "rrlp.igp_ID_r12",
11734
15
        FT_UINT32, BASE_DEC, NULL, 0,
11735
15
        "INTEGER_1_320", HFILL }},
11736
15
    { &hf_rrlp_dt_r12,
11737
15
      { "dt-r12", "rrlp.dt_r12",
11738
15
        FT_UINT32, BASE_DEC, NULL, 0,
11739
15
        "INTEGER_0_511", HFILL }},
11740
15
    { &hf_rrlp_givei_r12,
11741
15
      { "givei-r12", "rrlp.givei_r12",
11742
15
        FT_UINT32, BASE_DEC, NULL, 0,
11743
15
        "INTEGER_0_15", HFILL }},
11744
15
    { &hf_rrlp_nonGANSSpositionMethods,
11745
15
      { "nonGANSSpositionMethods", "rrlp.nonGANSSpositionMethods",
11746
15
        FT_BYTES, BASE_NONE, NULL, 0,
11747
15
        NULL, HFILL }},
11748
15
    { &hf_rrlp_multipleMeasurementSets,
11749
15
      { "multipleMeasurementSets", "rrlp.multipleMeasurementSets",
11750
15
        FT_BYTES, BASE_NONE, NULL, 0,
11751
15
        NULL, HFILL }},
11752
15
    { &hf_rrlp_GANSSPositionMethods_item,
11753
15
      { "GANSSPositionMethod", "rrlp.GANSSPositionMethod_element",
11754
15
        FT_NONE, BASE_NONE, NULL, 0,
11755
15
        NULL, HFILL }},
11756
15
    { &hf_rrlp_gANSSPositioningMethodTypes,
11757
15
      { "gANSSPositioningMethodTypes", "rrlp.gANSSPositioningMethodTypes",
11758
15
        FT_BYTES, BASE_NONE, NULL, 0,
11759
15
        NULL, HFILL }},
11760
15
    { &hf_rrlp_gANSSSignals,
11761
15
      { "gANSSSignals", "rrlp.gANSSSignals",
11762
15
        FT_BYTES, BASE_NONE, NULL, 0,
11763
15
        NULL, HFILL }},
11764
15
    { &hf_rrlp_sbasID,
11765
15
      { "sbasID", "rrlp.sbasID",
11766
15
        FT_BYTES, BASE_NONE, NULL, 0,
11767
15
        NULL, HFILL }},
11768
15
    { &hf_rrlp_gpsAssistance,
11769
15
      { "gpsAssistance", "rrlp.gpsAssistance",
11770
15
        FT_BYTES, BASE_NONE, NULL, 0,
11771
15
        NULL, HFILL }},
11772
15
    { &hf_rrlp_gANSSAssistanceSet,
11773
15
      { "gANSSAssistanceSet", "rrlp.gANSSAssistanceSet_element",
11774
15
        FT_NONE, BASE_NONE, NULL, 0,
11775
15
        NULL, HFILL }},
11776
15
    { &hf_rrlp_gANSSAdditionalAssistanceChoices,
11777
15
      { "gANSSAdditionalAssistanceChoices", "rrlp.gANSSAdditionalAssistanceChoices",
11778
15
        FT_UINT32, BASE_DEC, NULL, 0,
11779
15
        NULL, HFILL }},
11780
15
    { &hf_rrlp_commonGANSSAssistance,
11781
15
      { "commonGANSSAssistance", "rrlp.commonGANSSAssistance",
11782
15
        FT_BYTES, BASE_NONE, NULL, 0,
11783
15
        NULL, HFILL }},
11784
15
    { &hf_rrlp_specificGANSSAssistance,
11785
15
      { "specificGANSSAssistance", "rrlp.specificGANSSAssistance",
11786
15
        FT_UINT32, BASE_DEC, NULL, 0,
11787
15
        NULL, HFILL }},
11788
15
    { &hf_rrlp_SpecificGANSSAssistance_item,
11789
15
      { "GANSSAssistanceForOneGANSS", "rrlp.GANSSAssistanceForOneGANSS_element",
11790
15
        FT_NONE, BASE_NONE, NULL, 0,
11791
15
        NULL, HFILL }},
11792
15
    { &hf_rrlp_gANSSAssistance,
11793
15
      { "gANSSAssistance", "rrlp.gANSSAssistance",
11794
15
        FT_BYTES, BASE_NONE, NULL, 0,
11795
15
        NULL, HFILL }},
11796
15
    { &hf_rrlp_GANSSAdditionalAssistanceChoices_item,
11797
15
      { "GANSSAdditionalAssistanceChoicesForOneGANSS", "rrlp.GANSSAdditionalAssistanceChoicesForOneGANSS_element",
11798
15
        FT_NONE, BASE_NONE, NULL, 0,
11799
15
        NULL, HFILL }},
11800
15
    { &hf_rrlp_ganssClockModelChoice,
11801
15
      { "ganssClockModelChoice", "rrlp.ganssClockModelChoice",
11802
15
        FT_BYTES, BASE_NONE, NULL, 0,
11803
15
        "GANSSModelID", HFILL }},
11804
15
    { &hf_rrlp_gannsOrbitModelChoice,
11805
15
      { "gannsOrbitModelChoice", "rrlp.gannsOrbitModelChoice",
11806
15
        FT_BYTES, BASE_NONE, NULL, 0,
11807
15
        "GANSSModelID", HFILL }},
11808
15
    { &hf_rrlp_ganssAlmanacModelChoice,
11809
15
      { "ganssAlmanacModelChoice", "rrlp.ganssAlmanacModelChoice",
11810
15
        FT_BYTES, BASE_NONE, NULL, 0,
11811
15
        "GANSSModelID", HFILL }},
11812
15
    { &hf_rrlp_ganssAdditionalUTCModelChoice,
11813
15
      { "ganssAdditionalUTCModelChoice", "rrlp.ganssAdditionalUTCModelChoice",
11814
15
        FT_BYTES, BASE_NONE, NULL, 0,
11815
15
        "GANSSModelID", HFILL }},
11816
15
    { &hf_rrlp_cellSet1,
11817
15
      { "cellSet1", "rrlp.cellSet1_element",
11818
15
        FT_NONE, BASE_NONE, NULL, 0,
11819
15
        "CellSet", HFILL }},
11820
15
    { &hf_rrlp_cellSet2,
11821
15
      { "cellSet2", "rrlp.cellSet2_element",
11822
15
        FT_NONE, BASE_NONE, NULL, 0,
11823
15
        "CellSet", HFILL }},
11824
15
    { &hf_rrlp_cellSet3,
11825
15
      { "cellSet3", "rrlp.cellSet3_element",
11826
15
        FT_NONE, BASE_NONE, NULL, 0,
11827
15
        "CellSet", HFILL }},
11828
15
    { &hf_rrlp_cellSet4,
11829
15
      { "cellSet4", "rrlp.cellSet4_element",
11830
15
        FT_NONE, BASE_NONE, NULL, 0,
11831
15
        "CellSet", HFILL }},
11832
15
    { &hf_rrlp_cellSet5,
11833
15
      { "cellSet5", "rrlp.cellSet5_element",
11834
15
        FT_NONE, BASE_NONE, NULL, 0,
11835
15
        "CellSet", HFILL }},
11836
15
    { &hf_rrlp_cellSet6,
11837
15
      { "cellSet6", "rrlp.cellSet6_element",
11838
15
        FT_NONE, BASE_NONE, NULL, 0,
11839
15
        "CellSet", HFILL }},
11840
15
    { &hf_rrlp_cellSet7,
11841
15
      { "cellSet7", "rrlp.cellSet7_element",
11842
15
        FT_NONE, BASE_NONE, NULL, 0,
11843
15
        "CellSet", HFILL }},
11844
15
    { &hf_rrlp_cellSet8,
11845
15
      { "cellSet8", "rrlp.cellSet8_element",
11846
15
        FT_NONE, BASE_NONE, NULL, 0,
11847
15
        "CellSet", HFILL }},
11848
15
    { &hf_rrlp_cell1,
11849
15
      { "cell1", "rrlp.cell1_element",
11850
15
        FT_NONE, BASE_NONE, NULL, 0,
11851
15
        "CellInfo", HFILL }},
11852
15
    { &hf_rrlp_cell2,
11853
15
      { "cell2", "rrlp.cell2_element",
11854
15
        FT_NONE, BASE_NONE, NULL, 0,
11855
15
        "CellInfo", HFILL }},
11856
15
    { &hf_rrlp_cell3,
11857
15
      { "cell3", "rrlp.cell3_element",
11858
15
        FT_NONE, BASE_NONE, NULL, 0,
11859
15
        "CellInfo", HFILL }},
11860
15
    { &hf_rrlp_cell4,
11861
15
      { "cell4", "rrlp.cell4_element",
11862
15
        FT_NONE, BASE_NONE, NULL, 0,
11863
15
        "CellInfo", HFILL }},
11864
15
    { &hf_rrlp_cell5,
11865
15
      { "cell5", "rrlp.cell5_element",
11866
15
        FT_NONE, BASE_NONE, NULL, 0,
11867
15
        "CellInfo", HFILL }},
11868
15
    { &hf_rrlp_cell6,
11869
15
      { "cell6", "rrlp.cell6_element",
11870
15
        FT_NONE, BASE_NONE, NULL, 0,
11871
15
        "CellInfo", HFILL }},
11872
15
    { &hf_rrlp_bsic_01,
11873
15
      { "bsic", "rrlp.bsic",
11874
15
        FT_UINT32, BASE_DEC, NULL, 0,
11875
15
        "INTEGER_0_511", HFILL }},
11876
15
    { &hf_rrlp_arfcn,
11877
15
      { "arfcn", "rrlp.arfcn",
11878
15
        FT_UINT32, BASE_DEC, NULL, 0,
11879
15
        "INTEGER_0_1023", HFILL }},
11880
15
    { &hf_rrlp_oTDMeasurementInfo1,
11881
15
      { "oTDMeasurementInfo1", "rrlp.oTDMeasurementInfo1_element",
11882
15
        FT_NONE, BASE_NONE, NULL, 0,
11883
15
        "OTDMeasurementInfo", HFILL }},
11884
15
    { &hf_rrlp_oTDMeasurementInfo2,
11885
15
      { "oTDMeasurementInfo2", "rrlp.oTDMeasurementInfo2_element",
11886
15
        FT_NONE, BASE_NONE, NULL, 0,
11887
15
        "OTDMeasurementInfo", HFILL }},
11888
15
    { &hf_rrlp_oTDMeasurementInfo3,
11889
15
      { "oTDMeasurementInfo3", "rrlp.oTDMeasurementInfo3_element",
11890
15
        FT_NONE, BASE_NONE, NULL, 0,
11891
15
        "OTDMeasurementInfo", HFILL }},
11892
15
    { &hf_rrlp_oTDMeasurementInfo4,
11893
15
      { "oTDMeasurementInfo4", "rrlp.oTDMeasurementInfo4_element",
11894
15
        FT_NONE, BASE_NONE, NULL, 0,
11895
15
        "OTDMeasurementInfo", HFILL }},
11896
15
    { &hf_rrlp_oTDMeasurementInfo5,
11897
15
      { "oTDMeasurementInfo5", "rrlp.oTDMeasurementInfo5_element",
11898
15
        FT_NONE, BASE_NONE, NULL, 0,
11899
15
        "OTDMeasurementInfo", HFILL }},
11900
15
    { &hf_rrlp_oTDMeasurementInfo6,
11901
15
      { "oTDMeasurementInfo6", "rrlp.oTDMeasurementInfo6_element",
11902
15
        FT_NONE, BASE_NONE, NULL, 0,
11903
15
        "OTDMeasurementInfo", HFILL }},
11904
15
    { &hf_rrlp_oTDMeasurementInfo7,
11905
15
      { "oTDMeasurementInfo7", "rrlp.oTDMeasurementInfo7_element",
11906
15
        FT_NONE, BASE_NONE, NULL, 0,
11907
15
        "OTDMeasurementInfo", HFILL }},
11908
15
    { &hf_rrlp_reportedCell,
11909
15
      { "reportedCell", "rrlp.reportedCell",
11910
15
        FT_UINT32, BASE_DEC, VALS(rrlp_CellType_vals), 0,
11911
15
        "CellType", HFILL }},
11912
15
    { &hf_rrlp_msSyncAccuracy,
11913
15
      { "msSyncAccuracy", "rrlp.msSyncAccuracy",
11914
15
        FT_UINT32, BASE_DEC, NULL, 0,
11915
15
        "INTEGER_0_15", HFILL }},
11916
15
    { &hf_rrlp_observedTimeDiff,
11917
15
      { "observedTimeDiff", "rrlp.observedTimeDiff",
11918
15
        FT_UINT32, BASE_DEC, NULL, 0,
11919
15
        "INTEGER_0_999", HFILL }},
11920
15
    { &hf_rrlp_configuredNeighbourCellIdx,
11921
15
      { "configuredNeighbourCellIdx", "rrlp.configuredNeighbourCellIdx",
11922
15
        FT_UINT32, BASE_DEC, NULL, 0,
11923
15
        "INTEGER_1_48", HFILL }},
11924
15
    { &hf_rrlp_detectedNeighbourCell,
11925
15
      { "detectedNeighbourCell", "rrlp.detectedNeighbourCell_element",
11926
15
        FT_NONE, BASE_NONE, NULL, 0,
11927
15
        "CellInfo", HFILL }},
11928
15
    { &hf_rrlp_rxLEVMeasurementInfo1,
11929
15
      { "rxLEVMeasurementInfo1", "rrlp.rxLEVMeasurementInfo1_element",
11930
15
        FT_NONE, BASE_NONE, NULL, 0,
11931
15
        "RXLEVMeasurementInfo", HFILL }},
11932
15
    { &hf_rrlp_rxLEVMeasurementInfo2,
11933
15
      { "rxLEVMeasurementInfo2", "rrlp.rxLEVMeasurementInfo2_element",
11934
15
        FT_NONE, BASE_NONE, NULL, 0,
11935
15
        "RXLEVMeasurementInfo", HFILL }},
11936
15
    { &hf_rrlp_rxLEVMeasurementInfo3,
11937
15
      { "rxLEVMeasurementInfo3", "rrlp.rxLEVMeasurementInfo3_element",
11938
15
        FT_NONE, BASE_NONE, NULL, 0,
11939
15
        "RXLEVMeasurementInfo", HFILL }},
11940
15
    { &hf_rrlp_rxLEVMeasurementInfo4,
11941
15
      { "rxLEVMeasurementInfo4", "rrlp.rxLEVMeasurementInfo4_element",
11942
15
        FT_NONE, BASE_NONE, NULL, 0,
11943
15
        "RXLEVMeasurementInfo", HFILL }},
11944
15
    { &hf_rrlp_rxLEVMeasurementInfo5,
11945
15
      { "rxLEVMeasurementInfo5", "rrlp.rxLEVMeasurementInfo5_element",
11946
15
        FT_NONE, BASE_NONE, NULL, 0,
11947
15
        "RXLEVMeasurementInfo", HFILL }},
11948
15
    { &hf_rrlp_rxLEVMeasurementInfo6,
11949
15
      { "rxLEVMeasurementInfo6", "rrlp.rxLEVMeasurementInfo6_element",
11950
15
        FT_NONE, BASE_NONE, NULL, 0,
11951
15
        "RXLEVMeasurementInfo", HFILL }},
11952
15
    { &hf_rrlp_rxLEV,
11953
15
      { "rxLEV", "rrlp.rxLEV",
11954
15
        FT_UINT32, BASE_DEC, NULL, 0,
11955
15
        "INTEGER_0_63", HFILL }},
11956
15
    { &hf_rrlp_rlc_Data_Block,
11957
15
      { "rlc-Data-Block", "rrlp.rlc_Data_Block_element",
11958
15
        FT_NONE, BASE_NONE, NULL, 0,
11959
15
        NULL, HFILL }},
11960
15
    { &hf_rrlp_access_Burst,
11961
15
      { "access-Burst", "rrlp.access_Burst_element",
11962
15
        FT_NONE, BASE_NONE, NULL, 0,
11963
15
        NULL, HFILL }},
11964
15
    { &hf_rrlp_extended_Access_Burst,
11965
15
      { "extended-Access-Burst", "rrlp.extended_Access_Burst_element",
11966
15
        FT_NONE, BASE_NONE, NULL, 0,
11967
15
        NULL, HFILL }},
11968
15
    { &hf_rrlp_spare,
11969
15
      { "spare", "rrlp.spare_element",
11970
15
        FT_NONE, BASE_NONE, NULL, 0,
11971
15
        NULL, HFILL }},
11972
15
    { &hf_rrlp_random_ID1,
11973
15
      { "random-ID1", "rrlp.random_ID1",
11974
15
        FT_UINT32, BASE_DEC, NULL, 0,
11975
15
        "INTEGER_0_65535", HFILL }},
11976
15
    { &hf_rrlp_random_ID2,
11977
15
      { "random-ID2", "rrlp.random_ID2",
11978
15
        FT_UINT32, BASE_DEC, NULL, 0,
11979
15
        "INTEGER_0_65535", HFILL }},
11980
15
    { &hf_rrlp_random_ID3,
11981
15
      { "random-ID3", "rrlp.random_ID3",
11982
15
        FT_UINT32, BASE_DEC, NULL, 0,
11983
15
        "INTEGER_0_65535", HFILL }},
11984
15
    { &hf_rrlp_random_ID4,
11985
15
      { "random-ID4", "rrlp.random_ID4",
11986
15
        FT_UINT32, BASE_DEC, NULL, 0,
11987
15
        "INTEGER_0_65535", HFILL }},
11988
15
    { &hf_rrlp_random_ID5,
11989
15
      { "random-ID5", "rrlp.random_ID5",
11990
15
        FT_UINT32, BASE_DEC, NULL, 0,
11991
15
        "INTEGER_0_65535", HFILL }},
11992
15
    { &hf_rrlp_random_ID6,
11993
15
      { "random-ID6", "rrlp.random_ID6",
11994
15
        FT_UINT32, BASE_DEC, NULL, 0,
11995
15
        "INTEGER_0_65535", HFILL }},
11996
15
    { &hf_rrlp_random_ID7,
11997
15
      { "random-ID7", "rrlp.random_ID7",
11998
15
        FT_UINT32, BASE_DEC, NULL, 0,
11999
15
        "INTEGER_0_65535", HFILL }},
12000
15
    { &hf_rrlp_random_ID8,
12001
15
      { "random-ID8", "rrlp.random_ID8",
12002
15
        FT_UINT32, BASE_DEC, NULL, 0,
12003
15
        "INTEGER_0_65535", HFILL }},
12004
15
    { &hf_rrlp_random_ID9,
12005
15
      { "random-ID9", "rrlp.random_ID9",
12006
15
        FT_UINT32, BASE_DEC, NULL, 0,
12007
15
        "INTEGER_0_65535", HFILL }},
12008
15
    { &hf_rrlp_short_BSS_ID,
12009
15
      { "short-BSS-ID", "rrlp.short_BSS_ID",
12010
15
        FT_UINT32, BASE_DEC, NULL, 0,
12011
15
        "INTEGER_0_7", HFILL }},
12012
15
    { &hf_rrlp_co_sited_cell_Set_Member1,
12013
15
      { "co-sited-cell-Set-Member1", "rrlp.co_sited_cell_Set_Member1_element",
12014
15
        FT_NONE, BASE_NONE, NULL, 0,
12015
15
        "Co_Sited_Cell_Set_Member", HFILL }},
12016
15
    { &hf_rrlp_co_sited_cell_set_Member2,
12017
15
      { "co-sited-cell-set-Member2", "rrlp.co_sited_cell_set_Member2_element",
12018
15
        FT_NONE, BASE_NONE, NULL, 0,
12019
15
        "Co_Sited_Cell_Set_Member", HFILL }},
12020
15
    { &hf_rrlp_co_sited_cell_set_Member3,
12021
15
      { "co-sited-cell-set-Member3", "rrlp.co_sited_cell_set_Member3_element",
12022
15
        FT_NONE, BASE_NONE, NULL, 0,
12023
15
        "Co_Sited_Cell_Set_Member", HFILL }},
12024
15
    { &hf_rrlp_co_sited_cell_set_Member4,
12025
15
      { "co-sited-cell-set-Member4", "rrlp.co_sited_cell_set_Member4_element",
12026
15
        FT_NONE, BASE_NONE, NULL, 0,
12027
15
        "Co_Sited_Cell_Set_Member", HFILL }},
12028
15
    { &hf_rrlp_co_sited_cell_set_Member5,
12029
15
      { "co-sited-cell-set-Member5", "rrlp.co_sited_cell_set_Member5_element",
12030
15
        FT_NONE, BASE_NONE, NULL, 0,
12031
15
        "Co_Sited_Cell_Set_Member", HFILL }},
12032
15
    { &hf_rrlp_co_sited_cell_set_Member6,
12033
15
      { "co-sited-cell-set-Member6", "rrlp.co_sited_cell_set_Member6_element",
12034
15
        FT_NONE, BASE_NONE, NULL, 0,
12035
15
        "Co_Sited_Cell_Set_Member", HFILL }},
12036
15
    { &hf_rrlp_bsic_Info,
12037
15
      { "bsic-Info", "rrlp.bsic_Info_element",
12038
15
        FT_NONE, BASE_NONE, NULL, 0,
12039
15
        NULL, HFILL }},
12040
15
    { &hf_rrlp_cell_Set_Member1,
12041
15
      { "cell-Set-Member1", "rrlp.cell_Set_Member1_element",
12042
15
        FT_NONE, BASE_NONE, NULL, 0,
12043
15
        "Cell_Set_Member", HFILL }},
12044
15
    { &hf_rrlp_cell_set_Member2,
12045
15
      { "cell-set-Member2", "rrlp.cell_set_Member2_element",
12046
15
        FT_NONE, BASE_NONE, NULL, 0,
12047
15
        "Cell_Set_Member", HFILL }},
12048
15
    { &hf_rrlp_cell_set_Member3,
12049
15
      { "cell-set-Member3", "rrlp.cell_set_Member3_element",
12050
15
        FT_NONE, BASE_NONE, NULL, 0,
12051
15
        "Cell_Set_Member", HFILL }},
12052
15
    { &hf_rrlp_cell_set_Member4,
12053
15
      { "cell-set-Member4", "rrlp.cell_set_Member4_element",
12054
15
        FT_NONE, BASE_NONE, NULL, 0,
12055
15
        "Cell_Set_Member", HFILL }},
12056
15
    { &hf_rrlp_cell_set_Member5,
12057
15
      { "cell-set-Member5", "rrlp.cell_set_Member5_element",
12058
15
        FT_NONE, BASE_NONE, NULL, 0,
12059
15
        "Cell_Set_Member", HFILL }},
12060
15
    { &hf_rrlp_cell_set_Member6,
12061
15
      { "cell-set-Member6", "rrlp.cell_set_Member6_element",
12062
15
        FT_NONE, BASE_NONE, NULL, 0,
12063
15
        "Cell_Set_Member", HFILL }},
12064
15
    { &hf_rrlp_short_ID,
12065
15
      { "short-ID", "rrlp.short_ID",
12066
15
        FT_UINT32, BASE_DEC, NULL, 0,
12067
15
        "INTEGER_0_255", HFILL }},
12068
15
    { &hf_rrlp_ec_cell_information,
12069
15
      { "ec-cell-information", "rrlp.ec_cell_information",
12070
15
        FT_UINT32, BASE_DEC, VALS(rrlp_T_ec_cell_information_vals), 0,
12071
15
        NULL, HFILL }},
12072
15
    { &hf_rrlp_ec_RACH_Control_Parameters,
12073
15
      { "ec-RACH-Control-Parameters", "rrlp.ec_RACH_Control_Parameters_element",
12074
15
        FT_NONE, BASE_NONE, NULL, 0,
12075
15
        NULL, HFILL }},
12076
15
    { &hf_rrlp_default_ec_RACH_Control_Parameters,
12077
15
      { "default-ec-RACH-Control-Parameters", "rrlp.default_ec_RACH_Control_Parameters_element",
12078
15
        FT_NONE, BASE_NONE, NULL, 0,
12079
15
        NULL, HFILL }},
12080
15
    { &hf_rrlp_peo_cell_information,
12081
15
      { "peo-cell-information", "rrlp.peo_cell_information",
12082
15
        FT_UINT32, BASE_DEC, VALS(rrlp_T_peo_cell_information_vals), 0,
12083
15
        NULL, HFILL }},
12084
15
    { &hf_rrlp_rach_Control_Parameters,
12085
15
      { "rach-Control-Parameters", "rrlp.rach_Control_Parameters_element",
12086
15
        FT_NONE, BASE_NONE, NULL, 0,
12087
15
        NULL, HFILL }},
12088
15
    { &hf_rrlp_default_rach_Control_Parameters,
12089
15
      { "default-rach-Control-Parameters", "rrlp.default_rach_Control_Parameters_element",
12090
15
        FT_NONE, BASE_NONE, NULL, 0,
12091
15
        NULL, HFILL }},
12092
15
    { &hf_rrlp_radio_Frequency_Colour_Code,
12093
15
      { "radio-Frequency-Colour-Code", "rrlp.radio_Frequency_Colour_Code",
12094
15
        FT_UINT32, BASE_DEC, NULL, 0,
12095
15
        "INTEGER_0_7", HFILL }},
12096
15
    { &hf_rrlp_network_Colour_Code,
12097
15
      { "network-Colour-Code", "rrlp.network_Colour_Code",
12098
15
        FT_UINT32, BASE_DEC, NULL, 0,
12099
15
        "INTEGER_0_7", HFILL }},
12100
15
    { &hf_rrlp_base_station_Colour_Code,
12101
15
      { "base-station-Colour-Code", "rrlp.base_station_Colour_Code",
12102
15
        FT_UINT32, BASE_DEC, NULL, 0,
12103
15
        "INTEGER_0_7", HFILL }},
12104
15
    { &hf_rrlp_ec_BS_CC_CHANS,
12105
15
      { "ec-BS-CC-CHANS", "rrlp.ec_BS_CC_CHANS",
12106
15
        FT_UINT32, BASE_DEC, NULL, 0,
12107
15
        "INTEGER_0_3", HFILL }},
12108
15
    { &hf_rrlp_ec_RXLEV_ACCESS_MIN,
12109
15
      { "ec-RXLEV-ACCESS-MIN", "rrlp.ec_RXLEV_ACCESS_MIN",
12110
15
        FT_UINT32, BASE_DEC, NULL, 0,
12111
15
        "INTEGER_0_63", HFILL }},
12112
15
    { &hf_rrlp_ms_TXPWR_MAX_CCH,
12113
15
      { "ms-TXPWR-MAX-CCH", "rrlp.ms_TXPWR_MAX_CCH",
12114
15
        FT_UINT32, BASE_DEC, NULL, 0,
12115
15
        "INTEGER_0_31", HFILL }},
12116
15
    { &hf_rrlp_lb_MS_TXPWR_MAX_CCH,
12117
15
      { "lb-MS-TXPWR-MAX-CCH", "rrlp.lb_MS_TXPWR_MAX_CCH",
12118
15
        FT_UINT32, BASE_DEC, NULL, 0,
12119
15
        "INTEGER_0_31", HFILL }},
12120
15
    { &hf_rrlp_cell_SELECTION_RLA_MARGIN,
12121
15
      { "cell-SELECTION-RLA-MARGIN", "rrlp.cell_SELECTION_RLA_MARGIN",
12122
15
        FT_UINT32, BASE_DEC, NULL, 0,
12123
15
        "INTEGER_0_7", HFILL }},
12124
15
    { &hf_rrlp_dl_CC_Selection,
12125
15
      { "dl-CC-Selection", "rrlp.dl_CC_Selection",
12126
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12127
15
        "BOOLEAN", HFILL }},
12128
15
    { &hf_rrlp_bt_Threshold_DL,
12129
15
      { "bt-Threshold-DL", "rrlp.bt_Threshold_DL",
12130
15
        FT_UINT32, BASE_DEC, NULL, 0,
12131
15
        "INTEGER_0_31", HFILL }},
12132
15
    { &hf_rrlp_cc2_Range_DL,
12133
15
      { "cc2-Range-DL", "rrlp.cc2_Range_DL",
12134
15
        FT_UINT32, BASE_DEC, NULL, 0,
12135
15
        "INTEGER_0_31", HFILL }},
12136
15
    { &hf_rrlp_cc3_Range_DL,
12137
15
      { "cc3-Range-DL", "rrlp.cc3_Range_DL",
12138
15
        FT_UINT32, BASE_DEC, NULL, 0,
12139
15
        "INTEGER_0_31", HFILL }},
12140
15
    { &hf_rrlp_bt_Threshold_UL,
12141
15
      { "bt-Threshold-UL", "rrlp.bt_Threshold_UL",
12142
15
        FT_UINT32, BASE_DEC, NULL, 0,
12143
15
        "INTEGER_0_31", HFILL }},
12144
15
    { &hf_rrlp_cc2_Range_UL,
12145
15
      { "cc2-Range-UL", "rrlp.cc2_Range_UL",
12146
15
        FT_UINT32, BASE_DEC, NULL, 0,
12147
15
        "INTEGER_0_31", HFILL }},
12148
15
    { &hf_rrlp_cc3_Range_UL,
12149
15
      { "cc3-Range-UL", "rrlp.cc3_Range_UL",
12150
15
        FT_UINT32, BASE_DEC, NULL, 0,
12151
15
        "INTEGER_0_31", HFILL }},
12152
15
    { &hf_rrlp_cc4_Range_UL,
12153
15
      { "cc4-Range-UL", "rrlp.cc4_Range_UL",
12154
15
        FT_UINT32, BASE_DEC, NULL, 0,
12155
15
        "INTEGER_0_31", HFILL }},
12156
15
    { &hf_rrlp_bsPWR,
12157
15
      { "bsPWR", "rrlp.bsPWR",
12158
15
        FT_UINT32, BASE_DEC, NULL, 0,
12159
15
        "INTEGER_0_63", HFILL }},
12160
15
    { &hf_rrlp_dl_Signal_Strength_Step_Size,
12161
15
      { "dl-Signal-Strength-Step-Size", "rrlp.dl_Signal_Strength_Step_Size",
12162
15
        FT_UINT32, BASE_DEC, NULL, 0,
12163
15
        "INTEGER_0_3", HFILL }},
12164
15
    { &hf_rrlp_ec_Reduced_PDCH_Allocation,
12165
15
      { "ec-Reduced-PDCH-Allocation", "rrlp.ec_Reduced_PDCH_Allocation",
12166
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12167
15
        "BOOLEAN", HFILL }},
12168
15
    { &hf_rrlp_ec_Max_Retrans,
12169
15
      { "ec-Max-Retrans", "rrlp.ec_Max_Retrans",
12170
15
        FT_INT32, BASE_DEC, NULL, 0,
12171
15
        "INTEGER", HFILL }},
12172
15
    { &hf_rrlp_sm,
12173
15
      { "sm", "rrlp.sm",
12174
15
        FT_UINT32, BASE_DEC, NULL, 0,
12175
15
        "INTEGER_0_3", HFILL }},
12176
15
    { &hf_rrlp_tm,
12177
15
      { "tm", "rrlp.tm",
12178
15
        FT_UINT32, BASE_DEC, NULL, 0,
12179
15
        "INTEGER_0_3", HFILL }},
12180
15
    { &hf_rrlp_access_Timeslots,
12181
15
      { "access-Timeslots", "rrlp.access_Timeslots",
12182
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12183
15
        "BOOLEAN", HFILL }},
12184
15
    { &hf_rrlp_alpha,
12185
15
      { "alpha", "rrlp.alpha",
12186
15
        FT_UINT32, BASE_DEC, NULL, 0,
12187
15
        "INTEGER_0_15", HFILL }},
12188
15
    { &hf_rrlp_t3168,
12189
15
      { "t3168", "rrlp.t3168",
12190
15
        FT_UINT32, BASE_DEC, NULL, 0,
12191
15
        "INTEGER_0_7", HFILL }},
12192
15
    { &hf_rrlp_t3192,
12193
15
      { "t3192", "rrlp.t3192",
12194
15
        FT_UINT32, BASE_DEC, NULL, 0,
12195
15
        "INTEGER_0_7", HFILL }},
12196
15
    { &hf_rrlp_t3226,
12197
15
      { "t3226", "rrlp.t3226",
12198
15
        FT_UINT32, BASE_DEC, NULL, 0,
12199
15
        "INTEGER_0_7", HFILL }},
12200
15
    { &hf_rrlp_t3248,
12201
15
      { "t3248", "rrlp.t3248",
12202
15
        FT_UINT32, BASE_DEC, NULL, 0,
12203
15
        "INTEGER_0_3", HFILL }},
12204
15
    { &hf_rrlp_mta_BITMAP,
12205
15
      { "mta-BITMAP", "rrlp.mta_BITMAP_element",
12206
15
        FT_NONE, BASE_NONE, NULL, 0,
12207
15
        NULL, HFILL }},
12208
15
    { &hf_rrlp_rxlev_ACCESS_MIN,
12209
15
      { "rxlev-ACCESS-MIN", "rrlp.rxlev_ACCESS_MIN",
12210
15
        FT_UINT32, BASE_DEC, NULL, 0,
12211
15
        "INTEGER_0_63", HFILL }},
12212
15
    { &hf_rrlp_max_Retrans,
12213
15
      { "max-Retrans", "rrlp.max_Retrans",
12214
15
        FT_UINT32, BASE_DEC, NULL, 0,
12215
15
        "INTEGER_0_3", HFILL }},
12216
15
    { &hf_rrlp_tx_integer,
12217
15
      { "tx-integer", "rrlp.tx_integer",
12218
15
        FT_UINT32, BASE_DEC, NULL, 0,
12219
15
        "INTEGER_0_15", HFILL }},
12220
15
    { &hf_rrlp_mta_RLC_Data_Block_method,
12221
15
      { "mta-RLC-Data-Block-method", "rrlp.mta_RLC_Data_Block_method",
12222
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12223
15
        "BOOLEAN", HFILL }},
12224
15
    { &hf_rrlp_mta_Access_Burst_method,
12225
15
      { "mta-Access-Burst-method", "rrlp.mta_Access_Burst_method",
12226
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12227
15
        "BOOLEAN", HFILL }},
12228
15
    { &hf_rrlp_mta_Extended_Access_Burst_method,
12229
15
      { "mta-Extended-Access-Burst-method", "rrlp.mta_Extended_Access_Burst_method",
12230
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12231
15
        "BOOLEAN", HFILL }},
12232
15
    { &hf_rrlp_mta_spare,
12233
15
      { "mta-spare", "rrlp.mta_spare",
12234
15
        FT_BOOLEAN, BASE_NONE, NULL, 0,
12235
15
        "BOOLEAN", HFILL }},
12236
15
    { &hf_rrlp_mta_access_security_method,
12237
15
      { "mta-access-security-method", "rrlp.mta_access_security_method_element",
12238
15
        FT_NONE, BASE_NONE, NULL, 0,
12239
15
        NULL, HFILL }},
12240
15
    { &hf_rrlp_bss_duplication_detection_method,
12241
15
      { "bss-duplication-detection-method", "rrlp.bss_duplication_detection_method_element",
12242
15
        FT_NONE, BASE_NONE, NULL, 0,
12243
15
        NULL, HFILL }},
12244
15
    { &hf_rrlp_GANSSPositioningMethod_gps,
12245
15
      { "gps", "rrlp.GANSSPositioningMethod.gps",
12246
15
        FT_BOOLEAN, 8, NULL, 0x80,
12247
15
        NULL, HFILL }},
12248
15
    { &hf_rrlp_GANSSPositioningMethod_galileo,
12249
15
      { "galileo", "rrlp.GANSSPositioningMethod.galileo",
12250
15
        FT_BOOLEAN, 8, NULL, 0x40,
12251
15
        NULL, HFILL }},
12252
15
    { &hf_rrlp_GANSSPositioningMethod_sbas,
12253
15
      { "sbas", "rrlp.GANSSPositioningMethod.sbas",
12254
15
        FT_BOOLEAN, 8, NULL, 0x20,
12255
15
        NULL, HFILL }},
12256
15
    { &hf_rrlp_GANSSPositioningMethod_modernizedGPS,
12257
15
      { "modernizedGPS", "rrlp.GANSSPositioningMethod.modernizedGPS",
12258
15
        FT_BOOLEAN, 8, NULL, 0x10,
12259
15
        NULL, HFILL }},
12260
15
    { &hf_rrlp_GANSSPositioningMethod_qzss,
12261
15
      { "qzss", "rrlp.GANSSPositioningMethod.qzss",
12262
15
        FT_BOOLEAN, 8, NULL, 0x08,
12263
15
        NULL, HFILL }},
12264
15
    { &hf_rrlp_GANSSPositioningMethod_glonass,
12265
15
      { "glonass", "rrlp.GANSSPositioningMethod.glonass",
12266
15
        FT_BOOLEAN, 8, NULL, 0x04,
12267
15
        NULL, HFILL }},
12268
15
    { &hf_rrlp_GANSSPositioningMethod_bd,
12269
15
      { "bd", "rrlp.GANSSPositioningMethod.bd",
12270
15
        FT_BOOLEAN, 8, NULL, 0x02,
12271
15
        NULL, HFILL }},
12272
15
    { &hf_rrlp_PositionData_e_otd,
12273
15
      { "e-otd", "rrlp.PositionData.e.otd",
12274
15
        FT_BOOLEAN, 8, NULL, 0x80,
12275
15
        NULL, HFILL }},
12276
15
    { &hf_rrlp_PositionData_gps,
12277
15
      { "gps", "rrlp.PositionData.gps",
12278
15
        FT_BOOLEAN, 8, NULL, 0x40,
12279
15
        NULL, HFILL }},
12280
15
    { &hf_rrlp_PositionData_galileo,
12281
15
      { "galileo", "rrlp.PositionData.galileo",
12282
15
        FT_BOOLEAN, 8, NULL, 0x20,
12283
15
        NULL, HFILL }},
12284
15
    { &hf_rrlp_PositionData_sbas,
12285
15
      { "sbas", "rrlp.PositionData.sbas",
12286
15
        FT_BOOLEAN, 8, NULL, 0x10,
12287
15
        NULL, HFILL }},
12288
15
    { &hf_rrlp_PositionData_modernizedGPS,
12289
15
      { "modernizedGPS", "rrlp.PositionData.modernizedGPS",
12290
15
        FT_BOOLEAN, 8, NULL, 0x08,
12291
15
        NULL, HFILL }},
12292
15
    { &hf_rrlp_PositionData_qzss,
12293
15
      { "qzss", "rrlp.PositionData.qzss",
12294
15
        FT_BOOLEAN, 8, NULL, 0x04,
12295
15
        NULL, HFILL }},
12296
15
    { &hf_rrlp_PositionData_glonass,
12297
15
      { "glonass", "rrlp.PositionData.glonass",
12298
15
        FT_BOOLEAN, 8, NULL, 0x02,
12299
15
        NULL, HFILL }},
12300
15
    { &hf_rrlp_PositionData_bds,
12301
15
      { "bds", "rrlp.PositionData.bds",
12302
15
        FT_BOOLEAN, 8, NULL, 0x01,
12303
15
        NULL, HFILL }},
12304
15
    { &hf_rrlp_NonGANSSPositionMethods_msAssistedEOTD,
12305
15
      { "msAssistedEOTD", "rrlp.NonGANSSPositionMethods.msAssistedEOTD",
12306
15
        FT_BOOLEAN, 8, NULL, 0x80,
12307
15
        NULL, HFILL }},
12308
15
    { &hf_rrlp_NonGANSSPositionMethods_msBasedEOTD,
12309
15
      { "msBasedEOTD", "rrlp.NonGANSSPositionMethods.msBasedEOTD",
12310
15
        FT_BOOLEAN, 8, NULL, 0x40,
12311
15
        NULL, HFILL }},
12312
15
    { &hf_rrlp_NonGANSSPositionMethods_msAssistedGPS,
12313
15
      { "msAssistedGPS", "rrlp.NonGANSSPositionMethods.msAssistedGPS",
12314
15
        FT_BOOLEAN, 8, NULL, 0x20,
12315
15
        NULL, HFILL }},
12316
15
    { &hf_rrlp_NonGANSSPositionMethods_msBasedGPS,
12317
15
      { "msBasedGPS", "rrlp.NonGANSSPositionMethods.msBasedGPS",
12318
15
        FT_BOOLEAN, 8, NULL, 0x10,
12319
15
        NULL, HFILL }},
12320
15
    { &hf_rrlp_NonGANSSPositionMethods_standaloneGPS,
12321
15
      { "standaloneGPS", "rrlp.NonGANSSPositionMethods.standaloneGPS",
12322
15
        FT_BOOLEAN, 8, NULL, 0x08,
12323
15
        NULL, HFILL }},
12324
15
    { &hf_rrlp_GANSSPositioningMethodTypes_msAssisted,
12325
15
      { "msAssisted", "rrlp.GANSSPositioningMethodTypes.msAssisted",
12326
15
        FT_BOOLEAN, 8, NULL, 0x80,
12327
15
        NULL, HFILL }},
12328
15
    { &hf_rrlp_GANSSPositioningMethodTypes_msBased,
12329
15
      { "msBased", "rrlp.GANSSPositioningMethodTypes.msBased",
12330
15
        FT_BOOLEAN, 8, NULL, 0x40,
12331
15
        NULL, HFILL }},
12332
15
    { &hf_rrlp_GANSSPositioningMethodTypes_standalone,
12333
15
      { "standalone", "rrlp.GANSSPositioningMethodTypes.standalone",
12334
15
        FT_BOOLEAN, 8, NULL, 0x20,
12335
15
        NULL, HFILL }},
12336
15
    { &hf_rrlp_GANSSSignals_signal1,
12337
15
      { "signal1", "rrlp.GANSSSignals.signal1",
12338
15
        FT_BOOLEAN, 8, NULL, 0x80,
12339
15
        NULL, HFILL }},
12340
15
    { &hf_rrlp_GANSSSignals_signal2,
12341
15
      { "signal2", "rrlp.GANSSSignals.signal2",
12342
15
        FT_BOOLEAN, 8, NULL, 0x40,
12343
15
        NULL, HFILL }},
12344
15
    { &hf_rrlp_GANSSSignals_signal3,
12345
15
      { "signal3", "rrlp.GANSSSignals.signal3",
12346
15
        FT_BOOLEAN, 8, NULL, 0x20,
12347
15
        NULL, HFILL }},
12348
15
    { &hf_rrlp_GANSSSignals_signal4,
12349
15
      { "signal4", "rrlp.GANSSSignals.signal4",
12350
15
        FT_BOOLEAN, 8, NULL, 0x10,
12351
15
        NULL, HFILL }},
12352
15
    { &hf_rrlp_GANSSSignals_signal5,
12353
15
      { "signal5", "rrlp.GANSSSignals.signal5",
12354
15
        FT_BOOLEAN, 8, NULL, 0x08,
12355
15
        NULL, HFILL }},
12356
15
    { &hf_rrlp_GANSSSignals_signal6,
12357
15
      { "signal6", "rrlp.GANSSSignals.signal6",
12358
15
        FT_BOOLEAN, 8, NULL, 0x04,
12359
15
        NULL, HFILL }},
12360
15
    { &hf_rrlp_GANSSSignals_signal7,
12361
15
      { "signal7", "rrlp.GANSSSignals.signal7",
12362
15
        FT_BOOLEAN, 8, NULL, 0x02,
12363
15
        NULL, HFILL }},
12364
15
    { &hf_rrlp_GANSSSignals_signal8,
12365
15
      { "signal8", "rrlp.GANSSSignals.signal8",
12366
15
        FT_BOOLEAN, 8, NULL, 0x01,
12367
15
        NULL, HFILL }},
12368
15
    { &hf_rrlp_SBASID_waas,
12369
15
      { "waas", "rrlp.SBASID.waas",
12370
15
        FT_BOOLEAN, 8, NULL, 0x80,
12371
15
        NULL, HFILL }},
12372
15
    { &hf_rrlp_SBASID_egnos,
12373
15
      { "egnos", "rrlp.SBASID.egnos",
12374
15
        FT_BOOLEAN, 8, NULL, 0x40,
12375
15
        NULL, HFILL }},
12376
15
    { &hf_rrlp_SBASID_masas,
12377
15
      { "masas", "rrlp.SBASID.masas",
12378
15
        FT_BOOLEAN, 8, NULL, 0x20,
12379
15
        NULL, HFILL }},
12380
15
    { &hf_rrlp_SBASID_gagan,
12381
15
      { "gagan", "rrlp.SBASID.gagan",
12382
15
        FT_BOOLEAN, 8, NULL, 0x10,
12383
15
        NULL, HFILL }},
12384
15
    { &hf_rrlp_MultipleMeasurementSets_eotd,
12385
15
      { "eotd", "rrlp.MultipleMeasurementSets.eotd",
12386
15
        FT_BOOLEAN, 8, NULL, 0x80,
12387
15
        NULL, HFILL }},
12388
15
    { &hf_rrlp_MultipleMeasurementSets_gps,
12389
15
      { "gps", "rrlp.MultipleMeasurementSets.gps",
12390
15
        FT_BOOLEAN, 8, NULL, 0x40,
12391
15
        NULL, HFILL }},
12392
15
    { &hf_rrlp_MultipleMeasurementSets_ganss,
12393
15
      { "ganss", "rrlp.MultipleMeasurementSets.ganss",
12394
15
        FT_BOOLEAN, 8, NULL, 0x20,
12395
15
        NULL, HFILL }},
12396
15
    { &hf_rrlp_GPSAssistance_almanac,
12397
15
      { "almanac", "rrlp.GPSAssistance.almanac",
12398
15
        FT_BOOLEAN, 8, NULL, 0x80,
12399
15
        NULL, HFILL }},
12400
15
    { &hf_rrlp_GPSAssistance_uTCmodel,
12401
15
      { "uTCmodel", "rrlp.GPSAssistance.uTCmodel",
12402
15
        FT_BOOLEAN, 8, NULL, 0x40,
12403
15
        NULL, HFILL }},
12404
15
    { &hf_rrlp_GPSAssistance_ionosphericModel,
12405
15
      { "ionosphericModel", "rrlp.GPSAssistance.ionosphericModel",
12406
15
        FT_BOOLEAN, 8, NULL, 0x20,
12407
15
        NULL, HFILL }},
12408
15
    { &hf_rrlp_GPSAssistance_navigationmodel,
12409
15
      { "navigationmodel", "rrlp.GPSAssistance.navigationmodel",
12410
15
        FT_BOOLEAN, 8, NULL, 0x10,
12411
15
        NULL, HFILL }},
12412
15
    { &hf_rrlp_GPSAssistance_dGPScorrections,
12413
15
      { "dGPScorrections", "rrlp.GPSAssistance.dGPScorrections",
12414
15
        FT_BOOLEAN, 8, NULL, 0x08,
12415
15
        NULL, HFILL }},
12416
15
    { &hf_rrlp_GPSAssistance_referenceLocation,
12417
15
      { "referenceLocation", "rrlp.GPSAssistance.referenceLocation",
12418
15
        FT_BOOLEAN, 8, NULL, 0x04,
12419
15
        NULL, HFILL }},
12420
15
    { &hf_rrlp_GPSAssistance_referenceTime,
12421
15
      { "referenceTime", "rrlp.GPSAssistance.referenceTime",
12422
15
        FT_BOOLEAN, 8, NULL, 0x02,
12423
15
        NULL, HFILL }},
12424
15
    { &hf_rrlp_GPSAssistance_acquisitionAssistance,
12425
15
      { "acquisitionAssistance", "rrlp.GPSAssistance.acquisitionAssistance",
12426
15
        FT_BOOLEAN, 8, NULL, 0x01,
12427
15
        NULL, HFILL }},
12428
15
    { &hf_rrlp_GPSAssistance_realTimeIntegrity,
12429
15
      { "realTimeIntegrity", "rrlp.GPSAssistance.realTimeIntegrity",
12430
15
        FT_BOOLEAN, 8, NULL, 0x80,
12431
15
        NULL, HFILL }},
12432
15
    { &hf_rrlp_GPSAssistance_ephemerisExtension,
12433
15
      { "ephemerisExtension", "rrlp.GPSAssistance.ephemerisExtension",
12434
15
        FT_BOOLEAN, 8, NULL, 0x40,
12435
15
        NULL, HFILL }},
12436
15
    { &hf_rrlp_GPSAssistance_ephemerisExtensionCheck,
12437
15
      { "ephemerisExtensionCheck", "rrlp.GPSAssistance.ephemerisExtensionCheck",
12438
15
        FT_BOOLEAN, 8, NULL, 0x20,
12439
15
        NULL, HFILL }},
12440
15
    { &hf_rrlp_GPSAssistance_gPSAcquisAssist_R12_Ext,
12441
15
      { "gPSAcquisAssist-R12-Ext", "rrlp.GPSAssistance.gPSAcquisAssist.R12.Ext",
12442
15
        FT_BOOLEAN, 8, NULL, 0x10,
12443
15
        NULL, HFILL }},
12444
15
    { &hf_rrlp_CommonGANSSAssistance_referenceTime,
12445
15
      { "referenceTime", "rrlp.CommonGANSSAssistance.referenceTime",
12446
15
        FT_BOOLEAN, 8, NULL, 0x80,
12447
15
        NULL, HFILL }},
12448
15
    { &hf_rrlp_CommonGANSSAssistance_referenceLocation,
12449
15
      { "referenceLocation", "rrlp.CommonGANSSAssistance.referenceLocation",
12450
15
        FT_BOOLEAN, 8, NULL, 0x40,
12451
15
        NULL, HFILL }},
12452
15
    { &hf_rrlp_CommonGANSSAssistance_spare_bit2,
12453
15
      { "spare_bit2", "rrlp.CommonGANSSAssistance.spare.bit2",
12454
15
        FT_BOOLEAN, 8, NULL, 0x20,
12455
15
        NULL, HFILL }},
12456
15
    { &hf_rrlp_CommonGANSSAssistance_ionosphericModel,
12457
15
      { "ionosphericModel", "rrlp.CommonGANSSAssistance.ionosphericModel",
12458
15
        FT_BOOLEAN, 8, NULL, 0x10,
12459
15
        NULL, HFILL }},
12460
15
    { &hf_rrlp_CommonGANSSAssistance_addIonosphericModel,
12461
15
      { "addIonosphericModel", "rrlp.CommonGANSSAssistance.addIonosphericModel",
12462
15
        FT_BOOLEAN, 8, NULL, 0x08,
12463
15
        NULL, HFILL }},
12464
15
    { &hf_rrlp_CommonGANSSAssistance_earthOrientationParam,
12465
15
      { "earthOrientationParam", "rrlp.CommonGANSSAssistance.earthOrientationParam",
12466
15
        FT_BOOLEAN, 8, NULL, 0x04,
12467
15
        NULL, HFILL }},
12468
15
    { &hf_rrlp_GANSSAssistance_realTimeIntegrity,
12469
15
      { "realTimeIntegrity", "rrlp.GANSSAssistance.realTimeIntegrity",
12470
15
        FT_BOOLEAN, 8, NULL, 0x80,
12471
15
        NULL, HFILL }},
12472
15
    { &hf_rrlp_GANSSAssistance_differentialCorrections,
12473
15
      { "differentialCorrections", "rrlp.GANSSAssistance.differentialCorrections",
12474
15
        FT_BOOLEAN, 8, NULL, 0x40,
12475
15
        NULL, HFILL }},
12476
15
    { &hf_rrlp_GANSSAssistance_almanac,
12477
15
      { "almanac", "rrlp.GANSSAssistance.almanac",
12478
15
        FT_BOOLEAN, 8, NULL, 0x20,
12479
15
        NULL, HFILL }},
12480
15
    { &hf_rrlp_GANSSAssistance_referenceMeasurementInformation,
12481
15
      { "referenceMeasurementInformation", "rrlp.GANSSAssistance.referenceMeasurementInformation",
12482
15
        FT_BOOLEAN, 8, NULL, 0x10,
12483
15
        NULL, HFILL }},
12484
15
    { &hf_rrlp_GANSSAssistance_navigationModel,
12485
15
      { "navigationModel", "rrlp.GANSSAssistance.navigationModel",
12486
15
        FT_BOOLEAN, 8, NULL, 0x08,
12487
15
        NULL, HFILL }},
12488
15
    { &hf_rrlp_GANSSAssistance_timeModelGNSS_UTC,
12489
15
      { "timeModelGNSS-UTC", "rrlp.GANSSAssistance.timeModelGNSS.UTC",
12490
15
        FT_BOOLEAN, 8, NULL, 0x04,
12491
15
        NULL, HFILL }},
12492
15
    { &hf_rrlp_GANSSAssistance_timeModelGNSS_GNSS,
12493
15
      { "timeModelGNSS-GNSS", "rrlp.GANSSAssistance.timeModelGNSS.GNSS",
12494
15
        FT_BOOLEAN, 8, NULL, 0x02,
12495
15
        NULL, HFILL }},
12496
15
    { &hf_rrlp_GANSSAssistance_databitassistance,
12497
15
      { "databitassistance", "rrlp.GANSSAssistance.databitassistance",
12498
15
        FT_BOOLEAN, 8, NULL, 0x01,
12499
15
        NULL, HFILL }},
12500
15
    { &hf_rrlp_GANSSAssistance_ephemerisExtension,
12501
15
      { "ephemerisExtension", "rrlp.GANSSAssistance.ephemerisExtension",
12502
15
        FT_BOOLEAN, 8, NULL, 0x80,
12503
15
        NULL, HFILL }},
12504
15
    { &hf_rrlp_GANSSAssistance_ephemerisExtensionCheck,
12505
15
      { "ephemerisExtensionCheck", "rrlp.GANSSAssistance.ephemerisExtensionCheck",
12506
15
        FT_BOOLEAN, 8, NULL, 0x40,
12507
15
        NULL, HFILL }},
12508
15
    { &hf_rrlp_GANSSAssistance_addUTCmodel,
12509
15
      { "addUTCmodel", "rrlp.GANSSAssistance.addUTCmodel",
12510
15
        FT_BOOLEAN, 8, NULL, 0x20,
12511
15
        NULL, HFILL }},
12512
15
    { &hf_rrlp_GANSSAssistance_auxiliaryInformation,
12513
15
      { "auxiliaryInformation", "rrlp.GANSSAssistance.auxiliaryInformation",
12514
15
        FT_BOOLEAN, 8, NULL, 0x10,
12515
15
        NULL, HFILL }},
12516
15
    { &hf_rrlp_GANSSAssistance_gANSSRefMeasurementAssist_R12_Ext,
12517
15
      { "gANSSRefMeasurementAssist-R12-Ext", "rrlp.GANSSAssistance.gANSSRefMeasurementAssist.R12.Ext",
12518
15
        FT_BOOLEAN, 8, NULL, 0x08,
12519
15
        NULL, HFILL }},
12520
15
    { &hf_rrlp_GANSSAssistance_bdsDifferentialCorrections_r12,
12521
15
      { "bdsDifferentialCorrections-r12", "rrlp.GANSSAssistance.bdsDifferentialCorrections.r12",
12522
15
        FT_BOOLEAN, 8, NULL, 0x04,
12523
15
        NULL, HFILL }},
12524
15
    { &hf_rrlp_GANSSAssistance_bdsGridModel_r12,
12525
15
      { "bdsGridModel-r12", "rrlp.GANSSAssistance.bdsGridModel.r12",
12526
15
        FT_BOOLEAN, 8, NULL, 0x02,
12527
15
        NULL, HFILL }},
12528
15
    { &hf_rrlp_GANSSModelID_model1,
12529
15
      { "model1", "rrlp.GANSSModelID.model1",
12530
15
        FT_BOOLEAN, 8, NULL, 0x80,
12531
15
        NULL, HFILL }},
12532
15
    { &hf_rrlp_GANSSModelID_model2,
12533
15
      { "model2", "rrlp.GANSSModelID.model2",
12534
15
        FT_BOOLEAN, 8, NULL, 0x40,
12535
15
        NULL, HFILL }},
12536
15
    { &hf_rrlp_GANSSModelID_model3,
12537
15
      { "model3", "rrlp.GANSSModelID.model3",
12538
15
        FT_BOOLEAN, 8, NULL, 0x20,
12539
15
        NULL, HFILL }},
12540
15
    { &hf_rrlp_GANSSModelID_model4,
12541
15
      { "model4", "rrlp.GANSSModelID.model4",
12542
15
        FT_BOOLEAN, 8, NULL, 0x10,
12543
15
        NULL, HFILL }},
12544
15
    { &hf_rrlp_GANSSModelID_model5,
12545
15
      { "model5", "rrlp.GANSSModelID.model5",
12546
15
        FT_BOOLEAN, 8, NULL, 0x08,
12547
15
        NULL, HFILL }},
12548
15
    { &hf_rrlp_GANSSModelID_model6,
12549
15
      { "model6", "rrlp.GANSSModelID.model6",
12550
15
        FT_BOOLEAN, 8, NULL, 0x04,
12551
15
        NULL, HFILL }},
12552
15
    { &hf_rrlp_GANSSModelID_model7,
12553
15
      { "model7", "rrlp.GANSSModelID.model7",
12554
15
        FT_BOOLEAN, 8, NULL, 0x02,
12555
15
        NULL, HFILL }},
12556
15
    { &hf_rrlp_GANSSModelID_model8,
12557
15
      { "model8", "rrlp.GANSSModelID.model8",
12558
15
        FT_BOOLEAN, 8, NULL, 0x01,
12559
15
        NULL, HFILL }},
12560
15
  };
12561
12562
  /* List of subtrees */
12563
15
  static int *ett[] = {
12564
15
    &ett_rrlp,
12565
15
    &ett_rrlp_ExtensionContainer,
12566
15
    &ett_rrlp_PrivateExtensionList,
12567
15
    &ett_rrlp_PrivateExtension,
12568
15
    &ett_rrlp_PCS_Extensions,
12569
15
    &ett_rrlp_PDU,
12570
15
    &ett_rrlp_RRLP_Component,
12571
15
    &ett_rrlp_MsrPosition_Req,
12572
15
    &ett_rrlp_MsrPosition_Rsp,
12573
15
    &ett_rrlp_AssistanceData,
12574
15
    &ett_rrlp_ProtocolError,
12575
15
    &ett_rrlp_PosCapability_Req,
12576
15
    &ett_rrlp_PosCapability_Rsp,
12577
15
    &ett_rrlp_PosMTA_Req,
12578
15
    &ett_rrlp_MultilaterationOTD_Req,
12579
15
    &ett_rrlp_MultilaterationOTD_Rsp,
12580
15
    &ett_rrlp_PositionInstruct,
12581
15
    &ett_rrlp_MethodType,
12582
15
    &ett_rrlp_AccuracyOpt,
12583
15
    &ett_rrlp_ReferenceAssistData,
12584
15
    &ett_rrlp_MsrAssistData,
12585
15
    &ett_rrlp_SeqOfMsrAssistBTS,
12586
15
    &ett_rrlp_MsrAssistBTS,
12587
15
    &ett_rrlp_SystemInfoAssistData,
12588
15
    &ett_rrlp_SeqOfSystemInfoAssistBTS,
12589
15
    &ett_rrlp_SystemInfoAssistBTS,
12590
15
    &ett_rrlp_AssistBTSData,
12591
15
    &ett_rrlp_CalcAssistanceBTS,
12592
15
    &ett_rrlp_ReferenceWGS84,
12593
15
    &ett_rrlp_MultipleSets,
12594
15
    &ett_rrlp_ReferenceIdentity,
12595
15
    &ett_rrlp_SeqOfReferenceIdentityType,
12596
15
    &ett_rrlp_ReferenceIdentityType,
12597
15
    &ett_rrlp_BSICAndCarrier,
12598
15
    &ett_rrlp_CellIDAndLAC,
12599
15
    &ett_rrlp_OTD_MeasureInfo,
12600
15
    &ett_rrlp_SeqOfOTD_MsrElementRest,
12601
15
    &ett_rrlp_OTD_MsrElementFirst,
12602
15
    &ett_rrlp_SeqOfOTD_FirstSetMsrs,
12603
15
    &ett_rrlp_OTD_MsrElementRest,
12604
15
    &ett_rrlp_SeqOfOTD_MsrsOfOtherSets,
12605
15
    &ett_rrlp_TOA_MeasurementsOfRef,
12606
15
    &ett_rrlp_OTD_MsrsOfOtherSets,
12607
15
    &ett_rrlp_OTD_Measurement,
12608
15
    &ett_rrlp_OTD_MeasurementWithID,
12609
15
    &ett_rrlp_EOTDQuality,
12610
15
    &ett_rrlp_NeighborIdentity,
12611
15
    &ett_rrlp_MultiFrameCarrier,
12612
15
    &ett_rrlp_LocationInfo,
12613
15
    &ett_rrlp_GPS_MeasureInfo,
12614
15
    &ett_rrlp_SeqOfGPS_MsrSetElement,
12615
15
    &ett_rrlp_GPS_MsrSetElement,
12616
15
    &ett_rrlp_SeqOfGPS_MsrElement,
12617
15
    &ett_rrlp_GPS_MsrElement,
12618
15
    &ett_rrlp_LocationError,
12619
15
    &ett_rrlp_AdditionalAssistanceData,
12620
15
    &ett_rrlp_GPS_AssistData,
12621
15
    &ett_rrlp_ControlHeader,
12622
15
    &ett_rrlp_ReferenceTime,
12623
15
    &ett_rrlp_GPSTime,
12624
15
    &ett_rrlp_GPSTOWAssist,
12625
15
    &ett_rrlp_GPSTOWAssistElement,
12626
15
    &ett_rrlp_GSMTime,
12627
15
    &ett_rrlp_RefLocation,
12628
15
    &ett_rrlp_DGPSCorrections,
12629
15
    &ett_rrlp_SeqOfSatElement,
12630
15
    &ett_rrlp_SatElement,
12631
15
    &ett_rrlp_NavigationModel,
12632
15
    &ett_rrlp_SeqOfNavModelElement,
12633
15
    &ett_rrlp_NavModelElement,
12634
15
    &ett_rrlp_SatStatus,
12635
15
    &ett_rrlp_UncompressedEphemeris,
12636
15
    &ett_rrlp_EphemerisSubframe1Reserved,
12637
15
    &ett_rrlp_IonosphericModel,
12638
15
    &ett_rrlp_UTCModel,
12639
15
    &ett_rrlp_Almanac,
12640
15
    &ett_rrlp_SeqOfAlmanacElement,
12641
15
    &ett_rrlp_AlmanacElement,
12642
15
    &ett_rrlp_AcquisAssist,
12643
15
    &ett_rrlp_SeqOfAcquisElement,
12644
15
    &ett_rrlp_TimeRelation,
12645
15
    &ett_rrlp_AcquisElement,
12646
15
    &ett_rrlp_AddionalDopplerFields,
12647
15
    &ett_rrlp_AddionalAngleFields,
12648
15
    &ett_rrlp_SeqOf_BadSatelliteSet,
12649
15
    &ett_rrlp_Rel98_MsrPosition_Req_Extension,
12650
15
    &ett_rrlp_Rel98_AssistanceData_Extension,
12651
15
    &ett_rrlp_Rel98_Ext_ExpOTD,
12652
15
    &ett_rrlp_MsrAssistData_R98_ExpOTD,
12653
15
    &ett_rrlp_SeqOfMsrAssistBTS_R98_ExpOTD,
12654
15
    &ett_rrlp_MsrAssistBTS_R98_ExpOTD,
12655
15
    &ett_rrlp_SystemInfoAssistData_R98_ExpOTD,
12656
15
    &ett_rrlp_SeqOfSystemInfoAssistBTS_R98_ExpOTD,
12657
15
    &ett_rrlp_SystemInfoAssistBTS_R98_ExpOTD,
12658
15
    &ett_rrlp_AssistBTSData_R98_ExpOTD,
12659
15
    &ett_rrlp_GPSTimeAssistanceMeasurements,
12660
15
    &ett_rrlp_Rel_98_MsrPosition_Rsp_Extension,
12661
15
    &ett_rrlp_T_rel_98_Ext_MeasureInfo,
12662
15
    &ett_rrlp_OTD_MeasureInfo_R98_Ext,
12663
15
    &ett_rrlp_OTD_MsrElementFirst_R98_Ext,
12664
15
    &ett_rrlp_SeqOfOTD_FirstSetMsrs_R98_Ext,
12665
15
    &ett_rrlp_Rel_5_MsrPosition_Rsp_Extension,
12666
15
    &ett_rrlp_Extended_reference,
12667
15
    &ett_rrlp_Rel5_MsrPosition_Req_Extension,
12668
15
    &ett_rrlp_Rel5_AssistanceData_Extension,
12669
15
    &ett_rrlp_Rel_5_ProtocolError_Extension,
12670
15
    &ett_rrlp_Rel7_MsrPosition_Req_Extension,
12671
15
    &ett_rrlp_GANSSPositioningMethod,
12672
15
    &ett_rrlp_GANSS_AssistData,
12673
15
    &ett_rrlp_GANSS_ControlHeader,
12674
15
    &ett_rrlp_GANSSCommonAssistData,
12675
15
    &ett_rrlp_SeqOfGANSSGenericAssistDataElement,
12676
15
    &ett_rrlp_GANSSGenericAssistDataElement,
12677
15
    &ett_rrlp_GANSSReferenceTime,
12678
15
    &ett_rrlp_GANSSRefTimeInfo,
12679
15
    &ett_rrlp_GANSSReferenceTime_R10_Ext,
12680
15
    &ett_rrlp_GANSSTOD_GSMTimeAssociation,
12681
15
    &ett_rrlp_GANSSRefLocation,
12682
15
    &ett_rrlp_GANSSIonosphericModel,
12683
15
    &ett_rrlp_GANSSIonosphereModel,
12684
15
    &ett_rrlp_GANSSIonoStormFlags,
12685
15
    &ett_rrlp_GANSSAddIonosphericModel,
12686
15
    &ett_rrlp_GANSSEarthOrientParam,
12687
15
    &ett_rrlp_SeqOfGANSSTimeModel,
12688
15
    &ett_rrlp_GANSSTimeModelElement,
12689
15
    &ett_rrlp_SeqOfGANSSTimeModel_R10_Ext,
12690
15
    &ett_rrlp_GANSSTimeModelElement_R10_Ext,
12691
15
    &ett_rrlp_GANSSDiffCorrections,
12692
15
    &ett_rrlp_SeqOfSgnTypeElement,
12693
15
    &ett_rrlp_SgnTypeElement,
12694
15
    &ett_rrlp_SeqOfDGANSSSgnElement,
12695
15
    &ett_rrlp_DGANSSSgnElement,
12696
15
    &ett_rrlp_GANSSNavModel,
12697
15
    &ett_rrlp_SeqOfGANSSSatelliteElement,
12698
15
    &ett_rrlp_GANSSSatelliteElement,
12699
15
    &ett_rrlp_GANSSOrbitModel,
12700
15
    &ett_rrlp_NavModel_KeplerianSet,
12701
15
    &ett_rrlp_NavModel_NAVKeplerianSet,
12702
15
    &ett_rrlp_NavModel_CNAVKeplerianSet,
12703
15
    &ett_rrlp_NavModel_GLONASSecef,
12704
15
    &ett_rrlp_NavModel_SBASecef,
12705
15
    &ett_rrlp_NavModel_BDSKeplerianSet_r12,
12706
15
    &ett_rrlp_GANSSClockModel,
12707
15
    &ett_rrlp_SeqOfStandardClockModelElement,
12708
15
    &ett_rrlp_StandardClockModelElement,
12709
15
    &ett_rrlp_NAVclockModel,
12710
15
    &ett_rrlp_CNAVclockModel,
12711
15
    &ett_rrlp_GLONASSclockModel,
12712
15
    &ett_rrlp_SBASclockModel,
12713
15
    &ett_rrlp_BDSClockModel_r12,
12714
15
    &ett_rrlp_GANSSRealTimeIntegrity,
12715
15
    &ett_rrlp_SeqOfBadSignalElement,
12716
15
    &ett_rrlp_BadSignalElement,
12717
15
    &ett_rrlp_GANSSDataBitAssist,
12718
15
    &ett_rrlp_SeqOfGanssDataBitsElement,
12719
15
    &ett_rrlp_GanssDataBitsElement,
12720
15
    &ett_rrlp_Seq_OfGANSSDataBitsSgn,
12721
15
    &ett_rrlp_GANSSDataBitsSgnElement,
12722
15
    &ett_rrlp_SeqOf_GANSSDataBits,
12723
15
    &ett_rrlp_GANSSRefMeasurementAssist,
12724
15
    &ett_rrlp_SeqOfGANSSRefMeasurementElement,
12725
15
    &ett_rrlp_GANSSRefMeasurementElement,
12726
15
    &ett_rrlp_AdditionalDopplerFields,
12727
15
    &ett_rrlp_GANSSRefMeasurementAssist_R10_Ext,
12728
15
    &ett_rrlp_GANSSRefMeasurement_R10_Ext_Element,
12729
15
    &ett_rrlp_GANSSRefMeasurementAssist_R12_Ext,
12730
15
    &ett_rrlp_SeqOfGANSSRefMeasurementElement_R12,
12731
15
    &ett_rrlp_GANSSRefMeasurement_R12_Ext_Element,
12732
15
    &ett_rrlp_GANSSAlmanacModel,
12733
15
    &ett_rrlp_SeqOfGANSSAlmanacElement,
12734
15
    &ett_rrlp_GANSSAlmanacElement,
12735
15
    &ett_rrlp_Almanac_KeplerianSet,
12736
15
    &ett_rrlp_Almanac_NAVKeplerianSet,
12737
15
    &ett_rrlp_Almanac_ReducedKeplerianSet,
12738
15
    &ett_rrlp_Almanac_MidiAlmanacSet,
12739
15
    &ett_rrlp_Almanac_GlonassAlmanacSet,
12740
15
    &ett_rrlp_Almanac_ECEFsbasAlmanacSet,
12741
15
    &ett_rrlp_Almanac_BDSAlmanacSet_r12,
12742
15
    &ett_rrlp_GANSSAlmanacModel_R10_Ext,
12743
15
    &ett_rrlp_GANSSAlmanacModel_R12_Ext,
12744
15
    &ett_rrlp_GANSSUTCModel,
12745
15
    &ett_rrlp_GANSSEphemerisExtension,
12746
15
    &ett_rrlp_GANSSEphemerisExtensionHeader,
12747
15
    &ett_rrlp_GANSSEphemerisExtensionTime,
12748
15
    &ett_rrlp_ReferenceNavModel,
12749
15
    &ett_rrlp_SeqOfGANSSRefOrbit,
12750
15
    &ett_rrlp_GANSSReferenceOrbit,
12751
15
    &ett_rrlp_GANSSEphemerisDeltaMatrix,
12752
15
    &ett_rrlp_GANSSEphemerisDeltaEpoch,
12753
15
    &ett_rrlp_GANSSDeltaEpochHeader,
12754
15
    &ett_rrlp_GANSSDeltaElementList,
12755
15
    &ett_rrlp_GANSSEphemerisDeltaBitSizes,
12756
15
    &ett_rrlp_GANSSEphemerisDeltaScales,
12757
15
    &ett_rrlp_GANSSEphemerisExtensionCheck,
12758
15
    &ett_rrlp_GANSSSatEventsInfo,
12759
15
    &ett_rrlp_GANSSAddUTCModel,
12760
15
    &ett_rrlp_UTCmodelSet2,
12761
15
    &ett_rrlp_UTCmodelSet3,
12762
15
    &ett_rrlp_UTCmodelSet4,
12763
15
    &ett_rrlp_UTCmodelSet5_r12,
12764
15
    &ett_rrlp_GANSSAuxiliaryInformation,
12765
15
    &ett_rrlp_GANSS_ID1,
12766
15
    &ett_rrlp_GANSS_ID1_element,
12767
15
    &ett_rrlp_GANSS_ID3,
12768
15
    &ett_rrlp_GANSS_ID3_element,
12769
15
    &ett_rrlp_GANSSDiffCorrectionsValidityPeriod,
12770
15
    &ett_rrlp_DGANSSExtensionSgnTypeElement,
12771
15
    &ett_rrlp_SeqOfDGANSSExtensionSgnElement,
12772
15
    &ett_rrlp_DGANSSExtensionSgnElement,
12773
15
    &ett_rrlp_Add_GPS_AssistData,
12774
15
    &ett_rrlp_Add_GPS_ControlHeader,
12775
15
    &ett_rrlp_GPSClockModel,
12776
15
    &ett_rrlp_GPSEphemerisExtension,
12777
15
    &ett_rrlp_GPSEphemerisExtensionHeader,
12778
15
    &ett_rrlp_GPSEphemerisExtensionTime,
12779
15
    &ett_rrlp_SeqOfGPSRefOrbit,
12780
15
    &ett_rrlp_GPSReferenceOrbit,
12781
15
    &ett_rrlp_GPSEphemerisDeltaMatrix,
12782
15
    &ett_rrlp_GPSEphemerisDeltaEpoch,
12783
15
    &ett_rrlp_GPSDeltaEpochHeader,
12784
15
    &ett_rrlp_GPSDeltaElementList,
12785
15
    &ett_rrlp_GPSEphemerisDeltaBitSizes,
12786
15
    &ett_rrlp_GPSEphemerisDeltaScales,
12787
15
    &ett_rrlp_GPSEphemerisExtensionCheck,
12788
15
    &ett_rrlp_GPSSatEventsInfo,
12789
15
    &ett_rrlp_DGPSCorrectionsValidityPeriod,
12790
15
    &ett_rrlp_DGPSExtensionSatElement,
12791
15
    &ett_rrlp_GPSReferenceTime_R10_Ext,
12792
15
    &ett_rrlp_GPSAcquisAssist_R10_Ext,
12793
15
    &ett_rrlp_GPSAcquisAssist_R10_Ext_Element,
12794
15
    &ett_rrlp_GPSAcquisAssist_R12_Ext,
12795
15
    &ett_rrlp_SeqOfGPSAcquisAssist_R12_Ext,
12796
15
    &ett_rrlp_GPSAcquisAssist_R12_Ext_Element,
12797
15
    &ett_rrlp_GPSAlmanac_R10_Ext,
12798
15
    &ett_rrlp_Rel_7_MsrPosition_Rsp_Extension,
12799
15
    &ett_rrlp_GANSSLocationInfo,
12800
15
    &ett_rrlp_PositionData,
12801
15
    &ett_rrlp_ReferenceFrame,
12802
15
    &ett_rrlp_GANSSMeasureInfo,
12803
15
    &ett_rrlp_SeqOfGANSS_MsrSetElement,
12804
15
    &ett_rrlp_GANSS_MsrSetElement,
12805
15
    &ett_rrlp_SeqOfGANSS_MsrElement,
12806
15
    &ett_rrlp_GANSS_MsrElement,
12807
15
    &ett_rrlp_SeqOfGANSS_SgnTypeElement,
12808
15
    &ett_rrlp_GANSS_SgnTypeElement,
12809
15
    &ett_rrlp_SeqOfGANSS_SgnElement,
12810
15
    &ett_rrlp_GANSS_SgnElement,
12811
15
    &ett_rrlp_Rel7_AssistanceData_Extension,
12812
15
    &ett_rrlp_BDS_DiffCorrections_r12,
12813
15
    &ett_rrlp_BDS_SgnTypeList_r12,
12814
15
    &ett_rrlp_BDS_SgnTypeElement_r12,
12815
15
    &ett_rrlp_DBDS_CorrectionList_r12,
12816
15
    &ett_rrlp_DBDS_CorrectionElement_r12,
12817
15
    &ett_rrlp_BDS_GridModelParameter_r12,
12818
15
    &ett_rrlp_GridIonList_r12,
12819
15
    &ett_rrlp_GridIonElement_r12,
12820
15
    &ett_rrlp_PosCapabilities,
12821
15
    &ett_rrlp_NonGANSSPositionMethods,
12822
15
    &ett_rrlp_GANSSPositionMethods,
12823
15
    &ett_rrlp_GANSSPositionMethod,
12824
15
    &ett_rrlp_GANSSPositioningMethodTypes,
12825
15
    &ett_rrlp_GANSSSignals,
12826
15
    &ett_rrlp_SBASID,
12827
15
    &ett_rrlp_MultipleMeasurementSets,
12828
15
    &ett_rrlp_AssistanceSupported,
12829
15
    &ett_rrlp_GPSAssistance,
12830
15
    &ett_rrlp_GANSSAssistanceSet,
12831
15
    &ett_rrlp_CommonGANSSAssistance,
12832
15
    &ett_rrlp_SpecificGANSSAssistance,
12833
15
    &ett_rrlp_GANSSAssistanceForOneGANSS,
12834
15
    &ett_rrlp_GANSSAssistance,
12835
15
    &ett_rrlp_GANSSAdditionalAssistanceChoices,
12836
15
    &ett_rrlp_GANSSAdditionalAssistanceChoicesForOneGANSS,
12837
15
    &ett_rrlp_GANSSModelID,
12838
15
    &ett_rrlp_AssistanceNeeded,
12839
15
    &ett_rrlp_CellSets,
12840
15
    &ett_rrlp_CellSet,
12841
15
    &ett_rrlp_CellInfo,
12842
15
    &ett_rrlp_OTDMeasurementResults,
12843
15
    &ett_rrlp_OTDMeasurementInfo,
12844
15
    &ett_rrlp_CellType,
12845
15
    &ett_rrlp_RXLEVMeasurementResults,
12846
15
    &ett_rrlp_RXLEVMeasurementInfo,
12847
15
    &ett_rrlp_MTA_Method,
12848
15
    &ett_rrlp_Random_ID_Set,
12849
15
    &ett_rrlp_Extended_Access_Burst,
12850
15
    &ett_rrlp_Co_Sited_Cells,
12851
15
    &ett_rrlp_Co_Sited_Cell_Set_Member,
12852
15
    &ett_rrlp_Cell_Set,
12853
15
    &ett_rrlp_Cell_Set_Member,
12854
15
    &ett_rrlp_T_ec_cell_information,
12855
15
    &ett_rrlp_T_peo_cell_information,
12856
15
    &ett_rrlp_BSIC_Info,
12857
15
    &ett_rrlp_EC_RACH_Control_Parameters,
12858
15
    &ett_rrlp_RACH_Control_Parameters,
12859
15
    &ett_rrlp_MTA_BITMAP,
12860
15
    &ett_rrlp_MTA_Security,
12861
15
  };
12862
12863
12864
  /* Register protocol */
12865
15
  proto_rrlp = proto_register_protocol("Radio Resource LCS Protocol (RRLP)", "RRLP", "rrlp");
12866
15
  register_dissector("rrlp", dissect_PDU_PDU, proto_rrlp);
12867
12868
  /* Register fields and subtrees */
12869
15
  proto_register_field_array(proto_rrlp, hf, array_length(hf));
12870
15
  proto_register_subtree_array(ett, array_length(ett));
12871
12872
12873
15
}
12874
12875
12876
/*--- proto_reg_handoff_rrlp ---------------------------------------*/
12877
void
12878
proto_reg_handoff_rrlp(void)
12879
15
{
12880
12881
15
}
12882
12883