Contents | Package | Class | Tree | Deprecated | Index | Help
PREV | NEXT SHOW LISTS | HIDE LISTS

Class mil.navy.nps.dis.DetonationPdu

java.lang.Object
    |
    +----mil.navy.nps.dis.PduElement
            |
            +----mil.navy.nps.dis.ProtocolDataUnit
                    |
                    +----mil.navy.nps.dis.DetonationPdu

public class DetonationPdu
extends ProtocolDataUnit
Version:
1.0
Author:
Don McGregor (http://www.stl.nps.navy.mil/~mcgredo)
Location:
http://www.stl.nps.navy.mil/dis-java-vrml/mil/navy/nps/dis/DetonationPdu.java
Hierarchy Diagram:
Summary:
The detonation or impact of munitions shall be communicated by issuing a Detonation PDU.
Explanation:
The detonation Pdu denotes the detonation of a weapon. It inherits the header information from ProtocolDataUnit, an abstract class that contains assorted protocol information. It implements the IDs of what's firing, what's being shot at, the munition, the event, and where the munition is headed. As with other PDUs, it knows how to serialize and deserialize itself from the wire. It also knows how to clone itself, and knows how to calculate its size when sent to the wire.
History:
16Dec96 /Don McGregor /New
10Mar97 /Don McGregor /Cleaned up for javadoc
16Apr97 /Don McGregor /PrintStream passed to printValues
8Dec97 /Ronan Fauglas /changes for documentation templates + complements in documentation
11Dec97 /Ronan Fauglas /changed access methods: thisVariable() --> getThisVariable()
References:
DIS Data Dictionary : Detonation PDU
DIS-Java-VRML Working Group: http://www.stl.nps.navy.mil/dis-java-vrml/
DIS specification : IEEE 1278.1, Section 4.4.3.3, 5.4.4.2
See Also:
ProtocolDataUnit, PduElement, mil.navy.nps.util.SerializationInterface, FirePdu

Field Summary
java.util.Vector  articulationParameters
List of articulation parameters.
BurstDescriptor  burstDescription
Burst Descriptor - This field shall describe the type of munition impacting or detonating, the warhead, the fuse, the quantity, and the rate.
mil.navy.nps.util.UnsignedByte  detonationResult
Detonation Result - This field shall specify the result of the detonation.
EventID  eventID
Event Identification - This field shall contain the same data as in the Event Identification field of the Fire PDU that communicated the launch of the munition.
EntityID  firingEntityID
Firing Entity Identification - This field shall identify the firing entity.
EntityCoordinate  locationInEntityCoordinates
Location in Entity's coordinates - This field shall specify the location of the detonation or impact in the target entity's coordinate system.
WorldCoordinate  locationInWorldCoordinate
Location in World Coordinate - This field shall specify the location of the detonation in world coordinates.
EntityID  munitionID
Munition Identification - This field shall specify the entity ID of the fired munition if tracking data is required.
static int  sizeOf
Constant value--size of an Detonation PDU with header, without the articulation parameters.
EntityID  targetEntityID
Target Entity Identification - This field shall identify the target entity.
LinearVelocity  velocity
Velocity - This field shall specify the velocity of the munition immediately before detonation/impact.
 
Fields inherited from class mil.navy.nps.dis.ProtocolDataUnit
 DEBUG, exerciseID, pduType, protocolFamily, protocolVersion, sizeOf, timestamp
 

Constructor Summary
 DetonationPdu()
Default constructor--fills with zeros for all values.
 

Method Summary
void  addArticulationParameter(ArticulationParameter pParameter)
Inserts a Articulation Parameter at the end of the list.
java.lang.Object  clone()
 
void  deSerialize(java.io.DataInputStream inputStream)
 
ArticulationParameter  getArticulationParameterAt(int pIdx)
Returns the Articulation Parameter at the index given in parameter.
BurstDescriptor  getBurstDescription()
 
mil.navy.nps.util.UnsignedByte  getDetonationResult()
 
EventID  getEventID()
 
EntityID  getFiringEntityID()
 
EntityCoordinate  getLocationInEntityCoordinates()
 
WorldCoordinate  getLocationInWorldCoordinate()
 
EntityID  getMunitionID()
 
EntityID  getTargetEntityID()
 
LinearVelocity  getVelocity()
 
int  length()
 
java.lang.String  PDUName()
 
void  printValues(int indentLevel, java.io.PrintStream printStream)
 
void  serialize(java.io.DataOutputStream outputStream)
 
void  setBurstDescription(BurstDescriptor pBurstDescription)
 
void  setDetonationResult(mil.navy.nps.util.UnsignedByte pDetonationResult)
 
void  setDetonationResult(int pDetonationResult)
 
void  setEventID(EventID pEventID)
 
void  setFiringEntityID(EntityID pFiringEntityID)
 
void  setLocationInEntityCoordinates(EntityCoordinate pLocationInEntityCoordinates)
 
void  setLocationInEntityCoordinates(float x, float y, float z)
 
void  setLocationInWorldCoordinate(WorldCoordinate pLocation)
 
void  setLocationInWorldCoordinate(double x, double y, double z)
 
void  setMunitionID(EntityID pMunitionID)
 
void  setTargetEntityID(EntityID pTargetEntityID)
 
void  setVelocity(LinearVelocity pVelocity)
 
void  setVelocity(float x, float y, float z)
 
 
Methods inherited from class mil.navy.nps.dis.ProtocolDataUnit
 , clone, datagramToPdu, deSerialize, getExerciseID, getPduType, getProtocolFamily, getProtocolVersion, getTimestamp, getVRMLTimestamp, length, makeTimestampCurrent, PDUName, printValues, serialize, setExerciseID, setExerciseID, setPduType, setPduType, setProtocolFamily, setProtocolFamily, setProtocolVersion, setProtocolVersion, setSimulationStartTime, setTimestamp, setTimestamp
 
Methods inherited from class mil.navy.nps.dis.PduElement
 clone, deSerialize, length, printValues, serialize
 
Methods inherited from class java.lang.Object
 clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

firingEntityID

protected EntityID firingEntityID
Firing Entity Identification - This field shall identify the firing entity.
Value:
If the detonation is not preceded by a Fire PDU then the Firing Entity Identification shall be NO SPECIFIC ENTITY.

targetEntityID

protected EntityID targetEntityID
Target Entity Identification - This field shall identify the target entity.
Value:
If the target ID is unknown, this field shall contain the value TARGET ID UNKNOWN.

munitionID

protected EntityID munitionID
Munition Identification - This field shall specify the entity ID of the fired munition if tracking data is required.
Value:
A munition ID shall have a value of MUNITION NOT TRACKED if tracking data for the munition is not required.

eventID

protected EventID eventID
Event Identification - This field shall contain the same data as in the Event Identification field of the Fire PDU that communicated the launch of the munition.
Value:
If the detonation is not preceded by a corresponding fire event, then the Event Number field of the Event Identifier record shall be zero (e.g., land mines detonation).

velocity

protected LinearVelocity velocity
Velocity - This field shall specify the velocity of the munition immediately before detonation/impact.

locationInWorldCoordinate

protected WorldCoordinate locationInWorldCoordinate
Location in World Coordinate - This field shall specify the location of the detonation in world coordinates.

burstDescription

protected BurstDescriptor burstDescription
Burst Descriptor - This field shall describe the type of munition impacting or detonating, the warhead, the fuse, the quantity, and the rate.

locationInEntityCoordinates

protected EntityCoordinate locationInEntityCoordinates
Location in Entity's coordinates - This field shall specify the location of the detonation or impact in the target entity's coordinate system. This information should be used for damage assessment.
Value:
If the ID of the target is unknown, this field shall contain NO LOCATION.

detonationResult

protected mil.navy.nps.util.UnsignedByte detonationResult
Detonation Result - This field shall specify the result of the detonation.
Value:
Enumeration. See information below for more information
References:
DIS Data Dictionary: Force ID Field
See Section 5 in EBV-DOC

articulationParameters

protected java.util.Vector articulationParameters
List of articulation parameters.
References:
DIS Data Dictionary: Articulation Parameter Record
See Section 5 in EBV-DOC

sizeOf

public static final int sizeOf
Constant value--size of an Detonation PDU with header, without the articulation parameters. sizeOf = 104 bytes
Constructor Detail

DetonationPdu

public DetonationPdu()
Default constructor--fills with zeros for all values.
Method Detail

clone

public java.lang.Object clone()
Overrides:
clone in class ProtocolDataUnit

serialize

public void serialize(java.io.DataOutputStream outputStream)
Overrides:
serialize in class ProtocolDataUnit

deSerialize

public void deSerialize(java.io.DataInputStream inputStream)
Overrides:
deSerialize in class ProtocolDataUnit

length

public int length()
Overrides:
length in class ProtocolDataUnit

PDUName

public java.lang.String PDUName()
Overrides:
PDUName in class ProtocolDataUnit

printValues

public void printValues(int indentLevel,
                        java.io.PrintStream printStream)
Overrides:
printValues in class ProtocolDataUnit

getFiringEntityID

public EntityID getFiringEntityID()

setFiringEntityID

public void setFiringEntityID(EntityID pFiringEntityID)

getTargetEntityID

public EntityID getTargetEntityID()

setTargetEntityID

public void setTargetEntityID(EntityID pTargetEntityID)

getMunitionID

public EntityID getMunitionID()

setMunitionID

public void setMunitionID(EntityID pMunitionID)

getEventID

public EventID getEventID()

setEventID

public void setEventID(EventID pEventID)

getVelocity

public LinearVelocity getVelocity()

setVelocity

public void setVelocity(LinearVelocity pVelocity)

setVelocity

public void setVelocity(float x,
                        float y,
                        float z)

getLocationInWorldCoordinate

public WorldCoordinate getLocationInWorldCoordinate()

setLocationInWorldCoordinate

public void setLocationInWorldCoordinate(WorldCoordinate pLocation)

setLocationInWorldCoordinate

public void setLocationInWorldCoordinate(double x,
                                         double y,
                                         double z)

getBurstDescription

public BurstDescriptor getBurstDescription()

setBurstDescription

public void setBurstDescription(BurstDescriptor pBurstDescription)

getLocationInEntityCoordinates

public EntityCoordinate getLocationInEntityCoordinates()

setLocationInEntityCoordinates

public void setLocationInEntityCoordinates(EntityCoordinate pLocationInEntityCoordinates)

setLocationInEntityCoordinates

public void setLocationInEntityCoordinates(float x,
                                           float y,
                                           float z)

getDetonationResult

public mil.navy.nps.util.UnsignedByte getDetonationResult()

setDetonationResult

public void setDetonationResult(mil.navy.nps.util.UnsignedByte pDetonationResult)

setDetonationResult

public void setDetonationResult(int pDetonationResult)

getArticulationParameterAt

public ArticulationParameter getArticulationParameterAt(int pIdx)
Returns the Articulation Parameter at the index given in parameter.
Parameters:
pIdx - the index of the Articulation Parameter we want to obtain
Returns:
the Articulation Parameter pointed by the index in parameter

addArticulationParameter

public void addArticulationParameter(ArticulationParameter pParameter)
Inserts a Articulation Parameter at the end of the list.
Parameters:
pParameter - the Articulation Parameter to be inserted in the list

Contents | Package | Class | Tree | Deprecated | Index | Help
PREV | NEXT SHOW LISTS | HIDE LISTS