10 #ifndef DtElectromagneticEmissionPdu_H_
11 #define DtElectromagneticEmissionPdu_H_
21 #define DtEMISSION_SUCCESS 0
22 #define DtBAD_SYS_NUM 1
23 #define DtBAD_BEAM_NUM 2
24 #define DtBAD_TARGET_NUM 3
25 #define DtBAD_SYS_ADDR 4
26 #define DtBAD_BEAM_ADDR 5
27 #define DtBAD_TARGET_ADDR 6
28 #define DtINCONSISTENT_SYS_LENGTHS_PDU_LENGTH 7
29 #define DtINCONSISTENT_BEAM_LENGTHS_SYS_LENGTH 8
30 #define DtINCONSISTENT_NUM_TARGETS_BEAM_LENGTH 9
45 virtual void printData()
const;
46 virtual void printDataToStream(std::ostream& stream)
const;
55 virtual void printData()
const;
56 virtual void printDataToStream(std::ostream& stream)
const;
72 DtEmitterSystemStaticSize=20,
73 DtEmitterBeamStaticSize=52
101 int numSystems()
const;
102 void setNumSystems(
int num);
105 int systemDataWords(
int sysNum,
int *retcode = 0)
const;
107 int numBeams(
int sysNum,
int *retcode = 0)
const;
108 void setNumBeams(
int sysNum,
int numBeams,
int *retcode = 0);
113 DtEmissionFunc systemFunction(
int sysNum,
int *retcode = 0)
const;
114 void setSystemFunction(
int sysNum,
DtEmissionFunc func,
int *retcode = 0);
116 int emitterId(
int sysNum,
int *retcode = 0)
const;
117 void setEmitterId(
int sysNum,
int id,
int *retcode = 0);
119 const DtVector& location(
int sysNum,
int *retcode = 0)
const;
120 void setLocation(
int sysNum,
const DtVector& loc,
int *retcode = 0);
123 int beamDataWords(
int sysNum,
int beamNum,
int *retcode = 0)
const;
125 int beamId(
int sysNum,
int beamNum,
int *retcode = 0)
const;
127 void setBeamId(
int sysNum,
int beamNum,
int id,
int *retcode = 0);
129 int beamParameterIndex(
int sysNum,
int beamNum,
int *retcode = 0)
const;
131 void setBeamParameterIndex(
int sysNum,
int beamNum,
int bpIndex,
135 int *retcode = 0)
const;
137 void setParameterData(
int sysNum,
int beamNum,
140 int beamFunction(
int sysNum,
int beamNum,
int *retcode = 0)
const;
142 void setBeamFunction(
int sysNum,
int beamNum,
int func,
int *retcode = 0);
144 int numTargetsInBeam(
int sysNum,
int beamNum,
int *retcode = 0)
const;
145 void setNumTargetsInBeam(
int sysNum,
int beamNum,
int num,
int *retcode = 0);
148 int *retcode = 0)
const;
150 void setTrackingAllTargets(
int sysNum,
int beamNum,
153 unsigned long jammingModeSequence(
int sysNum,
int beamNum,
154 int *retcode = 0)
const;
156 void setJammingModeSequence(
int sysNum,
int beamNum,
unsigned long seq,
160 int targetNum,
int *retcode = 0)
const;
162 void setTrackJamTarget(
int sysNum,
int beamNum,
int targetNum,
173 DtNetSystemData *emitterSystemAddr(
int sysNum,
int *retcode = 0)
const;
176 int *retcode = 0)
const;
179 int *retcode = 0)
const;
181 int computedSystemDataLength(
int sysNum)
const;
182 int computedBeamDataLength(
int sysNum,
int beamNum)
const;
183 void printSystem(std::ostream& stream,
int i)
const;
184 void printBeam(std::ostream& stream,
int i,
int j)
const;
185 int addressInPacket(
void *addr)
const;
186 int computeStatus()
const;