1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.orekit.files.ccsds.ndm.cdm;
18
19 import java.io.IOException;
20
21 import org.orekit.files.ccsds.definitions.TimeConverter;
22 import org.orekit.files.ccsds.section.AbstractWriter;
23 import org.orekit.files.ccsds.utils.generation.Generator;
24 import org.orekit.utils.units.Unit;
25
26
27
28
29
30
31
32 public class ODParametersWriter extends AbstractWriter {
33
34
35 private final ODParameters ODparameters;
36
37
38 private final TimeConverter timeConverter;
39
40
41
42
43
44
45
46 ODParametersWriter(final String xmlTag, final String kvnTag,
47 final ODParameters ODParameters, final TimeConverter timeConverter) {
48 super(xmlTag, kvnTag);
49 this.ODparameters = ODParameters;
50 this.timeConverter = timeConverter;
51 }
52
53
54 @Override
55 protected void writeContent(final Generator generator) throws IOException {
56
57 generator.writeComments(ODparameters.getComments());
58
59 generator.writeEntry(ODParametersKey.TIME_LASTOB_START.name(), timeConverter, ODparameters.getTimeLastObsStart(), true, false);
60 generator.writeEntry(ODParametersKey.TIME_LASTOB_END.name(), timeConverter, ODparameters.getTimeLastObsEnd(), true, false);
61 generator.writeEntry(ODParametersKey.RECOMMENDED_OD_SPAN.name(), ODparameters.getRecommendedOdSpan(), Unit.DAY, false);
62 generator.writeEntry(ODParametersKey.ACTUAL_OD_SPAN.name(), ODparameters.getActualOdSpan(), Unit.DAY, false);
63 generator.writeEntry(ODParametersKey.OBS_AVAILABLE.name(), ODparameters.getObsAvailable(), false);
64 generator.writeEntry(ODParametersKey.OBS_USED.name(), ODparameters.getObsUsed(), false);
65 generator.writeEntry(ODParametersKey.TRACKS_AVAILABLE.name(), ODparameters.getTracksAvailable(), false);
66 generator.writeEntry(ODParametersKey.TRACKS_USED.name(), ODparameters.getTracksUsed(), false);
67 generator.writeEntry(ODParametersKey.RESIDUALS_ACCEPTED.name(), ODparameters.getResidualsAccepted(), Unit.PERCENT, false);
68 generator.writeEntry(ODParametersKey.WEIGHTED_RMS.name(), ODparameters.getWeightedRMS(), Unit.ONE, false);
69
70 }
71
72 }