Package edu.nps.moves.dis7.pdus
Class FirePdu
java.lang.Object
edu.nps.moves.dis7.pdus.Pdu
edu.nps.moves.dis7.pdus.PduBase
edu.nps.moves.dis7.pdus.WarfareFamilyPdu
edu.nps.moves.dis7.pdus.FirePdu
- All Implemented Interfaces:
Marshaller,Serializable
7.3.2 Used to communicate the firing of a weapon or expendable.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ByteArrayOutputStreambyteArrayOutputStream (baos) is used for marshal/unmarshal serializationprotected DataOutputStreamdataOutputStream (dos) is used for marshal/unmarshal serializationprotected MunitionDescriptorThis field shall describe the firing or launch of a munition or expendable represented by one of the following types of Descriptor records: Munition Descriptor (6.2.20.2) or Expendable Descriptor (6.2.20.4).protected EventIdentifierThis field shall contain an identification generated by the firing entity to associate related firing and detonation events.protected intThis field shall identify the fire mission (see 5.4.3.3).protected EntityIDID of the entity that shotprotected Vector3DoubleThis field shall specify the location, in world coordinates, from which the munition was launched, and shall be represented by a World Coordinates record (see 6.2.97).protected EntityIDThis field shall specify the entity identification of the fired munition or expendable.static final StringThe name of this PDU typeprotected floatThis field shall specify the range that an entity's fire control system has assumed in computing the fire control solution.protected EntityIDID of the entity that is being shot atprotected Vector3FloatThis field shall specify the velocity of the fired munition at the point when the issuing simulation application intends the externally visible effects of the launch (e.g. exhaust plume or muzzle blast) to first become apparent.Fields inherited from class edu.nps.moves.dis7.pdus.WarfareFamilyPdu
FAMILY_NAMEFields inherited from class edu.nps.moves.dis7.pdus.Pdu
exerciseID, length, pduType, protocolFamily, protocolVersion, timestamp -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncopy()copy method creates a deep copy of current object using preferred marshalling methodCreates a "deep copy" of current object using ByteBuffer methods.copy method creates a deep copy of current object using DataOutputStream methods.booleanbooleanequalsImpl(Object obj) Compare all fields that contribute to the state, ignoring transient and static fields, forthisand the supplied objectGetter fordescriptorGetter foreventIDintGetter forfireMissionIndexGetter forfiringEntityIDGetter forlocationInWorldCoordinatesintReturns size of this serialized (marshalled) object in bytesGetter formunitionExpendibleIDfloatgetRange()Getter forrangeGetter fortargetEntityIDGetter forvelocityinthashCode()voidmarshal(DataOutputStream dos) Serializes an object to a DataOutputStream.voidmarshal(ByteBuffer byteBuffer) Packs an object into the ByteBuffer.setDescriptor(MunitionDescriptor pDescriptor) Setter fordescriptorsetEventID(EventIdentifier pEventID) Setter foreventIDsetFireMissionIndex(int pFireMissionIndex) Setter forfireMissionIndexsetFiringEntityID(EntityID pFiringEntityID) Setter forfiringEntityIDsetLocationInWorldCoordinates(Vector3Double pLocationInWorldCoordinates) Setter forlocationInWorldCoordinatessetMunitionExpendibleID(EntityID pMunitionExpendibleID) Setter formunitionExpendibleIDsetRange(float pRange) Setter forrangesetTargetEntityID(EntityID pTargetEntityID) Setter fortargetEntityIDsetVelocity(Vector3Float pVelocity) Setter forvelocitytoString()intunmarshal(DataInputStream dis) Deserializes an object from a DataInputStream.intunmarshal(ByteBuffer byteBuffer) Unpacks a Pdu from the underlying data.Methods inherited from class edu.nps.moves.dis7.pdus.PduBase
getPadding, getPduStatus, setPadding, setPadding, setPduStatusMethods inherited from class edu.nps.moves.dis7.pdus.Pdu
copyByPduFactory, getExerciseID, getLength, getPduType, getProtocolFamily, getProtocolVersion, getTimestamp, getTimestampSeconds, isAcknowledgeRPdu, isActionRequestPdu, isActionRequestRPdu, isActionResponsePdu, isActionResponseRPdu, isAggregateStatePdu, isAppearancePdu, isArealObjectStatePdu, isArticulatedPartsPdu, isAttributePdu, isCollisionElasticPdu, isCollisionPdu, isCommentPdu, isCommentRPdu, isCreateEntityPdu, isCreateEntityRPdu, isDataPdu, isDataQueryPdu, isDataQueryRPdu, isDataRPdu, isDesignatorPdu, isDetonationPdu, isDirectedEnergyFirePdu, isDistributedEmissionsRegenerationFamilyPdu, isElectromagneticEmissionPdu, isEntityDamageStatusPdu, isEntityInformationInteractionFamilyPdu, isEntityManagementFamilyPdu, isEntityStatePdu, isEntityStateUpdatePdu, isEnvironmentalProcessPdu, isEventReportPdu, isEventReportRPdu, isFirePdu, isGriddedDataPdu, isIFFPdu, isInformationOperationsActionPdu, isInformationOperationsFamilyPdu, isInformationOperationsReportPdu, isIntercomControlPdu, isIntercomSignalPdu, isIsGroupOfPdu, isIsPartOfPdu, isLEDetonationPdu, isLEFirePdu, isLinearObjectStatePdu, isLiveEntityDetonationPdu, isLiveEntityFirePdu, isLogisticsFamilyPdu, isMinefieldDataPdu, isMinefieldFamilyPdu, isMinefieldQueryPdu, isMinefieldResponseNACKPdu, isMinefieldStatePdu, isPointObjectStatePdu, isRadioCommunicationsFamilyPdu, isReceiverPdu, isRecordQueryRPdu, isRecordRPdu, isReliablePdu, isRemoveEntityPdu, isRemoveEntityRPdu, isRepairCompletePdu, isRepairResponsePdu, isResupplyCancelPdu, isResupplyOfferPdu, isResupplyReceivedPdu, isSEESPdu, isSetDataPdu, isSetDataRPdu, isSetRecordRPdu, isSignalPdu, isSimulationManagementFamilyPdu, isSimulationManagementWithReliabilityFamilyPdu, isStartResumePdu, isStartResumeRPdu, isStopFreezePdu, isStopFreezeRPdu, isSupplementalEmissionEntityStatePdu, isSyntheticEnvironmentFamilyPdu, isTransferOwnershipPdu, isTransmitterPdu, isTSPIPdu, isUnderwaterAcousticPdu, isWarfareFamilyPdu, marshal, occursAfter, occursBefore, occursSameTime, setExerciseID, setExerciseID, setLength, setLength, setPduType, setProtocolFamily, setProtocolVersion, setTimestamp, setTimestampSeconds
-
Field Details
-
NAME
-
firingEntityID
ID of the entity that shot -
targetEntityID
ID of the entity that is being shot at -
munitionExpendibleID
This field shall specify the entity identification of the fired munition or expendable. This field shall be represented by an Entity Identifier record (see 6.2.28). -
eventID
This field shall contain an identification generated by the firing entity to associate related firing and detonation events. This field shall be represented by an Event Identifier record (see 6.2.34). -
fireMissionIndex
protected int fireMissionIndexThis field shall identify the fire mission (see 5.4.3.3). This field shall be represented by a 32-bit unsigned integer. -
locationInWorldCoordinates
This field shall specify the location, in world coordinates, from which the munition was launched, and shall be represented by a World Coordinates record (see 6.2.97). -
descriptor
This field shall describe the firing or launch of a munition or expendable represented by one of the following types of Descriptor records: Munition Descriptor (6.2.20.2) or Expendable Descriptor (6.2.20.4). -
velocity
This field shall specify the velocity of the fired munition at the point when the issuing simulation application intends the externally visible effects of the launch (e.g. exhaust plume or muzzle blast) to first become apparent. The velocity shall be represented in world coordinates. This field shall be represented by a Linear Velocity Vector record [see 6.2.95 item c)]. -
range
protected float rangeThis field shall specify the range that an entity's fire control system has assumed in computing the fire control solution. This field shall be represented by a 32-bit floating point number in meters. For systems where range is unknown or unavailable, this field shall contain a value of zero. -
byteArrayOutputStream
byteArrayOutputStream (baos) is used for marshal/unmarshal serialization- See Also:
-
dataOutputStream
dataOutputStream (dos) is used for marshal/unmarshal serialization- See Also:
-
-
Constructor Details
-
FirePdu
public FirePdu()Constructor creates and configures a new instance object
-
-
Method Details
-
copy
copy method creates a deep copy of current object using preferred marshalling method- Returns:
- deep copy of PDU
-
copyByteBuffer
Creates a "deep copy" of current object using ByteBuffer methods.- Returns:
- deep copy of PDU
-
copyDataOutputStream
copy method creates a deep copy of current object using DataOutputStream methods.- Returns:
- deep copy of PDU
-
getMarshalledSize
public int getMarshalledSize()Returns size of this serialized (marshalled) object in bytes- Specified by:
getMarshalledSizein interfaceMarshaller- Overrides:
getMarshalledSizein classWarfareFamilyPdu- Returns:
- serialized size in bytes
- See Also:
-
setFiringEntityID
Setter forfiringEntityID- Parameters:
pFiringEntityID- new value of interest- Returns:
- same object to permit progressive setters
-
getFiringEntityID
-
setTargetEntityID
Setter fortargetEntityID- Parameters:
pTargetEntityID- new value of interest- Returns:
- same object to permit progressive setters
-
getTargetEntityID
-
setMunitionExpendibleID
Setter formunitionExpendibleID- Parameters:
pMunitionExpendibleID- new value of interest- Returns:
- same object to permit progressive setters
-
getMunitionExpendibleID
Getter formunitionExpendibleID- Returns:
- value of interest
-
setEventID
Setter foreventID- Parameters:
pEventID- new value of interest- Returns:
- same object to permit progressive setters
-
getEventID
-
setFireMissionIndex
Setter forfireMissionIndex- Parameters:
pFireMissionIndex- new value of interest- Returns:
- same object to permit progressive setters
-
getFireMissionIndex
-
setLocationInWorldCoordinates
Setter forlocationInWorldCoordinates- Parameters:
pLocationInWorldCoordinates- new value of interest- Returns:
- same object to permit progressive setters
-
getLocationInWorldCoordinates
Getter forlocationInWorldCoordinates- Returns:
- value of interest
-
setDescriptor
Setter fordescriptor- Parameters:
pDescriptor- new value of interest- Returns:
- same object to permit progressive setters
-
getDescriptor
-
setVelocity
Setter forvelocity- Parameters:
pVelocity- new value of interest- Returns:
- same object to permit progressive setters
-
getVelocity
-
setRange
-
getRange
-
marshal
Serializes an object to a DataOutputStream.- Specified by:
marshalin interfaceMarshaller- Overrides:
marshalin classWarfareFamilyPdu- Parameters:
dos- the OutputStream- Throws:
Exception- if something goes wrong- See Also:
-
unmarshal
Deserializes an object from a DataInputStream.- Specified by:
unmarshalin interfaceMarshaller- Overrides:
unmarshalin classWarfareFamilyPdu- Parameters:
dis- the InputStream- Returns:
- marshalled serialized size in bytes
- Throws:
Exception- if something goes wrong- See Also:
-
marshal
Packs an object into the ByteBuffer.- Specified by:
marshalin interfaceMarshaller- Overrides:
marshalin classWarfareFamilyPdu- Parameters:
byteBuffer- The ByteBuffer at the position to begin writing- Throws:
BufferOverflowException- if byteBuffer is too smallReadOnlyBufferException- if byteBuffer is read onlyException- ByteBuffer-generated exception- See Also:
-
unmarshal
Unpacks a Pdu from the underlying data.- Specified by:
unmarshalin interfaceMarshaller- Overrides:
unmarshalin classWarfareFamilyPdu- Parameters:
byteBuffer- The ByteBuffer at the position to begin reading- Returns:
- marshalled serialized size in bytes
- Throws:
BufferUnderflowException- if byteBuffer is too smallException- ByteBuffer-generated exception- See Also:
-
equals
- Overrides:
equalsin classWarfareFamilyPdu
-
equalsImpl
Description copied from class:PduCompare all fields that contribute to the state, ignoring transient and static fields, forthisand the supplied object- Overrides:
equalsImplin classWarfareFamilyPdu- Parameters:
obj- the object to compare to- Returns:
- true if the objects are equal, false otherwise.
-
toString
- Overrides:
toStringin classWarfareFamilyPdu
-
hashCode
-