VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
emitterBeamRepository.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
9 
10 #ifndef DtEmitterBeamRepository_H_
11 #define DtEmitterBeamRepository_H_
12 
13 #include "stateRepository.h"
14 #include "hostStructs.h"
15 #include "eventId.h"
16 #include <vlpi/disEnums.h>
17 #include <vlutil/vlList.h>
18 
20 
21 #if DtHLA
25 #else
26 #include "trackJamDesignatorList.h"
27 #endif
28 
30 
32 {
37 };
38 
43 
45 {
46 public:
47 
50 
52  virtual ~DtEmitterBeamRepository();
53 
56 
59  const DtEmitterBeamRepository& orig);
60 
62  virtual DtStateRepository* clone(bool copy = false) const;
63 
64 
66  virtual void setAzimuthCenter(DtFloat32 center);
67  virtual DtFloat32 azimuthCenter() const;
68 
70  virtual void setAzimuthSweep(DtFloat32 sweep);
71  virtual DtFloat32 azimuthSweep() const;
72 
74  virtual void setBeamFunction(DtBeamFunc func);
75  virtual DtBeamFunc beamFunction() const;
76 
78  virtual void setBeamStatus(DtU8 func);
79  virtual DtU8 beamStatus() const;
80 
82  virtual void setBeamId(DtU8 id);
83  virtual DtU8 beamId() const;
84 
86  virtual void setBeamParameterIndex(DtU16 index);
87  virtual DtU16 beamParameterIndex() const;
88 
90  virtual void setElevationCenter(DtFloat32 center);
91  virtual DtFloat32 elevationCenter() const;
92 
94  virtual void setElevationSweep(DtFloat32 sweep);
95  virtual DtFloat32 elevationSweep() const;
96 
98 #if DtHLA
99  virtual void setEmittingSystemId(const DtGlobalObjectDesignator& id);
100  virtual const DtGlobalObjectDesignator& emittingSystemId() const;
101 #else
102  virtual void setEmittingSystemId(int id);
107  virtual int emittingSystemId() const;
108 #endif
109 
111  virtual DtEmitterSystemRepository* emittingSystem();
112  virtual void setEmittingSystem(DtEmitterSystemRepository* esr);
113 
115  virtual void setERP(DtFloat32 erp);
116  virtual DtFloat32 ERP() const;
117 
122  virtual void setEntityId(const DtEntityIdentifier& id);
123  virtual const DtEntityIdentifier& entityId() const;
124 
126  virtual void setEventId(const DtEventId& id);
127  virtual const DtEventId& eventId() const;
128 
130  virtual bool isDirty() const;
131  virtual void clearIsDirtyFlag();
132 
134  virtual void setFrequency(DtFloat32 freq);
135  virtual DtFloat32 frequency() const;
136 
138  virtual void setFrequencyRange(DtFloat32 freq);
139  virtual DtFloat32 frequencyRange() const;
140 
142  virtual void setPRF(DtFloat32 prf);
143  virtual DtFloat32 PRF() const;
144 
146  virtual void setPulseWidth(DtFloat32 width);
147  virtual DtFloat32 pulseWidth() const;
148 
150  virtual void setSweepSync(DtFloat32 sync);
151  virtual DtFloat32 sweepSync() const;
152 
154  virtual void setBeamType(DtBeamType flag);
155  virtual DtBeamType beamType() const;
156 
159 
161  virtual void setJammingModeSequence(DtU32 sequence);
162  virtual DtU32 jammingModeSequence() const;
163 
166  virtual const DtTrackJamDesignatorList& trackJamTargets() const;
167  virtual DtTrackJamDesignatorList* trackJamTargets();
168 
170  virtual void setHighDensity(bool val);
171  virtual bool highDensity() const;
172 
174  virtual void printData() const;
175 
177  virtual void printDataToStream(std::ostream& stream) const;
178 
181  virtual void setAzimuthThreshold(double threshold);
182 
184  virtual double azimuthThreshold() const;
185 
188  virtual void setElevationThreshold(double threshold);
189 
191  virtual double elevationThreshold() const;
192 
195  virtual void setFrequencyThreshold(double threshold);
196 
198  virtual double frequencyThreshold() const;
199 
202  virtual void setFrequencyRangeThreshold(double threshold);
203 
205  virtual double frequencyRangeThreshold() const;
206 
209  virtual void setPRFThreshold(double threshold);
210 
212  virtual double PRFThreshold() const;
213 
216  virtual void setPulseWidthThreshold(double threshold);
217 
219  virtual double pulseWidthThreshold() const;
220 
224  virtual void setPrfJitter(bool val);
225 
227  virtual bool prfJitter() const;
228 
230  virtual void setBeamWidth(const DtFloat32& val);
231 
233  virtual const DtFloat32 beamWidth() const;
234 
236  virtual void setScanData(const DtRadarBeamScanDataVariantStruct& val);
237 
239  virtual const DtRadarBeamScanDataVariantStruct& scanData() const;
240 
242 
243 protected:
244 
246  virtual void printTrackJam(std::ostream& stream) const;
247 
248 public:
250  static DtEmitterBeamRepository* create();
251 
252 protected:
262 #if DtHLA
264 #else
265  DtU8 myEmittingSystemId;
266 #endif
276 
286 
287  // Thresholds.
294 
295  // To keep track of any updates being made
296  bool myIsDirty;
297 };
298 
299 #endif //DtEmitterBeamRepository_H_
300 
double myPulseWidthThreshold
Definition: emitterBeamRepository.h:293
Definition: emitterBeamRepository.h:34
Contains the DtTrackJamDesignatorList class declaration.
DtRadarBeamScanDataVariantStruct myScanData
Definition: emitterBeamRepository.h:280
DtFloat32 myFrequencyRange
Definition: emitterBeamRepository.h:271
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
DtFloat32 myERP
Definition: emitterBeamRepository.h:267
DtFloat32 myAzimuthCenter
Common to emitter beams and track jam beams.
Definition: emitterBeamRepository.h:254
This file contains the declaration of DtList and DtListItem.
Definition: radarBeamScanDataVariantStruct.h:32
DtBeamType
Definition: emitterBeamRepository.h:31
DtEventId myEventId
Definition: emitterBeamRepository.h:269
DtFloat32 myBeamWidth
Definition: emitterBeamRepository.h:279
DtU8 myBeamId
Definition: emitterBeamRepository.h:258
DtFloat32 myAzimuthSweep
Definition: emitterBeamRepository.h:255
double myFrequencyRangeThreshold
Definition: emitterBeamRepository.h:291
DtEmitterSystemRepository * myEmitterSystem
Definition: emitterBeamRepository.h:275
DtBeamFunc myBeamFunction
Definition: emitterBeamRepository.h:256
DtBeamFunc
Definition: disEnums.h:687
DtFloat32 myFrequency
Definition: emitterBeamRepository.h:270
double myAzimuthThreshold
Definition: emitterBeamRepository.h:288
Definition: emitterBeamRepository.h:36
DtU8 myBeamStatus
Definition: emitterBeamRepository.h:257
DtFloat32 myPulseWidth
Definition: emitterBeamRepository.h:273
double myPRFThreshold
Definition: emitterBeamRepository.h:292
unsigned char DtU8
An eight bit unsigned integer value.
Definition: vlMachineTypes.h:137
class DtEmitterBeamRepository:
Definition: emitterBeamRepository.h:44
Represents Events in the RPR FOM.
Definition: eventId.h:52
DtEntityIdentifier myEntityId
Definition: emitterBeamRepository.h:268
virtual DtStateRepository * clone(bool copy=false) const
Return a copy/empty object of the same type as this.
Instances of DtGlobalObjectDesignatorList are list of globally significant object identifiers...
Definition: globalObjectDesignatorList.h:21
DtStateRepository is an abstract base class for maintaining state for an object.
Definition: stateRepository.h:50
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
DtFloat32 myElevationCenter
Definition: emitterBeamRepository.h:260
Definition: emitterBeamRepository.h:35
Instances of DtEmitterSystemRepository are used to store state data for emitter systems in both HLA a...
Definition: emitterSystemRepository.h:29
DtFloat32 myPRF
Definition: emitterBeamRepository.h:272
This file is deprecated - Please see simulationAddress.h, entityIdentifier.h, entityType.h, burstDescriptor.h, and NetStructs.h.
double myElevationThreshold
Definition: emitterBeamRepository.h:289
DtFloat32 myElevationSweep
Definition: emitterBeamRepository.h:261
unsigned short DtU16
A 16 bit unsigned integer value.
Definition: vlMachineTypes.h:140
bool myPrfJitter
For MAK_RadarBeam.
Definition: emitterBeamRepository.h:278
DtBeamType myBeamType
Definition: emitterBeamRepository.h:284
DtTrackJamDesignatorList myTrackJamTargets
Definition: emitterBeamRepository.h:283
Contains the standard DIS enumerations.
DtGlobalObjectDesignatorList DtTrackJamDesignatorList
Definition: emitterBeamRepository.h:24
virtual void printData() const
Print State Data to the DtInfo Stream.
double myFrequencyThreshold
Definition: emitterBeamRepository.h:290
unsigned long DtU32
A 32 bit unsigned integer value.
Definition: vlMachineTypes.h:153
DtFloat32 mySweepSync
Definition: emitterBeamRepository.h:274
DtU32 myJammingModeSequence
For Track Jam Beams.
Definition: emitterBeamRepository.h:282
Contains the DtEventId class declaration.
Instances of DtString are used to represent strings.
Definition: vlString.h:36
DtU16 myBeamParameterIndex
Definition: emitterBeamRepository.h:259
virtual void printDataToStream(std::ostream &stream) const
Prints the State Data to the stream specified.
DtGlobalObjectDesignator DtTrackJamDesignator
Definition: emitterBeamRepository.h:23
bool myHighDensity
Definition: emitterBeamRepository.h:285
DtGlobalObjectDesignator myEmittingSystemId
Definition: emitterBeamRepository.h:263
DtStateRepository & operator=(const DtStateRepository &orig)
assignment operator
bool myIsDirty
Definition: emitterBeamRepository.h:296
Definition: emitterBeamRepository.h:33
This class declares DtGlobalObjectDesignatorList.

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)