edu.nps.moves.dis7mobile
Class CollisionPdu

java.lang.Object
  extended by edu.nps.moves.dis7mobile.PduSuperclass
      extended by edu.nps.moves.dis7mobile.Pdu
          extended by edu.nps.moves.dis7mobile.EntityInformationFamilyPdu
              extended by edu.nps.moves.dis7mobile.CollisionPdu
All Implemented Interfaces:
java.io.Serializable

public class CollisionPdu
extends EntityInformationFamilyPdu
implements java.io.Serializable

Section 7.2.3 Collisions between entities shall be communicated by issuing a Collision PDU. COMPLETE Copyright (c) 2008-2010, MOVES Institute, Naval Postgraduate School. All rights reserved. This work is licensed under the BSD open source license, available at https://www.movesinstitute.org/licenses/bsd.html

Author:
DMcG
See Also:
Serialized Form

Field Summary
protected  EntityID collidingEntityID
          This field shall identify the entity that has collided with the issuing entity (see 5.3.3.4).
protected  short collisionType
          This field shall identify the type of collision.
protected  EventIdentifier eventID
          This field shall contain an identification generated by the issuing simulation application to associate related collision events.
protected  EntityID issuingEntityID
          This field shall identify the entity that is issuing the PDU, and shall be represented by an Entity Identifier record (see 6.2.28).
protected  Vector3Float location
          This field shall specify the location of the collision with respect to the entity with which the issuing entity collided.
protected  float mass
          This field shall contain the mass of the issuing entity, and shall be represented by a 32-bit floating point number representing kilograms.
protected  byte pad
          some padding
protected  Vector3Float velocity
          This field shall contain the velocity (at the time the collision is detected) of the issuing entity.
 
Fields inherited from class edu.nps.moves.dis7mobile.Pdu
padding, pduStatus
 
Fields inherited from class edu.nps.moves.dis7mobile.PduSuperclass
exerciseID, length, pduType, protocolFamily, protocolVersion, timestamp
 
Constructor Summary
CollisionPdu()
          Constructor
 
Method Summary
 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
 EntityID getCollidingEntityID()
           
 short getCollisionType()
           
 EventIdentifier getEventID()
           
 EntityID getIssuingEntityID()
           
 Vector3Float getLocation()
           
 int getMarshalledSize()
           
 float getMass()
           
 byte getPad()
           
 Vector3Float getVelocity()
           
 void marshal(java.nio.ByteBuffer buff)
          Packs a Pdu into the ByteBuffer.
 void marshal(java.io.DataOutputStream dos)
           
 void setCollidingEntityID(EntityID pCollidingEntityID)
           
 void setCollisionType(short pCollisionType)
           
 void setEventID(EventIdentifier pEventID)
           
 void setIssuingEntityID(EntityID pIssuingEntityID)
           
 void setLocation(Vector3Float pLocation)
           
 void setMass(float pMass)
           
 void setPad(byte pPad)
           
 void setVelocity(Vector3Float pVelocity)
           
 void unmarshal(java.nio.ByteBuffer buff)
          Unpacks a Pdu from the underlying data.
 void unmarshal(java.io.DataInputStream dis)
           
 
Methods inherited from class edu.nps.moves.dis7mobile.Pdu
getPadding, getPduStatus, marshal, setPadding, setPduStatus
 
Methods inherited from class edu.nps.moves.dis7mobile.PduSuperclass
getExerciseID, getLength, getPduType, getProtocolFamily, getProtocolVersion, getTimestamp, setExerciseID, setLength, setPduType, setProtocolFamily, setProtocolVersion, setTimestamp
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

issuingEntityID

protected EntityID issuingEntityID
This field shall identify the entity that is issuing the PDU, and shall be represented by an Entity Identifier record (see 6.2.28).


collidingEntityID

protected EntityID collidingEntityID
This field shall identify the entity that has collided with the issuing entity (see 5.3.3.4). This field shall be represented by an Entity Identifier record (see 6.2.28).


eventID

protected EventIdentifier eventID
This field shall contain an identification generated by the issuing simulation application to associate related collision events. This field shall be represented by an Event Identifier record (see 6.2.34).


collisionType

protected short collisionType
This field shall identify the type of collision. The Collision Type field shall be represented by an 8-bit record of enumerations


pad

protected byte pad
some padding


velocity

protected Vector3Float velocity
This field shall contain the velocity (at the time the collision is detected) of the issuing entity. The velocity shall be represented in world coordinates. This field shall be represented by the Linear Velocity Vector record [see 6.2.95 item c)].


mass

protected float mass
This field shall contain the mass of the issuing entity, and shall be represented by a 32-bit floating point number representing kilograms.


location

protected Vector3Float location
This field shall specify the location of the collision with respect to the entity with which the issuing entity collided. The Location field shall be represented by an Entity Coordinate Vector record [see 6.2.95 item a)].

Constructor Detail

CollisionPdu

public CollisionPdu()
Constructor

Method Detail

getMarshalledSize

public int getMarshalledSize()
Overrides:
getMarshalledSize in class EntityInformationFamilyPdu

setIssuingEntityID

public void setIssuingEntityID(EntityID pIssuingEntityID)

getIssuingEntityID

public EntityID getIssuingEntityID()

setCollidingEntityID

public void setCollidingEntityID(EntityID pCollidingEntityID)

getCollidingEntityID

public EntityID getCollidingEntityID()

setEventID

public void setEventID(EventIdentifier pEventID)

getEventID

public EventIdentifier getEventID()

setCollisionType

public void setCollisionType(short pCollisionType)

getCollisionType

public short getCollisionType()

setPad

public void setPad(byte pPad)

getPad

public byte getPad()

setVelocity

public void setVelocity(Vector3Float pVelocity)

getVelocity

public Vector3Float getVelocity()

setMass

public void setMass(float pMass)

getMass

public float getMass()

setLocation

public void setLocation(Vector3Float pLocation)

getLocation

public Vector3Float getLocation()

marshal

public void marshal(java.io.DataOutputStream dos)
Overrides:
marshal in class EntityInformationFamilyPdu

unmarshal

public void unmarshal(java.io.DataInputStream dis)
Overrides:
unmarshal in class EntityInformationFamilyPdu

marshal

public void marshal(java.nio.ByteBuffer buff)
Packs a Pdu into the ByteBuffer.

Overrides:
marshal in class EntityInformationFamilyPdu
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
Since:
??
See Also:
ByteBuffer

unmarshal

public void unmarshal(java.nio.ByteBuffer buff)
Unpacks a Pdu from the underlying data.

Overrides:
unmarshal in class EntityInformationFamilyPdu
Parameters:
buff - The ByteBuffer at the position to begin reading
Throws:
java.nio.BufferUnderflowException - if buff is too small
Since:
??
See Also:
ByteBuffer

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class EntityInformationFamilyPdu

equalsImpl

public boolean equalsImpl(java.lang.Object obj)
Description copied from class: PduSuperclass
Compare all fields that contribute to the state, ignoring transient and static fields, for this and the supplied object

Overrides:
equalsImpl in class EntityInformationFamilyPdu
Parameters:
obj - the object to compare to
Returns:
true if the objects are equal, false otherwise.