WSF
Message12_7.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI//REL TO USA ONLY
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11#ifndef L16_MESSAGE12_7_HPP
12#define L16_MESSAGE12_7_HPP
13#include "MessageDefines.hpp"
14
15namespace WsfL16
16{
17namespace Messages
18{
19namespace J12_7
20{
21// Continuation2 and Continuation3 not yet defined.
22
23class RangeField : public NormalField<16, NoStatementMax>
24{
25public:
26 typedef double accessor_type;
28 RangeField& operator=(double aVal)
29 {
30 mValue = (value_type)(MetersToFeet(aVal) / 15);
31 return *this;
32 }
33 operator double() const { return FeetToMeters(mValue * 15); }
34};
35
37{
38public:
48
50 ElevationAngle,
51 BearingIntercept,
52 ElevationUncertainty,
53 BearingUncertainty,
54 FrequencyIntercept,
55 FrequencyExponent,
56 Spare);
57};
58
60{
61public:
63
68
69 // BearingAngleRate
71 // typedef IntegerFieldNS<9, NoStatementMax> FieldType5;
72
74
75 // ElevationAngleRate
77 // typedef IntegerFieldNS<9, NoStatementMax> FieldType7;
78
82 // typedef SpareField<12> FieldType11;
87
88 DEFINE_MEMBERS14(TimeIndicator,
89 Minute,
90 Second,
91 Hundredths,
92 BearingAngleRate,
93 BearingAngleRateUncertainty,
94 ElevationAngleRate,
95 ElevationAngleRateUncertainty,
96 EmitterPRF,
97 EmitterStatus,
98 SID,
99 ID,
100 Exercise,
101 Spare);
102 // Spare);
103};
104
106{
107public:
108 DEFINE_CONTINUATION(12, 7, 1)
109
117
118 DEFINE_MEMBERS7(Range, RangeUncertainty, Spare, RangeRate, RangeRateUncertainty, ObserverVelocityNorth, ObserverVelocityEast);
119};
120
122{
123public:
124 DEFINE_CONTINUATION(12, 7, 2)
125 /* ERIN...
126 typedef IntegerFieldNS<3,NoStatementZero> FieldType1;
127 typedef IntegerFieldNS<3,NoStatementZero> FieldType2;
128 typedef IntegerFieldNS<12, NoStatementZero> FieldType3;
129 typedef IntegerFieldNS<12, NoStatementZero> FieldType4;
130 typedef IntegerFieldNS<3,NoStatementZero> FieldType5;
131 typedef IntegerFieldNS<3,NoStatementZero> FieldType6;
132 typedef EnvironmentField FieldType7; // 3 bits
133 typedef SpareField<24> FieldType8; // ERIN
134 // ERIN
135 DEFINE_MEMBERS8(ProbabilityOwnForces, ProbabilityEnemyForces, SpaceAmbiguousType, LandAmbiguousType,
136 Type1Probability, Type2Probability, Environment, Spare_12_7_2);
137 */
138
146 DEFINE_MEMBERS7(ProbabilityOwnForces,
147 ProbabilityEnemyForces,
148 AmbiguousTypeI,
149 AmbiguousTypeII,
150 Type1Probability,
151 Type2Probability,
152 Environment);
153};
154
156{
157public:
158 DEFINE_CONTINUATION(12, 7, 3)
159
164 DEFINE_MEMBERS4(ObserverVelocityDown, TrackNumberObjective, Spare1, Spare2);
165};
166
167class Initial : public InitialBase
168{
169public:
171
180
181 DEFINE_MEMBERS8(IndexNumber, IsOffboard, IsMultipleTargets, IsLastInSequence, SensorType, JammerType, Latitude, Longitude);
182
183 // ERIN
184 DEFINE_CONTINUATIONS3(1, 2, 3)
186
187protected:
188};
189
190
191} // namespace J12_7
192} // namespace Messages
193} // namespace WsfL16
194
195#endif
#define DEFINE_CONTINUATION(_LABEL_, _SUB_LABEL_, _CONT_NUM_)
This should be used at the top of the public: section of each Continuation message.
Definition MessageDefines.hpp:72
#define DEFINE_CONTINUATIONS3(N1, N2, N3)
Definition MessageDefines.hpp:208
#define DEFINE_EXTENSIONS2()
Definition MessageDefines.hpp:254
Definition FieldTypes.hpp:751
Definition FieldTypes.hpp:959
Definition FieldTypes.hpp:972
for fields with 1 == true
Definition FieldTypes.hpp:986
The base class for J-Message ContinuationBase words.
Definition Messages.hpp:168
Definition FieldTypes.hpp:1243
Definition FieldTypes.hpp:1263
Definition FieldTypes.hpp:1279
Definition Messages.hpp:183
value_type mValue
Definition FieldTypes.hpp:293
SmallIntType< BIT_COUNT >::integer_type value_type
Use the smallest integer to hold the data.
Definition FieldTypes.hpp:229
Definition FieldTypes.hpp:1473
InitialBase(const InitialBase &aSrc)
Definition Messages.cpp:123
Integral field with a 'NoStatement' value. Supports conversion to/from int.
Definition FieldTypes.hpp:389
Integral field without a 'NoStatement' value. Supports conversion to/from int.
Definition FieldTypes.hpp:373
Definition Message12_7.hpp:106
IntegerFieldNS< 4, NoStatementZero > FieldType2
Definition Message12_7.hpp:111
SpareField< 1 > FieldType3
Definition Message12_7.hpp:112
DEFINE_MEMBERS7(Range, RangeUncertainty, Spare, RangeRate, RangeRateUncertainty, ObserverVelocityNorth, ObserverVelocityEast)
IntegerFieldNS< 12, NoStatementValue< 2048 > > FieldType6
Definition Message12_7.hpp:115
IntegerFieldNS< 12, NoStatementValue< 2048 > > FieldType7
Definition Message12_7.hpp:116
RangeField FieldType1
Definition Message12_7.hpp:110
IntegerFieldNS< 13, NoStatementValue< 4096 > > FieldType4
Definition Message12_7.hpp:113
IntegerFieldNS< 5, NoStatementZero > FieldType5
Definition Message12_7.hpp:114
Definition Message12_7.hpp:122
IntegerFieldNS< 9, NoStatementZero > FieldType2
Definition Message12_7.hpp:140
EnvironmentField FieldType7
Definition Message12_7.hpp:145
IntegerFieldNS< 9, NoStatementZero > FieldType5
Definition Message12_7.hpp:143
IntegerFieldNS< 12, NoStatementZero > FieldType3
Definition Message12_7.hpp:141
DEFINE_MEMBERS7(ProbabilityOwnForces, ProbabilityEnemyForces, AmbiguousTypeI, AmbiguousTypeII, Type1Probability, Type2Probability, Environment)
IntegerFieldNS< 12, NoStatementZero > FieldType4
Definition Message12_7.hpp:142
IntegerFieldNS< 9, NoStatementZero > FieldType1
Definition Message12_7.hpp:139
IntegerFieldNS< 9, NoStatementZero > FieldType6
Definition Message12_7.hpp:144
Definition Message12_7.hpp:156
SpareField< 16 > FieldType3
Definition Message12_7.hpp:162
IntegerFieldNS< 12, NoStatementValue< 2048 > > FieldType1
Definition Message12_7.hpp:160
DEFINE_MEMBERS4(ObserverVelocityDown, TrackNumberObjective, Spare1, Spare2)
SpareField< 16 > FieldType4
Definition Message12_7.hpp:163
TrackNumberField FieldType2
Definition Message12_7.hpp:161
Definition Message12_7.hpp:37
DEFINE_MEMBERS8(Altitude, ElevationAngle, BearingIntercept, ElevationUncertainty, BearingUncertainty, FrequencyIntercept, FrequencyExponent, Spare)
IntegerField< 4 > FieldType7
Definition Message12_7.hpp:46
IntegerFieldNS< 10, NoStatementZero > FieldType6
Definition Message12_7.hpp:45
IntegerFieldNS< 5, NoStatementZero > FieldType5
Definition Message12_7.hpp:44
ElevationAngleField FieldType2
Definition Message12_7.hpp:41
AltitudeField< 11 > FieldType1
Definition Message12_7.hpp:40
SpareField< 2 > FieldType8
Definition Message12_7.hpp:47
IntegerFieldNS< 5, NoStatementZero > FieldType4
Definition Message12_7.hpp:43
BearingInterceptField FieldType3
Definition Message12_7.hpp:42
Definition Message12_7.hpp:60
PRF_TypeField FieldType9
Definition Message12_7.hpp:80
IntegerFieldNS< 5, NoStatementZero > FieldType8
Definition Message12_7.hpp:79
EmitterStatusField FieldType10
Definition Message12_7.hpp:81
IntegerFieldNS< 4, NoStatementZero > FieldType14
Definition Message12_7.hpp:86
AngleRateField FieldType5
Definition Message12_7.hpp:70
HundredthsField FieldType4
Definition Message12_7.hpp:67
BooleanField FieldType13
Definition Message12_7.hpp:85
IntegerFieldNS< 5, NoStatementZero > FieldType6
Definition Message12_7.hpp:73
TimeIndicatorField FieldType1
Definition Message12_7.hpp:64
SecondField FieldType3
Definition Message12_7.hpp:66
AngleRateField FieldType7
Definition Message12_7.hpp:76
DEFINE_MEMBERS14(TimeIndicator, Minute, Second, Hundredths, BearingAngleRate, BearingAngleRateUncertainty, ElevationAngleRate, ElevationAngleRateUncertainty, EmitterPRF, EmitterStatus, SID, ID, Exercise, Spare)
MinuteField FieldType2
Definition Message12_7.hpp:65
IntegerFieldNS< 3, NoStatementZero > FieldType12
Definition Message12_7.hpp:84
IntegerFieldNS< 4, NoStatementZero > FieldType11
Definition Message12_7.hpp:83
Definition Message12_7.hpp:168
IntegerFieldNS< 3, NoStatementZero > FieldType6
Definition Message12_7.hpp:177
LongitudeField< 21 > FieldType8
Definition Message12_7.hpp:179
BooleanField FieldType2
Definition Message12_7.hpp:173
LatitudeField< 20 > FieldType7
Definition Message12_7.hpp:178
BooleanField FieldType3
Definition Message12_7.hpp:174
IntegerFieldNS< 4, NoStatementZero > FieldType5
Definition Message12_7.hpp:176
DEFINE_MEMBERS8(IndexNumber, IsOffboard, IsMultipleTargets, IsLastInSequence, SensorType, JammerType, Latitude, Longitude)
IntegerFieldNS< 6, NoStatementZero > FieldType1
Definition Message12_7.hpp:172
BooleanField FieldType4
Definition Message12_7.hpp:175
Definition Message12_7.hpp:24
double accessor_type
Definition Message12_7.hpp:26
AccessorUnitsMetersTag accessor_units
Definition Message12_7.hpp:27
RangeField & operator=(double aVal)
Definition Message12_7.hpp:28
Definition FieldTypes.hpp:1555
Definition FieldTypes.hpp:1665
Definition FieldTypes.hpp:1702
Definition FieldTypes.hpp:2005
Definition FieldTypes.hpp:2376
Definition FieldTypes.hpp:2806
Definition FieldTypes.hpp:2865
Definition Message12_7.hpp:20
Definition ComputerPart.hpp:45
double FeetToMeters(double aFeet)
Feet to Meters.
Definition NumericConversion.hpp:24
double MetersToFeet(double aMeters)
Meters to Feet.
Definition NumericConversion.hpp:19
This file should be included prior to defining a message. Currently there is a limit of 32 fields per...
Definition AllMessages.hpp:55
Definition FieldTypes.hpp:108
use a specific no-statement value
Definition FieldTypes.hpp:326
Definition FieldTypes.hpp:317
A field defined as spare.
Definition FieldTypes.hpp:305
Copyrights Multiple, All Rights Reserved