Class Pdu

java.lang.Object
edu.nps.moves.dis7.Pdu
All Implemented Interfaces:
edu.nps.moves.dis7.Marshaller, java.io.Serializable
Direct Known Subclasses:
LiveEntityPdu, PduBase

public abstract class Pdu
extends java.lang.Object
implements java.io.Serializable, edu.nps.moves.dis7.Marshaller
Base class of PduBase and LiveEntityPdu IEEE Std 1278.1-2012, IEEE Standard for Distributed Interactive Simulation—Application Protocols
See Also:
Serialized Form
  • Field Details

  • Constructor Details

    • Pdu

      public Pdu()
      Constructor
  • Method Details

    • getMarshalledSize

      public int getMarshalledSize()
      Returns the size of this serialized object in bytes
      Specified by:
      getMarshalledSize in interface edu.nps.moves.dis7.Marshaller
    • setProtocolVersion

      public Pdu setProtocolVersion​(DISProtocolVersion pProtocolVersion)
      Setter for protocolVersion
    • getProtocolVersion

      public DISProtocolVersion getProtocolVersion()
      Getter for protocolVersion
    • setExerciseID

      public Pdu setExerciseID​(byte pExerciseID)
      Setter for exerciseID
    • getExerciseID

      public byte getExerciseID()
      Getter for exerciseID
    • setPduType

      public Pdu setPduType​(DISPDUType pPduType)
      Setter for pduType
    • getPduType

      public DISPDUType getPduType()
      Getter for pduType
    • setProtocolFamily

      public Pdu setProtocolFamily​(DISProtocolFamily pProtocolFamily)
      Setter for protocolFamily
    • getProtocolFamily

      public DISProtocolFamily getProtocolFamily()
      Getter for protocolFamily
    • setTimestamp

      public Pdu setTimestamp​(int pTimestamp)
      Setter for timestamp
    • getTimestamp

      public int getTimestamp()
      Getter for timestamp
    • setLength

      public Pdu setLength​(short pLength)
      Setter for length
    • getLength

      public short getLength()
      Getter for length
    • marshal

      public void marshal​(java.io.DataOutputStream dos) throws java.lang.Exception
      Serializes an object to a DataOutputStream.
      Specified by:
      marshal in interface edu.nps.moves.dis7.Marshaller
      Parameters:
      dos - the OutputStream
      Throws:
      java.lang.Exception - if something goes wrong
      See Also:
      DataOutputStream
    • unmarshal

      public int unmarshal​(java.io.DataInputStream dis) throws java.lang.Exception
      Unserializes an object from a DataInputStream.
      Specified by:
      unmarshal in interface edu.nps.moves.dis7.Marshaller
      Parameters:
      dis - the InputStream
      Returns:
      unmarshalled size
      Throws:
      java.lang.Exception - if something goes wrong
      See Also:
      DataInputStream
    • marshal

      public void marshal​(java.nio.ByteBuffer buff) throws java.lang.Exception
      Packs an object into the ByteBuffer.
      Specified by:
      marshal in interface edu.nps.moves.dis7.Marshaller
      Parameters:
      buff - The ByteBuffer at the position to begin writing
      Throws:
      java.nio.BufferOverflowException - if buff is too small
      java.nio.ReadOnlyBufferException - if buff is read only
      java.lang.Exception - ByteBuffer-generated exception
      See Also:
      ByteBuffer
    • unmarshal

      public int unmarshal​(java.nio.ByteBuffer buff) throws java.lang.Exception
      Unpacks a Pdu from the underlying data.
      Specified by:
      unmarshal in interface edu.nps.moves.dis7.Marshaller
      Parameters:
      buff - The ByteBuffer at the position to begin reading
      Returns:
      marshalled size
      Throws:
      java.nio.BufferUnderflowException - if buff is too small
      java.lang.Exception - ByteBuffer-generated exception
      See Also:
      ByteBuffer
    • marshal

      public byte[] marshal() throws java.lang.Exception
      A convenience method for marshalling to a byte array. This is not as efficient as reusing a ByteBuffer, but it is easy.
      Returns:
      a byte array with the marshalled Pdu
      Throws:
      java.lang.Exception - ByteBuffer-generated exception
    • equals

      public boolean equals​(java.lang.Object obj)
      Overrides:
      equals in class java.lang.Object
    • equalsImpl

      public 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
      Parameters:
      obj - the object to compare to
      Returns:
      true if the objects are equal, false otherwise.
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object