edu.nps.moves.dismobile
Class TransmitterPdu

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

public class TransmitterPdu
extends RadioCommunicationsFamilyPdu
implements java.io.Serializable

Section 5.3.8.1. Detailed information about a radio transmitter. This PDU requires manually written code to complete, since the modulation parameters are of variable length. UNFINISHED 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  Vector3Double antennaLocation
          Location of antenna
protected  int antennaPatternCount
          atenna pattern length
protected  java.util.List<Vector3Float> antennaPatternList
          variable length list of antenna pattern records
protected  int antennaPatternType
          antenna pattern type
protected  int cryptoKeyId
          crypto system key identifer
protected  int cryptoSystem
          crypto system enumeration
protected  long frequency
          frequency
protected  short inputSource
          input source
protected  short modulationParameterCount
          how many modulation parameters we have
protected  java.util.List<Vector3Float> modulationParametersList
          variable length list of modulation parameters
protected  ModulationType modulationType
          modulation
protected  int padding1
          padding
protected  int padding2
          padding2
protected  short padding3
          padding3
protected  float power
          transmission power
protected  RadioEntityType radioEntityType
          linear accelleration of entity
protected  Vector3Float relativeAntennaLocation
          relative location of antenna
protected  float transmitFrequencyBandwidth
          transmit frequency Bandwidth
protected  short transmitState
          transmit state
 
Fields inherited from class edu.nps.moves.dismobile.RadioCommunicationsFamilyPdu
entityId, radioId
 
Fields inherited from class edu.nps.moves.dismobile.Pdu
exerciseID, padding, pduLength, pduType, protocolFamily, protocolVersion, timestamp
 
Constructor Summary
TransmitterPdu()
          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
 Vector3Double getAntennaLocation()
           
 int getAntennaPatternCount()
           
 java.util.List<Vector3Float> getAntennaPatternList()
           
 int getAntennaPatternType()
           
 int getCryptoKeyId()
           
 int getCryptoSystem()
           
 long getFrequency()
           
 short getInputSource()
           
 int getMarshalledSize()
           
 short getModulationParameterCount()
           
 java.util.List<Vector3Float> getModulationParametersList()
           
 ModulationType getModulationType()
           
 int getPadding1()
           
 int getPadding2()
           
 short getPadding3()
           
 float getPower()
           
 RadioEntityType getRadioEntityType()
           
 Vector3Float getRelativeAntennaLocation()
           
 float getTransmitFrequencyBandwidth()
           
 short getTransmitState()
           
 void marshal(java.nio.ByteBuffer buff)
          Packs a Pdu into the ByteBuffer.
 void marshal(java.io.DataOutputStream dos)
           
 void setAntennaLocation(Vector3Double pAntennaLocation)
           
 void setAntennaPatternCount(int pAntennaPatternCount)
          Note that setting this value will not change the marshalled value.
 void setAntennaPatternList(java.util.List<Vector3Float> pAntennaPatternList)
           
 void setAntennaPatternType(int pAntennaPatternType)
           
 void setCryptoKeyId(int pCryptoKeyId)
           
 void setCryptoSystem(int pCryptoSystem)
           
 void setFrequency(long pFrequency)
           
 void setInputSource(short pInputSource)
           
 void setModulationParameterCount(short pModulationParameterCount)
          Note that setting this value will not change the marshalled value.
 void setModulationParametersList(java.util.List<Vector3Float> pModulationParametersList)
           
 void setModulationType(ModulationType pModulationType)
           
 void setPadding1(int pPadding1)
           
 void setPadding2(int pPadding2)
           
 void setPadding3(short pPadding3)
           
 void setPower(float pPower)
           
 void setRadioEntityType(RadioEntityType pRadioEntityType)
           
 void setRelativeAntennaLocation(Vector3Float pRelativeAntennaLocation)
           
 void setTransmitFrequencyBandwidth(float pTransmitFrequencyBandwidth)
           
 void setTransmitState(short pTransmitState)
           
 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.dismobile.RadioCommunicationsFamilyPdu
getEntityId, getRadioId, setEntityId, setRadioId
 
Methods inherited from class edu.nps.moves.dismobile.Pdu
getExerciseID, getLength, getPadding, getPduLength, getPduType, getProtocolFamily, getProtocolVersion, getTimestamp, marshal, marshalWithDisAbsoluteTimestamp, marshalWithDisAbsoluteTimestamp, marshalWithDisRelativeTimestamp, marshalWithDisRelativeTimestamp, marshalWithNpsTimestamp, marshalWithNpsTimestamp, marshalWithUnixTimestamp, marshalWithUnixTimestamp, readUnsignedInt, readUnsignedInt, setExerciseID, setPadding, setPduLength, setPduType, setProtocolFamily, setProtocolVersion, setTimestamp
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

radioEntityType

protected RadioEntityType radioEntityType
linear accelleration of entity


transmitState

protected short transmitState
transmit state


inputSource

protected short inputSource
input source


padding1

protected int padding1
padding


antennaLocation

protected Vector3Double antennaLocation
Location of antenna


relativeAntennaLocation

protected Vector3Float relativeAntennaLocation
relative location of antenna


antennaPatternType

protected int antennaPatternType
antenna pattern type


antennaPatternCount

protected int antennaPatternCount
atenna pattern length


frequency

protected long frequency
frequency


transmitFrequencyBandwidth

protected float transmitFrequencyBandwidth
transmit frequency Bandwidth


power

protected float power
transmission power


modulationType

protected ModulationType modulationType
modulation


cryptoSystem

protected int cryptoSystem
crypto system enumeration


cryptoKeyId

protected int cryptoKeyId
crypto system key identifer


modulationParameterCount

protected short modulationParameterCount
how many modulation parameters we have


padding2

protected int padding2
padding2


padding3

protected short padding3
padding3


modulationParametersList

protected java.util.List<Vector3Float> modulationParametersList
variable length list of modulation parameters


antennaPatternList

protected java.util.List<Vector3Float> antennaPatternList
variable length list of antenna pattern records

Constructor Detail

TransmitterPdu

public TransmitterPdu()
Constructor

Method Detail

getMarshalledSize

public int getMarshalledSize()
Overrides:
getMarshalledSize in class RadioCommunicationsFamilyPdu

setRadioEntityType

public void setRadioEntityType(RadioEntityType pRadioEntityType)

getRadioEntityType

public RadioEntityType getRadioEntityType()

setTransmitState

public void setTransmitState(short pTransmitState)

getTransmitState

public short getTransmitState()

setInputSource

public void setInputSource(short pInputSource)

getInputSource

public short getInputSource()

setPadding1

public void setPadding1(int pPadding1)

getPadding1

public int getPadding1()

setAntennaLocation

public void setAntennaLocation(Vector3Double pAntennaLocation)

getAntennaLocation

public Vector3Double getAntennaLocation()

setRelativeAntennaLocation

public void setRelativeAntennaLocation(Vector3Float pRelativeAntennaLocation)

getRelativeAntennaLocation

public Vector3Float getRelativeAntennaLocation()

setAntennaPatternType

public void setAntennaPatternType(int pAntennaPatternType)

getAntennaPatternType

public int getAntennaPatternType()

getAntennaPatternCount

public int getAntennaPatternCount()

setAntennaPatternCount

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


setFrequency

public void setFrequency(long pFrequency)

getFrequency

public long getFrequency()

setTransmitFrequencyBandwidth

public void setTransmitFrequencyBandwidth(float pTransmitFrequencyBandwidth)

getTransmitFrequencyBandwidth

public float getTransmitFrequencyBandwidth()

setPower

public void setPower(float pPower)

getPower

public float getPower()

setModulationType

public void setModulationType(ModulationType pModulationType)

getModulationType

public ModulationType getModulationType()

setCryptoSystem

public void setCryptoSystem(int pCryptoSystem)

getCryptoSystem

public int getCryptoSystem()

setCryptoKeyId

public void setCryptoKeyId(int pCryptoKeyId)

getCryptoKeyId

public int getCryptoKeyId()

getModulationParameterCount

public short getModulationParameterCount()

setModulationParameterCount

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


setPadding2

public void setPadding2(int pPadding2)

getPadding2

public int getPadding2()

setPadding3

public void setPadding3(short pPadding3)

getPadding3

public short getPadding3()

setModulationParametersList

public void setModulationParametersList(java.util.List<Vector3Float> pModulationParametersList)

getModulationParametersList

public java.util.List<Vector3Float> getModulationParametersList()

setAntennaPatternList

public void setAntennaPatternList(java.util.List<Vector3Float> pAntennaPatternList)

getAntennaPatternList

public java.util.List<Vector3Float> getAntennaPatternList()

marshal

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

unmarshal

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

marshal

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

Overrides:
marshal in class RadioCommunicationsFamilyPdu
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 RadioCommunicationsFamilyPdu
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 RadioCommunicationsFamilyPdu

equalsImpl

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

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