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.Units;
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 AdditionalParametersWriter extends AbstractWriter {
33
34
35 private final AdditionalParameters additionalParameters;
36
37
38
39
40
41
42 AdditionalParametersWriter(final String xmlTag, final String kvnTag,
43 final AdditionalParameters additionalParameters) {
44 super(xmlTag, kvnTag);
45 this.additionalParameters = additionalParameters;
46
47 }
48
49
50 @Override
51 protected void writeContent(final Generator generator) throws IOException {
52
53 generator.writeComments(additionalParameters.getComments());
54
55
56 generator.writeEntry(AdditionalParametersKey.AREA_PC.name(), additionalParameters.getAreaPC(), Units.M2, false);
57 generator.writeEntry(AdditionalParametersKey.AREA_DRG.name(), additionalParameters.getAreaDRG(), Units.M2, false);
58 generator.writeEntry(AdditionalParametersKey.AREA_SRP.name(), additionalParameters.getAreaSRP(), Units.M2, false);
59 generator.writeEntry(AdditionalParametersKey.MASS.name(), additionalParameters.getMass(), Unit.KILOGRAM, false);
60 generator.writeEntry(AdditionalParametersKey.CD_AREA_OVER_MASS.name(), additionalParameters.getCDAreaOverMass(), Units.M2_PER_KG, false);
61 generator.writeEntry(AdditionalParametersKey.CR_AREA_OVER_MASS.name(), additionalParameters.getCRAreaOverMass(), Units.M2_PER_KG, false);
62 generator.writeEntry(AdditionalParametersKey.THRUST_ACCELERATION.name(), additionalParameters.getThrustAcceleration(), Units.M_PER_S2, false);
63 generator.writeEntry(AdditionalParametersKey.SEDR.name(), additionalParameters.getSedr(), Units.W_PER_KG, false);
64
65 }
66
67 }