1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.orekit.files.ilrs;
18
19 import java.util.HashMap;
20 import java.util.Map;
21
22 import org.orekit.errors.OrekitException;
23 import org.orekit.errors.OrekitMessages;
24
25
26
27
28
29
30 public class CRDHeader extends ILRSHeader {
31
32
33 private String stationName;
34
35
36 private int systemIdentifier;
37
38
39 private int systemNumber;
40
41
42 private int systemOccupancy;
43
44
45 private int epochIdentifier;
46
47
48 private String stationNetword;
49
50
51 private int spacecraftEpochTimeScale;
52
53
54 private int dataType;
55
56
57 private int dataReleaseFlag;
58
59
60 private boolean isTroposphericRefractionApplied;
61
62
63 private boolean isCenterOfMassCorrectionApplied;
64
65
66 private boolean isReceiveAmplitudeCorrectionApplied;
67
68
69 private boolean isStationSystemDelayApplied;
70
71
72 private boolean isTransponderDelayApplied;
73
74
75 private RangeType rangeType;
76
77
78 private int qualityIndicator;
79
80
81 private int predictionType;
82
83
84 private int yearOfCentury;
85
86
87
88
89
90
91 private String dateAndTime;
92
93
94 private String predictionProvider;
95
96
97
98
99
100 public String getStationName() {
101 return stationName;
102 }
103
104
105
106
107
108 public void setStationName(final String stationName) {
109 this.stationName = stationName;
110 }
111
112
113
114
115
116 public int getSystemIdentifier() {
117 return systemIdentifier;
118 }
119
120
121
122
123
124 public void setSystemIdentifier(final int systemIdentifier) {
125 this.systemIdentifier = systemIdentifier;
126 }
127
128
129
130
131
132 public int getSystemNumber() {
133 return systemNumber;
134 }
135
136
137
138
139
140 public void setSystemNumber(final int systemNumber) {
141 this.systemNumber = systemNumber;
142 }
143
144
145
146
147
148 public int getSystemOccupancy() {
149 return systemOccupancy;
150 }
151
152
153
154
155
156 public void setSystemOccupancy(final int systemOccupancy) {
157 this.systemOccupancy = systemOccupancy;
158 }
159
160
161
162
163
164
165
166
167 public int getEpochIdentifier() {
168 return epochIdentifier;
169 }
170
171
172
173
174
175 public void setEpochIdentifier(final int epochIdentifier) {
176 this.epochIdentifier = epochIdentifier;
177 }
178
179
180
181
182
183 public String getStationNetword() {
184 return stationNetword;
185 }
186
187
188
189
190
191 public void setStationNetword(final String stationNetword) {
192 this.stationNetword = stationNetword;
193 }
194
195
196
197
198
199 public int getSpacecraftEpochTimeScale() {
200 return spacecraftEpochTimeScale;
201 }
202
203
204
205
206
207 public void setSpacecraftEpochTimeScale(final int spacecraftEpochTimeScale) {
208 this.spacecraftEpochTimeScale = spacecraftEpochTimeScale;
209 }
210
211
212
213
214
215
216
217
218 public int getDataType() {
219 return dataType;
220 }
221
222
223
224
225
226 public void setDataType(final int dataType) {
227 this.dataType = dataType;
228 }
229
230
231
232
233
234 public int getDataReleaseFlag() {
235 return dataReleaseFlag;
236 }
237
238
239
240
241
242 public void setDataReleaseFlag(final int dataReleaseFlag) {
243 this.dataReleaseFlag = dataReleaseFlag;
244 }
245
246
247
248
249
250 public boolean isTroposphericRefractionApplied() {
251 return isTroposphericRefractionApplied;
252 }
253
254
255
256
257
258 public void setIsTroposphericRefractionApplied(final boolean isTroposphericRefractionApplied) {
259 this.isTroposphericRefractionApplied = isTroposphericRefractionApplied;
260 }
261
262
263
264
265
266 public boolean isCenterOfMassCorrectionApplied() {
267 return isCenterOfMassCorrectionApplied;
268 }
269
270
271
272
273
274 public void setIsCenterOfMassCorrectionApplied(final boolean isCenterOfMassCorrectionApplied) {
275 this.isCenterOfMassCorrectionApplied = isCenterOfMassCorrectionApplied;
276 }
277
278
279
280
281
282 public boolean isReceiveAmplitudeCorrectionApplied() {
283 return isReceiveAmplitudeCorrectionApplied;
284 }
285
286
287
288
289
290 public void setIsReceiveAmplitudeCorrectionApplied(final boolean isReceiveAmplitudeCorrectionApplied) {
291 this.isReceiveAmplitudeCorrectionApplied = isReceiveAmplitudeCorrectionApplied;
292 }
293
294
295
296
297
298 public boolean isStationSystemDelayApplied() {
299 return isStationSystemDelayApplied;
300 }
301
302
303
304
305
306 public void setIsStationSystemDelayApplied(final boolean isStationSystemDelayApplied) {
307 this.isStationSystemDelayApplied = isStationSystemDelayApplied;
308 }
309
310
311
312
313
314 public boolean isTransponderDelayApplied() {
315 return isTransponderDelayApplied;
316 }
317
318
319
320
321
322 public void setIsTransponderDelayApplied(final boolean isTransponderDelayApplied) {
323 this.isTransponderDelayApplied = isTransponderDelayApplied;
324 }
325
326
327
328
329
330 public RangeType getRangeType() {
331 return rangeType;
332 }
333
334
335
336
337
338 public void setRangeType(final int indicator) {
339 this.rangeType = RangeType.getRangeType(indicator);
340 }
341
342
343
344
345
346 public int getQualityIndicator() {
347 return qualityIndicator;
348 }
349
350
351
352
353
354 public void setQualityIndicator(final int qualityIndicator) {
355 this.qualityIndicator = qualityIndicator;
356 }
357
358
359
360
361
362 public int getPredictionType() {
363 return predictionType;
364 }
365
366
367
368
369
370 public void setPredictionType(final int predictionType) {
371 this.predictionType = predictionType;
372 }
373
374
375
376
377
378 public int getYearOfCentury() {
379 return yearOfCentury;
380 }
381
382
383
384
385
386 public void setYearOfCentury(final int yearOfCentury) {
387 this.yearOfCentury = yearOfCentury;
388 }
389
390
391
392
393
394
395
396
397
398
399
400 public String getDateAndTime() {
401 return dateAndTime;
402 }
403
404
405
406
407
408 public void setDateAndTime(final String dateAndTime) {
409 this.dateAndTime = dateAndTime;
410 }
411
412
413
414
415
416 public String getPredictionProvider() {
417 return predictionProvider;
418 }
419
420
421
422
423
424 public void setPredictionProvider(final String predictionProvider) {
425 this.predictionProvider = predictionProvider;
426 }
427
428
429 public enum RangeType {
430
431
432 NO_RANGES(0),
433
434
435 ONE_WAY(1),
436
437
438 TWO_WAY(2),
439
440
441 RECEIVED_ONLY(3),
442
443
444 MIXED(4);
445
446
447 private static final Map<Integer, RangeType> CODES_MAP = new HashMap<>();
448 static {
449 for (final RangeType type : values()) {
450 CODES_MAP.put(type.getIndicator(), type);
451 }
452 }
453
454
455 private final int indicator;
456
457
458
459
460
461 RangeType(final int indicator) {
462 this.indicator = indicator;
463 }
464
465
466
467
468
469 public int getIndicator() {
470 return indicator;
471 }
472
473
474
475
476
477
478 public static RangeType getRangeType(final int id) {
479 final RangeType type = CODES_MAP.get(id);
480 if (type == null) {
481
482 throw new OrekitException(OrekitMessages.INVALID_RANGE_INDICATOR_IN_CRD_FILE, id);
483 }
484 return type;
485 }
486
487 }
488
489 }