Package edu.nps.moves.dis7
Class DirectedEnergyFirePdu
java.lang.Object
edu.nps.moves.dis7.Pdu
edu.nps.moves.dis7.PduBase
edu.nps.moves.dis7.WarfareFamilyPdu
edu.nps.moves.dis7.DirectedEnergyFirePdu
- All Implemented Interfaces:
edu.nps.moves.dis7.Marshaller
,java.io.Serializable
public class DirectedEnergyFirePdu extends WarfareFamilyPdu implements java.io.Serializable
7.3.4 Used to communicate the firing of a directed energy weapon.
IEEE Std 1278.1-2012, IEEE Standard for Distributed Interactive Simulation—Application Protocols
- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description protected float
apertureDiameter
Field shall identify the beam diameter at the aperture/emitter, Section 7.3.4protected Vector3Float
apertureEmitterLocation
Field shall identify the location of the DE weapon aperture/emitter, Section 7.3.4protected float
commulativeShotTime
Field shall indicate the current cumulative duration of the shot, Section 7.3.4protected java.util.List<StandardVariableSpecification>
dERecords
Fields shall contain one or more DE records, records shall conform to the variable record format (Section6.2.82), Section 7.3.4protected EventIdentifier
eventID
protected EntityID
firingEntityID
ID of the entity that shotprotected DEFireFlags
flags
16bit Boolean field shall contain various flags to indicate status information needed to process a DE, Section 7.3.4 uid 313protected EntityType
munitionType
Field shall identify the munition type enumeration for the DE weapon beam, Section 7.3.4protected short
numberOfDERecords
Field shall specify the number of DE records, Section 7.3.4protected int
pad1
protected byte
pad2
protected int
pad3
protected short
pad4
protected float
pulseRepititionFrequency
protected DEFirePulseShape
pulseShape
Field shall identify the pulse shape and shall be represented as an 8-bit enumeration, Section 7.3.4 uid 312protected float
pulseWidth
field shall identify the pulse width emissions in units of seconds, Section 7.3.4protected ClockTime
shotStartTime
Field shall indicate the simulation time at start of the shot, Section 7.3.4protected float
wavelength
Field shall identify the emissions wavelength in units of meters, Section 7.3.4Fields inherited from class edu.nps.moves.dis7.Pdu
exerciseID, length, pduType, protocolFamily, protocolVersion, timestamp
-
Constructor Summary
Constructors Constructor Description DirectedEnergyFirePdu()
Constructor -
Method Summary
Methods inherited from class edu.nps.moves.dis7.PduBase
getPadding, getPduStatus, setPadding, setPduStatus
Methods inherited from class edu.nps.moves.dis7.Pdu
getExerciseID, getLength, getPduType, getProtocolFamily, getProtocolVersion, getTimestamp, marshal, setExerciseID, setLength, setPduType, setProtocolFamily, setProtocolVersion, setTimestamp
-
Field Details
-
firingEntityID
ID of the entity that shot -
eventID
-
munitionType
Field shall identify the munition type enumeration for the DE weapon beam, Section 7.3.4 -
shotStartTime
Field shall indicate the simulation time at start of the shot, Section 7.3.4 -
commulativeShotTime
protected float commulativeShotTimeField shall indicate the current cumulative duration of the shot, Section 7.3.4 -
apertureEmitterLocation
Field shall identify the location of the DE weapon aperture/emitter, Section 7.3.4 -
apertureDiameter
protected float apertureDiameterField shall identify the beam diameter at the aperture/emitter, Section 7.3.4 -
wavelength
protected float wavelengthField shall identify the emissions wavelength in units of meters, Section 7.3.4 -
pad1
protected int pad1 -
pulseRepititionFrequency
protected float pulseRepititionFrequency -
pulseWidth
protected float pulseWidthfield shall identify the pulse width emissions in units of seconds, Section 7.3.4 -
flags
16bit Boolean field shall contain various flags to indicate status information needed to process a DE, Section 7.3.4 uid 313 -
pulseShape
Field shall identify the pulse shape and shall be represented as an 8-bit enumeration, Section 7.3.4 uid 312 -
pad2
protected byte pad2 -
pad3
protected int pad3 -
pad4
protected short pad4 -
numberOfDERecords
protected short numberOfDERecordsField shall specify the number of DE records, Section 7.3.4 -
dERecords
Fields shall contain one or more DE records, records shall conform to the variable record format (Section6.2.82), Section 7.3.4
-
-
Constructor Details
-
DirectedEnergyFirePdu
public DirectedEnergyFirePdu()Constructor
-
-
Method Details
-
getMarshalledSize
public int getMarshalledSize()Returns the size of this serialized object in bytes- Specified by:
getMarshalledSize
in interfaceedu.nps.moves.dis7.Marshaller
- Overrides:
getMarshalledSize
in classWarfareFamilyPdu
-
setFiringEntityID
Setter forfiringEntityID
-
getFiringEntityID
Getter forfiringEntityID
-
setEventID
Setter foreventID
-
getEventID
Getter foreventID
-
setMunitionType
Setter formunitionType
-
getMunitionType
Getter formunitionType
-
setShotStartTime
Setter forshotStartTime
-
getShotStartTime
Getter forshotStartTime
-
setCommulativeShotTime
Setter forcommulativeShotTime
-
getCommulativeShotTime
public float getCommulativeShotTime()Getter forcommulativeShotTime
-
setApertureEmitterLocation
Setter forapertureEmitterLocation
-
getApertureEmitterLocation
Getter forapertureEmitterLocation
-
setApertureDiameter
Setter forapertureDiameter
-
getApertureDiameter
public float getApertureDiameter()Getter forapertureDiameter
-
setWavelength
Setter forwavelength
-
getWavelength
public float getWavelength()Getter forwavelength
-
setPad1
Setter forpad1
-
getPad1
public int getPad1()Getter forpad1
-
setPulseRepititionFrequency
Setter forpulseRepititionFrequency
-
getPulseRepititionFrequency
public float getPulseRepititionFrequency()Getter forpulseRepititionFrequency
-
setPulseWidth
Setter forpulseWidth
-
getPulseWidth
public float getPulseWidth()Getter forpulseWidth
-
setFlags
Setter forflags
-
getFlags
Setter forflags
-
setPulseShape
Setter forpulseShape
-
getPulseShape
Getter forpulseShape
-
setPad2
Setter forpad2
-
getPad2
public byte getPad2()Getter forpad2
-
setPad3
Setter forpad3
-
getPad3
public int getPad3()Getter forpad3
-
setPad4
Setter forpad4
-
getPad4
public short getPad4()Getter forpad4
-
setDERecords
public DirectedEnergyFirePdu setDERecords(java.util.List<StandardVariableSpecification> pDERecords)Setter fordERecords
-
getDERecords
Getter fordERecords
-
marshal
public void marshal(java.io.DataOutputStream dos) throws java.lang.ExceptionSerializes an object to a DataOutputStream.- Specified by:
marshal
in interfaceedu.nps.moves.dis7.Marshaller
- Overrides:
marshal
in classWarfareFamilyPdu
- Parameters:
dos
- the OutputStream- Throws:
java.lang.Exception
- if something goes wrong- See Also:
DataOutputStream
-
unmarshal
public int unmarshal(java.io.DataInputStream dis) throws java.lang.ExceptionUnserializes an object from a DataInputStream.- Specified by:
unmarshal
in interfaceedu.nps.moves.dis7.Marshaller
- Overrides:
unmarshal
in classWarfareFamilyPdu
- Parameters:
dis
- the InputStream- Returns:
- unmarshalled size
- Throws:
java.lang.Exception
- if something goes wrong- See Also:
DataInputStream
-
marshal
public void marshal(java.nio.ByteBuffer buff) throws java.lang.ExceptionPacks an object into the ByteBuffer.- Specified by:
marshal
in interfaceedu.nps.moves.dis7.Marshaller
- Overrides:
marshal
in classWarfareFamilyPdu
- Parameters:
buff
- The ByteBuffer at the position to begin writing- Throws:
java.nio.BufferOverflowException
- if buff is too smalljava.nio.ReadOnlyBufferException
- if buff is read onlyjava.lang.Exception
- ByteBuffer-generated exception- See Also:
ByteBuffer
-
unmarshal
public int unmarshal(java.nio.ByteBuffer buff) throws java.lang.ExceptionUnpacks a Pdu from the underlying data.- Specified by:
unmarshal
in interfaceedu.nps.moves.dis7.Marshaller
- Overrides:
unmarshal
in classWarfareFamilyPdu
- Parameters:
buff
- The ByteBuffer at the position to begin reading- Returns:
- marshalled size
- Throws:
java.nio.BufferUnderflowException
- if buff is too smalljava.lang.Exception
- ByteBuffer-generated exception- See Also:
ByteBuffer
-
equals
public boolean equals(java.lang.Object obj)- Overrides:
equals
in classWarfareFamilyPdu
-
equalsImpl
public boolean equalsImpl(java.lang.Object obj)Description copied from class:Pdu
Compare all fields that contribute to the state, ignoring transient and static fields, forthis
and the supplied object- Overrides:
equalsImpl
in classWarfareFamilyPdu
- Parameters:
obj
- the object to compare to- Returns:
- true if the objects are equal, false otherwise.
-
toString
public java.lang.String toString()- Overrides:
toString
in classWarfareFamilyPdu
-