Package edu.nps.moves.dis7.pdus
Class MinefieldStatePdu
java.lang.Object
edu.nps.moves.dis7.pdus.Pdu
edu.nps.moves.dis7.pdus.PduBase
edu.nps.moves.dis7.pdus.MinefieldFamilyPdu
edu.nps.moves.dis7.pdus.MinefieldStatePdu
- All Implemented Interfaces:
Marshaller,Serializable
5.10.2 Communicate information about the minefield, including the location, perimeter, and types of mines contained within it.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected MinefieldStateAppearanceBitMapappearance bitflags information needed for displaying the symbology of the minefield as a doctrinal minefield graphic uid 190protected ByteArrayOutputStreambyteArrayOutputStream (baos) is used for marshal/unmarshal serializationprotected DataOutputStreamdataOutputStream (dos) is used for marshal/unmarshal serializationprotected ForceIDforce ID provides a unique identifier uid 6protected MinefieldIdentifierMinefield ID provides a unique identifierprotected Vector3Doublelocation of center of minefield in world coordinatesprotected EulerAnglesorientation of minefieldprotected shortMinefield sequence number shall specify a change in state of a minefield as a result of a change in minefield information or a change in the state, in accordance with the rules specified in 5.10.2.3, of any of the mines contained thereinprotected EntityTypetype of minefieldprotected List<EntityType> type of each mine contained within the minefieldstatic final StringThe name of this PDU typeprotected shortthe number of different mine types employed in the minefieldprotected byteNumber of permieter pointsprotected List<Vector2Float> location of each perimeter point, relative to the Minefield Location field.protected ProtocolModeprotocolMode.Fields inherited from class edu.nps.moves.dis7.pdus.MinefieldFamilyPdu
FAMILY_NAMEFields inherited from class edu.nps.moves.dis7.pdus.Pdu
exerciseID, length, pduType, protocolFamily, protocolVersion, timestamp -
Constructor Summary
ConstructorsConstructorDescriptionConstructor creates and configures a new instance object -
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 forappearanceGetter forforceIDintReturns size of this serialized (marshalled) object in bytesGetter forminefieldIDGetter forminefieldLocationGetter forminefieldOrientationshortGetter forminefieldSequenceGetter forminefieldTypeGetter formineTypeGetter forperimeterPointsGetter forprotocolModeinthashCode()voidmarshal(DataOutputStream dos) Serializes an object to a DataOutputStream.voidmarshal(ByteBuffer byteBuffer) Packs an object into the ByteBuffer.setAppearance(MinefieldStateAppearanceBitMap pAppearance) Setter forappearancesetForceID(ForceID pForceID) Setter forforceIDsetMinefieldID(MinefieldIdentifier pMinefieldID) Setter forminefieldIDsetMinefieldLocation(Vector3Double pMinefieldLocation) Setter forminefieldLocationsetMinefieldOrientation(EulerAngles pMinefieldOrientation) Setter forminefieldOrientationsetMinefieldSequence(int pMinefieldSequence) Utility setter forminefieldSequencesetMinefieldSequence(short pMinefieldSequence) Setter forminefieldSequencesetMinefieldType(EntityType pMinefieldType) Setter forminefieldTypesetMineType(List<EntityType> pMineType) Setter formineTypesetPerimeterPoints(List<Vector2Float> pPerimeterPoints) Setter forperimeterPointssetProtocolMode(ProtocolMode pProtocolMode) Setter forprotocolModetoString()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
-
minefieldID
Minefield ID provides a unique identifier -
minefieldSequence
protected short minefieldSequenceMinefield sequence number shall specify a change in state of a minefield as a result of a change in minefield information or a change in the state, in accordance with the rules specified in 5.10.2.3, of any of the mines contained therein -
forceID
force ID provides a unique identifier uid 6 -
numberOfPerimeterPoints
protected byte numberOfPerimeterPointsNumber of permieter points -
minefieldType
type of minefield -
numberOfMineTypes
protected short numberOfMineTypesthe number of different mine types employed in the minefield -
minefieldLocation
location of center of minefield in world coordinates -
minefieldOrientation
orientation of minefield -
appearance
appearance bitflags information needed for displaying the symbology of the minefield as a doctrinal minefield graphic uid 190 -
protocolMode
protocolMode. First two bits are the protocol mode, 14 bits reserved. -
perimeterPoints
location of each perimeter point, relative to the Minefield Location field. Only the x and y coordinates of each perimeter point shall be specified. -
mineType
type of each mine contained within the minefield -
byteArrayOutputStream
byteArrayOutputStream (baos) is used for marshal/unmarshal serialization- See Also:
-
dataOutputStream
dataOutputStream (dos) is used for marshal/unmarshal serialization- See Also:
-
-
Constructor Details
-
MinefieldStatePdu
public MinefieldStatePdu()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 classMinefieldFamilyPdu- Returns:
- serialized size in bytes
- See Also:
-
setMinefieldID
Setter forminefieldID- Parameters:
pMinefieldID- new value of interest- Returns:
- same object to permit progressive setters
-
getMinefieldID
-
setMinefieldSequence
Setter forminefieldSequence- Parameters:
pMinefieldSequence- new value of interest- Returns:
- same object to permit progressive setters
-
setMinefieldSequence
Utility setter forminefieldSequence- Parameters:
pMinefieldSequence- new value of interest- Returns:
- same object to permit progressive setters
-
getMinefieldSequence
-
setForceID
Setter forforceID- Parameters:
pForceID- new value of interest- Returns:
- same object to permit progressive setters
-
getForceID
-
setMinefieldType
Setter forminefieldType- Parameters:
pMinefieldType- new value of interest- Returns:
- same object to permit progressive setters
-
getMinefieldType
-
setMinefieldLocation
Setter forminefieldLocation- Parameters:
pMinefieldLocation- new value of interest- Returns:
- same object to permit progressive setters
-
getMinefieldLocation
-
setMinefieldOrientation
Setter forminefieldOrientation- Parameters:
pMinefieldOrientation- new value of interest- Returns:
- same object to permit progressive setters
-
getMinefieldOrientation
Getter forminefieldOrientation- Returns:
- value of interest
-
setAppearance
Setter forappearance- Parameters:
pAppearance- new value of interest- Returns:
- same object to permit progressive setters
-
getAppearance
Getter forappearance- Returns:
- value of interest
-
setProtocolMode
Setter forprotocolMode- Parameters:
pProtocolMode- new value of interest- Returns:
- same object to permit progressive setters
-
getProtocolMode
-
setPerimeterPoints
Setter forperimeterPoints- Parameters:
pPerimeterPoints- new value of interest- Returns:
- same object to permit progressive setters
-
getPerimeterPoints
Getter forperimeterPoints- Returns:
- value of interest
-
setMineType
Setter formineType- Parameters:
pMineType- new value of interest- Returns:
- same object to permit progressive setters
-
getMineType
-
marshal
Serializes an object to a DataOutputStream.- Specified by:
marshalin interfaceMarshaller- Overrides:
marshalin classMinefieldFamilyPdu- 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 classMinefieldFamilyPdu- 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 classMinefieldFamilyPdu- 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 classMinefieldFamilyPdu- 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 classMinefieldFamilyPdu
-
equalsImpl
Description copied from class:PduCompare all fields that contribute to the state, ignoring transient and static fields, forthisand the supplied object- Overrides:
equalsImplin classMinefieldFamilyPdu- Parameters:
obj- the object to compare to- Returns:
- true if the objects are equal, false otherwise.
-
toString
- Overrides:
toStringin classMinefieldFamilyPdu
-
hashCode
-