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 MinefieldStateAppearanceBitMap
appearance bitflags information needed for displaying the symbology of the minefield as a doctrinal minefield graphic uid 190protected ByteArrayOutputStream
byteArrayOutputStream (baos) is used for marshal/unmarshal serializationprotected DataOutputStream
dataOutputStream (dos) is used for marshal/unmarshal serializationprotected ForceID
force ID provides a unique identifier uid 6protected MinefieldIdentifier
Minefield ID provides a unique identifierprotected Vector3Double
location of center of minefield in world coordinatesprotected EulerAngles
orientation of minefieldprotected short
Minefield 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 EntityType
type of minefieldprotected List
<EntityType> type of each mine contained within the minefieldstatic final String
The name of this PDU typeprotected short
the number of different mine types employed in the minefieldprotected byte
Number of permieter pointsprotected List
<Vector2Float> location of each perimeter point, relative to the Minefield Location field.protected ProtocolMode
protocolMode.Fields inherited from class edu.nps.moves.dis7.pdus.MinefieldFamilyPdu
FAMILY_NAME
Fields 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.boolean
boolean
equalsImpl
(Object obj) Compare all fields that contribute to the state, ignoring transient and static fields, forthis
and the supplied objectGetter forappearance
Getter forforceID
int
Returns size of this serialized (marshalled) object in bytesGetter forminefieldID
Getter forminefieldLocation
Getter forminefieldOrientation
short
Getter forminefieldSequence
Getter forminefieldType
Getter formineType
Getter forperimeterPoints
Getter forprotocolMode
int
hashCode()
void
marshal
(DataOutputStream dos) Serializes an object to a DataOutputStream.void
marshal
(ByteBuffer byteBuffer) Packs an object into the ByteBuffer.setAppearance
(MinefieldStateAppearanceBitMap pAppearance) Setter forappearance
setForceID
(ForceID pForceID) Setter forforceID
setMinefieldID
(MinefieldIdentifier pMinefieldID) Setter forminefieldID
setMinefieldLocation
(Vector3Double pMinefieldLocation) Setter forminefieldLocation
setMinefieldOrientation
(EulerAngles pMinefieldOrientation) Setter forminefieldOrientation
setMinefieldSequence
(int pMinefieldSequence) Utility setter forminefieldSequence
setMinefieldSequence
(short pMinefieldSequence) Setter forminefieldSequence
setMinefieldType
(EntityType pMinefieldType) Setter forminefieldType
setMineType
(List<EntityType> pMineType) Setter formineType
setPerimeterPoints
(List<Vector2Float> pPerimeterPoints) Setter forperimeterPoints
setProtocolMode
(ProtocolMode pProtocolMode) Setter forprotocolMode
toString()
int
unmarshal
(DataInputStream dis) Deserializes an object from a DataInputStream.int
unmarshal
(ByteBuffer byteBuffer) Unpacks a Pdu from the underlying data.Methods inherited from class edu.nps.moves.dis7.pdus.PduBase
getPadding, getPduStatus, setPadding, setPadding, setPduStatus
Methods 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:
getMarshalledSize
in interfaceMarshaller
- Overrides:
getMarshalledSize
in 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:
marshal
in interfaceMarshaller
- Overrides:
marshal
in classMinefieldFamilyPdu
- Parameters:
dos
- the OutputStream- Throws:
Exception
- if something goes wrong- See Also:
-
unmarshal
Deserializes an object from a DataInputStream.- Specified by:
unmarshal
in interfaceMarshaller
- Overrides:
unmarshal
in 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:
marshal
in interfaceMarshaller
- Overrides:
marshal
in 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:
unmarshal
in interfaceMarshaller
- Overrides:
unmarshal
in 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:
equals
in classMinefieldFamilyPdu
-
equalsImpl
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 classMinefieldFamilyPdu
- Parameters:
obj
- the object to compare to- Returns:
- true if the objects are equal, false otherwise.
-
toString
- Overrides:
toString
in classMinefieldFamilyPdu
-
hashCode
-