public class Pdu
extends java.lang.Object
implements java.io.Serializable
Modifier and Type | Field and Description |
---|---|
protected short |
exerciseID
Exercise ID
|
protected short |
padding
zero-filled array of padding
|
protected int |
pduLength
Length, in bytes, of the PDU.
|
protected short |
pduType
Type of pdu, unique for each PDU class
|
protected short |
protocolFamily
value that refers to the protocol family, eg SimulationManagement, et
|
protected short |
protocolVersion
The version of the protocol.
|
protected long |
timestamp
Timestamp value
|
Constructor and Description |
---|
Pdu()
Constructor
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj) |
boolean |
equalsImpl(java.lang.Object obj)
Compare all fields that contribute to the state, ignoring
transient and static fields, for
this and the supplied object |
short |
getExerciseID() |
int |
getLength() |
int |
getMarshalledSize() |
short |
getPadding() |
int |
getPduLength() |
short |
getPduType() |
edu.nps.moves.disenum.PduType |
getPduTypeEnum()
Returns the PduType, an enumeration from the disenum jar file.
|
short |
getProtocolFamily() |
short |
getProtocolVersion() |
long |
getTimestamp() |
byte[] |
marshal()
A convenience method for marshalling to a byte array.
|
void |
marshal(java.nio.ByteBuffer buff)
Packs a Pdu into the ByteBuffer.
|
void |
marshal(java.io.DataOutputStream dos) |
byte[] |
marshalWithDisAbsoluteTimestamp()
A convieneince method to marshal to a byte array with the timestamp set to
the DIS standard for absolute timestamps (which works only if the host is
slaved to NTP).
|
void |
marshalWithDisAbsoluteTimestamp(java.nio.ByteBuffer buff) |
byte[] |
marshalWithDisRelativeTimestamp()
A convieneince method to marshal to a byte array with the timestamp set to
the DIS standard for relative timestamps.
|
void |
marshalWithDisRelativeTimestamp(java.nio.ByteBuffer buff) |
byte[] |
marshalWithNpsTimestamp()
A convienience method to marshal a PDU using the NPS-specific format for
timestamps, which is hundredths of a second since the start of the year.
|
void |
marshalWithNpsTimestamp(java.nio.ByteBuffer buff) |
byte[] |
marshalWithUnixTimestamp()
Another option for marshalling with the timestamp field set automatically.
|
void |
marshalWithUnixTimestamp(java.nio.ByteBuffer buff) |
long |
readUnsignedInt(java.nio.ByteBuffer buff) |
long |
readUnsignedInt(java.io.DataInputStream dis) |
void |
setExerciseID(short pExerciseID) |
void |
setPadding(short pPadding) |
void |
setPduLength(int pPduLength) |
void |
setPduType(short pPduType) |
void |
setProtocolFamily(short pProtocolFamily) |
void |
setProtocolVersion(short pProtocolVersion) |
void |
setTimestamp(long pTimestamp) |
void |
unmarshal(java.nio.ByteBuffer buff)
Unpacks a Pdu from the underlying data.
|
void |
unmarshal(java.io.DataInputStream dis) |
protected short protocolVersion
protected short exerciseID
protected short pduType
protected short protocolFamily
protected long timestamp
protected int pduLength
protected short padding
public int getLength()
public int getMarshalledSize()
public void setProtocolVersion(short pProtocolVersion)
public short getProtocolVersion()
public void setExerciseID(short pExerciseID)
public short getExerciseID()
public void setPduType(short pPduType)
public short getPduType()
public edu.nps.moves.disenum.PduType getPduTypeEnum()
public void setProtocolFamily(short pProtocolFamily)
public short getProtocolFamily()
public void setTimestamp(long pTimestamp)
public long getTimestamp()
public void setPduLength(int pPduLength)
public int getPduLength()
public void setPadding(short pPadding)
public short getPadding()
public long readUnsignedInt(java.io.DataInputStream dis)
public long readUnsignedInt(java.nio.ByteBuffer buff)
public void marshal(java.io.DataOutputStream dos)
public void unmarshal(java.io.DataInputStream dis)
public void marshal(java.nio.ByteBuffer buff)
buff
- The ByteBuffer at the position to begin writingjava.nio.BufferOverflowException
- if buff is too smalljava.nio.ReadOnlyBufferException
- if buff is read onlyByteBuffer
public void unmarshal(java.nio.ByteBuffer buff)
buff
- The ByteBuffer at the position to begin readingjava.nio.BufferUnderflowException
- if buff is too smallByteBuffer
public byte[] marshal()
Pdu
public byte[] marshalWithDisAbsoluteTimestamp()
public void marshalWithDisAbsoluteTimestamp(java.nio.ByteBuffer buff)
public byte[] marshalWithDisRelativeTimestamp()
public void marshalWithDisRelativeTimestamp(java.nio.ByteBuffer buff)
public byte[] marshalWithNpsTimestamp()
public void marshalWithNpsTimestamp(java.nio.ByteBuffer buff)
public byte[] marshalWithUnixTimestamp()
public void marshalWithUnixTimestamp(java.nio.ByteBuffer buff)
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public boolean equalsImpl(java.lang.Object obj)
this
and the supplied objectobj
- the object to compare to