VR-Link API Documentation for DIS
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vl
packets
directedEnergyFireP.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 2013 VT MAK
3
** All rights reserved.
4
*********************************************************************/
5
#pragma once
6
10
11
#include <
vlpi/netStructs.h
>
12
#include <
vl/packets/transmitterP.h
>
13
#include <
vl/packets/standardVariableRecordP.h
>
14
#include <
vl/eventId.h
>
15
#include "
pduHeader.h
"
16
17
typedef
struct
DtNetDirectedEnergyFirePdu
18
{
19
DtNetPduHeader
myHeader
;
20
DtNetEntityIdentifier
myFiringEntityId
;
21
DtNetEventId
myEventId
;
22
DtNetEntityType
myMunitionType
;
23
DtNetClockTime
myShotStartTime
;
24
DtNetFloat32
myCumulativeShotTime
;
25
DtNetEntityCoordinates
myApertureEmitterLocationInFiringEntityCoordinates
;
26
DtNetFloat32
myApertureDiameter
;
27
DtNetFloat32
myWaveLength
;
28
DtNetU32
padding_32
;
29
DtNetFloat32
myPulseRepetitionFrequency
;
30
DtNetFloat32
myPulseWidth
;
31
DtNetU16
myFlags
;
32
DtNetU8
myPulseShape
;
33
DtNetU8
myPadding8
;
34
DtNetU32
myPadding32
;
35
DtNetU16
myPadding16
;
36
DtNetU16
myNumberOfDeRecords
;
37
// DtNetDEPrecisionAimpointRecord | DtNetDEAreaAimpointRecord deRecords[]
38
}
DtNetDirectedEnergyFirePdu
;
39
40
/********************* Directed Energy Records *********************/
41
42
// DE Target Energy Deposition record
43
typedef
struct
DtNetDETargetEnergyDepositionRecord
44
{
45
bool
operator==
(
const
DtNetDETargetEnergyDepositionRecord
& rhs)
const
46
{
47
return
(
myTargetEntityId
== rhs.
myTargetEntityId
)
48
&& (
myPeakIrradiance
== rhs.
myPeakIrradiance
);
49
}
50
bool
operator!=
(
const
DtNetDETargetEnergyDepositionRecord
& rhs)
const
51
{
52
return
!
operator==
(rhs);
53
}
54
55
DtNetEntityIdentifier
myTargetEntityId
;
56
DtNetU16
padding_16
;
57
DtNetFloat32
myPeakIrradiance
;
58
}
DtNetDETargetEnergyDepositionRecord
;
59
60
// DE Area Aimpoint record
61
typedef
struct
DtNetDEAreaAimpointRecord
:
public
DtNetStandardVariableRecord
62
{
63
bool
operator==
(
const
DtNetDEAreaAimpointRecord
& rhs)
const
64
{
65
return
(
myRecordType
== rhs.
myRecordType
)
66
&& (
myRecordLength
== rhs.
myRecordLength
)
67
&& (
myBeamAntennaPatternRecordCount
== rhs.
myBeamAntennaPatternRecordCount
)
68
&& (
myDeTargetEnergyDepositionRecordCount
== rhs.
myDeTargetEnergyDepositionRecordCount
);
69
}
70
bool
operator!=
(
const
DtNetDEAreaAimpointRecord
& rhs)
const
71
{
72
return
!
operator==
(rhs);
73
}
74
75
DtNetU16
myPadding_16
;
76
DtNetU16
myBeamAntennaPatternRecordCount
;
77
DtNetU16
myDeTargetEnergyDepositionRecordCount
;
78
// Beam Antenna Pattern records
79
// DE Target Energy Deposition records
80
// Padding To 64-bit boundary
81
}
DtNetDEAreaAimpointRecord
;
82
83
// DE Precision Aimpoint record
84
typedef
struct
DtNetDEPrecisionAimpointRecord
:
public
DtNetStandardVariableRecord
85
{
86
bool
operator==
(
const
DtNetDEPrecisionAimpointRecord
& rhs)
const
87
{
88
return
(
myRecordType
== rhs.
myRecordType
)
89
&& (
myRecordLength
== rhs.
myRecordLength
)
90
&& (
myTargetSpotWorldLocation
== rhs.
myTargetSpotWorldLocation
)
91
&& (
myTargetSpotEntityLocation
== rhs.
myTargetSpotEntityLocation
)
92
&& (
myTargetSpotVelocity
== rhs.
myTargetSpotVelocity
)
93
&& (
myTargetSpotAcceleration
== rhs.
myTargetSpotAcceleration
)
94
&& (
myTargetEntityId
== rhs.
myTargetEntityId
)
95
&& (
myTargetComponentIdentifier
== rhs.
myTargetComponentIdentifier
)
96
&& (
myBeamSpotType
== rhs.
myBeamSpotType
)
97
&& (
myBeamSpotCrossSectionSemiMajorAxis
== rhs.
myBeamSpotCrossSectionSemiMajorAxis
)
98
&& (
myBeamSpotCrossSectionSemiMinorAxis
== rhs.
myBeamSpotCrossSectionSemiMinorAxis
)
99
&& (
myBeamSpotCrossSectionOrientationAngle
== rhs.
myBeamSpotCrossSectionOrientationAngle
)
100
&& (
myPeakIrradiance
== rhs.
myPeakIrradiance
);
101
}
102
bool
operator!=
(
const
DtNetDEPrecisionAimpointRecord
& rhs)
const
103
{
104
return
!
operator==
(rhs);
105
}
106
107
DtNetU16
padding_16
;
108
DtNetWorldCoordinates
myTargetSpotWorldLocation
;
109
DtNetEntityCoordinates
myTargetSpotEntityLocation
;
110
DtNetLinearVelocity
myTargetSpotVelocity
;
111
DtNetLinearAcceleration
myTargetSpotAcceleration
;
112
DtNetEntityIdentifier
myTargetEntityId
;
113
DtNetU8
myTargetComponentIdentifier
;
114
DtNetU8
myBeamSpotType
;
115
DtNetFloat32
myBeamSpotCrossSectionSemiMajorAxis
;
116
DtNetFloat32
myBeamSpotCrossSectionSemiMinorAxis
;
117
DtNetFloat32
myBeamSpotCrossSectionOrientationAngle
;
118
DtNetFloat32
myPeakIrradiance
;
119
DtNetU32
padding_32
;
120
}
DtNetDEPrecisionAimpointRecord
;
Document ID: Generated on Thu Feb 22 04:26:36 EST 2018 from SVN revision 186468
Copyright © 2005-2016 VT MÄK. All Rights Reserved (
www.mak.com
)