edu.nps.moves.dismobile
Class AcousticEmitterSystemData

java.lang.Object
  extended by edu.nps.moves.dismobile.AcousticEmitterSystemData
All Implemented Interfaces:
java.io.Serializable

public class AcousticEmitterSystemData
extends java.lang.Object
implements java.io.Serializable

Used in the UA pdu; ties together an emmitter and a location. This requires manual cleanup; the beam data should not be attached to each emitter system. 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  AcousticEmitterSystem acousticEmitterSystem
          This field shall specify the system for a particular UA emitter.
protected  java.util.List<AcousticBeamData> beamRecords
          For each beam in numberOfBeams, an emitter system.
protected  Vector3Float emitterLocation
          Represents the location wrt the entity
protected  short emitterSystemDataLength
          Length of emitter system data
protected  short numberOfBeams
          Number of beams
protected  int pad2
          padding
 
Constructor Summary
AcousticEmitterSystemData()
          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
 AcousticEmitterSystem getAcousticEmitterSystem()
           
 java.util.List<AcousticBeamData> getBeamRecords()
           
 Vector3Float getEmitterLocation()
           
 short getEmitterSystemDataLength()
           
 int getMarshalledSize()
           
 short getNumberOfBeams()
           
 int getPad2()
           
 void marshal(java.nio.ByteBuffer buff)
          Packs a Pdu into the ByteBuffer.
 void marshal(java.io.DataOutputStream dos)
           
 void setAcousticEmitterSystem(AcousticEmitterSystem pAcousticEmitterSystem)
           
 void setBeamRecords(java.util.List<AcousticBeamData> pBeamRecords)
           
 void setEmitterLocation(Vector3Float pEmitterLocation)
           
 void setEmitterSystemDataLength(short pEmitterSystemDataLength)
           
 void setNumberOfBeams(short pNumberOfBeams)
          Note that setting this value will not change the marshalled value.
 void setPad2(int pPad2)
           
 void unmarshal(java.nio.ByteBuffer buff)
          Unpacks a Pdu from the underlying data.
 void unmarshal(java.io.DataInputStream dis)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

emitterSystemDataLength

protected short emitterSystemDataLength
Length of emitter system data


numberOfBeams

protected short numberOfBeams
Number of beams


pad2

protected int pad2
padding


acousticEmitterSystem

protected AcousticEmitterSystem acousticEmitterSystem
This field shall specify the system for a particular UA emitter.


emitterLocation

protected Vector3Float emitterLocation
Represents the location wrt the entity


beamRecords

protected java.util.List<AcousticBeamData> beamRecords
For each beam in numberOfBeams, an emitter system. This is not right--the beam records need to be at the end of the PDU, rather than attached to each system.

Constructor Detail

AcousticEmitterSystemData

public AcousticEmitterSystemData()
Constructor

Method Detail

getMarshalledSize

public int getMarshalledSize()

setEmitterSystemDataLength

public void setEmitterSystemDataLength(short pEmitterSystemDataLength)

getEmitterSystemDataLength

public short getEmitterSystemDataLength()

getNumberOfBeams

public short getNumberOfBeams()

setNumberOfBeams

public void setNumberOfBeams(short pNumberOfBeams)
Note that setting this value will not change the marshalled value. The list whose length this describes is used for that purpose. The getnumberOfBeams method will also be based on the actual list length rather than this value. The method is simply here for java bean completeness.


setPad2

public void setPad2(int pPad2)

getPad2

public int getPad2()

setAcousticEmitterSystem

public void setAcousticEmitterSystem(AcousticEmitterSystem pAcousticEmitterSystem)

getAcousticEmitterSystem

public AcousticEmitterSystem getAcousticEmitterSystem()

setEmitterLocation

public void setEmitterLocation(Vector3Float pEmitterLocation)

getEmitterLocation

public Vector3Float getEmitterLocation()

setBeamRecords

public void setBeamRecords(java.util.List<AcousticBeamData> pBeamRecords)

getBeamRecords

public java.util.List<AcousticBeamData> getBeamRecords()

marshal

public void marshal(java.io.DataOutputStream dos)

unmarshal

public void unmarshal(java.io.DataInputStream dis)

marshal

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

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.

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 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.