21 class DtElectromagneticEmissionPdu;
23 #define DtEMISSION_SUCCESS 0
24 #define DtBAD_SYS_NUM 1
25 #define DtBAD_BEAM_NUM 2
26 #define DtBAD_TARGET_NUM 3
27 #define DtBAD_SYS_ADDR 4
28 #define DtBAD_BEAM_ADDR 5
29 #define DtBAD_TARGET_ADDR 6
30 #define DtINCONSISTENT_SYS_LENGTHS_PDU_LENGTH 7
31 #define DtINCONSISTENT_BEAM_LENGTHS_SYS_LENGTH 8
32 #define DtINCONSISTENT_NUM_TARGETS_BEAM_LENGTH 9
36 class DT_DLL_VL DtFundamentalParameterData
42 float effectiveRadiatedPower;
43 float pulseRepetitionFrequency;
51 virtual void printData()
const;
52 virtual void printDataToStream( std::ostream& stream )
const;
66 virtual void printData()
const;
67 virtual void printDataToStream( std::ostream& stream )
const;
72 typedef void (*DtElectromagneticEmissionPduCb)( DtElectromagneticEmissionPdu* pdu,
void* usr );
83 DtEmitterSystemStaticSize = 20,
84 DtEmitterBeamStaticSize = 52
98 DtElectromagneticEmissionPduCb cb,
void* usr );
101 DtElectromagneticEmissionPduCb cb,
void* usr );
106 virtual const DtEventID& eventId()
const;
107 virtual void setEventId(
const DtEventID&
id );
112 virtual int numSystems()
const;
113 virtual void setNumSystems(
int num );
118 virtual int systemDataWords(
int sysNum,
int* retcode = 0 )
const;
120 virtual int numBeams(
int sysNum,
int* retcode = 0 )
const;
121 virtual void setNumBeams(
int sysNum,
int numBeams,
int* retcode = 0 );
124 virtual void setSystemName(
int sysNum,
DtEmitterSysName name,
int* retcode = 0 );
126 virtual DtEmissionFunc systemFunction(
int sysNum,
int* retcode = 0 )
const;
127 virtual void setSystemFunction(
int sysNum,
DtEmissionFunc func,
int* retcode = 0 );
129 virtual int emitterId(
int sysNum,
int* retcode = 0 )
const;
130 virtual void setEmitterId(
int sysNum,
int id,
int* retcode = 0 );
132 virtual const DtVector32& location(
int sysNum,
int* retcode = 0 )
const;
133 virtual void setLocation(
int sysNum,
const DtVector32& loc,
int* retcode = 0 );
140 virtual int beamDataWords(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
142 virtual int beamId(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
143 virtual void setBeamId(
int sysNum,
int beamNum,
int id,
int* retcode = 0 );
145 virtual int beamParameterIndex(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
146 virtual void setBeamParameterIndex(
int sysNum,
int beamNum,
int bpIndex,
int* retcode = 0 );
148 virtual const DtFundamentalParameterData& parameterData(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
149 virtual void setParameterData(
int sysNum,
int beamNum,
const DtFundamentalParameterData& data,
int* retcode = 0 );
151 virtual int beamFunction(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
152 virtual void setBeamFunction(
int sysNum,
int beamNum,
int func,
int* retcode = 0 );
154 virtual int numTargetsInBeam(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
155 virtual void setNumTargetsInBeam(
int sysNum,
int beamNum,
int num,
int* retcode = 0 );
157 virtual DtTrackingJamming trackingAllTargets(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
158 virtual void setTrackingAllTargets(
int sysNum,
int beamNum,
DtTrackingJamming trackJamAll,
int* retcode = 0 );
160 virtual DtU8 beamStatus(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
161 virtual void setBeamStatus(
int sysNum,
int beamNum,
DtU8 seq,
int* retcode = 0 );
163 virtual unsigned long jammingModeSequence(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
164 virtual void setJammingModeSequence(
int sysNum,
int beamNum,
unsigned long seq,
int* retcode = 0 );
166 virtual const DtTrackJamTarget& trackJamTarget(
int sysNum,
int beamNum,
int targetNum,
int* retcode = 0 )
const;
167 virtual void setTrackJamTarget(
int sysNum,
int beamNum,
int targetNum,
const DtTrackJamTarget& targ,
int* retcode = 0 );
171 virtual void printData()
const;
172 virtual void printDataToStream( std::ostream& stream )
const;
173 virtual void printSystem( std::ostream& stream,
int i )
const;
174 virtual void printBeam( std::ostream& stream,
int i,
int j )
const;
183 DtNetSystemData* emitterSystemAddr(
int sysNum,
int* retcode = 0 )
const;
184 DtNetBeamData* emitterBeamAddr(
int sysNum,
int beamNum,
int* retcode = 0 )
const;
185 DtNetEmitterTrackJam* targetAddr(
int sysNum,
int beamNum,
int targetNum,
int* retcode = 0 )
const;
189 virtual int computedSystemDataLength(
int sysNum )
const;
190 virtual int computedBeamDataLength(
int sysNum,
int beamNum )
const;
191 virtual int addressInPacket(
void* addr )
const;
192 virtual int computeStatus()
const;
202 mutable DtFundamentalParameterData myParameterData;
203 mutable DtTrackJamTarget myTrackJamTarget;
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnHLA.h:60
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Definition: disEnums.h:264
Definition: elecEmitP.h:42
Definition: elecEmitP.h:21
This file defines math constants and methods which may be useful in simulations.
Definition: elecEmitP.h:73
DtEmissionPduType
Definition: disEnums.h:585
DtPdu is the base class for all PDU's in VR-Link.
Definition: pdu.h:69
unsigned char DtU8
An eight bit unsigned integer value.
Definition: vlMachineTypes.h:137
Definition: vlVector.h:162
Represents Events in the RPR FOM.
Definition: eventId.h:52
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
DtEmissionFunc
Definition: disEnums.h:596
struct DtBufferPlaceHolder * DtBufferPtr
Definition: vlBaseMsg.h:17
#define DtUSE_INTERNAL_BUFFER
Definition: vlBaseMsg.h:22
DtTrackingJamming
Definition: disEnums.h:695
This file declares classes related to emitter systems.
Contains the DtEventId class declaration.
DtPduKind
([UID 4]) - PDU Type
Definition: disEnums.h:238
DtEmitterSysName
Definition: disEnums.h:591
class DtStateMsg:
Definition: stateMsgHLA.h:32
Definition: elecEmitP.h:63