Class mil.navy.nps.dis.VariableDatum
java.lang.Object
|
+----mil.navy.nps.dis.PduElement
|
+----mil.navy.nps.dis.VariableDatum
- public class VariableDatum
- extends PduElement
- Version:
- 1.0
- Author:
- Don McGregor (http://www.stl.nps.navy.mil/~mcgredo)
- Location:
-
http://www.stl.nps.navy.mil/dis-java-vrml/mil/navy/nps/dis/VariableDatum.java
- Hierarchy Diagram:
- Summary:
- These fields shall specify the types of variable datum, their length, and their value.
- Explanation
- VariableDatum contains a variable amount of data (surprise.) It
consists of a 32-bit enumeration that describes the datum, a 32-bit
field that descibes the lenght of the data (in bits) and a data
region long enough to contain the data. The data region is allocated
in chunks of 64 bits; for example, if the length field specifies
a data length of 48 bits, a full 64 bits will be allocated to hold
the data, and the remaining 16 bits would be unused padding. Per
the specification, padding must be set to zero.
The VariableDatum is used in a variety of places, most notably
the DataPdu.
This inherits from PduElement, which means that it must know how
to serialize, deSerialize, clone, print its values, and determine
its length when serialized.
- History:
- 21Nov96 /Don McGregor /New
- 10Mar97 /Don McGregor /changes for javadoc
- 16Apr97 /Don McGregor /PrintStream passed to printValues
- 06May97 /Don McGregor /Bug fixes: block count not beeing computed correctly; moved computation
to central place, made all computations of block size point there. Accessor
method variableDatumValue() was always returning null.
Bug reports submitted by Dmitry Azovtsev (azov@logos.cyber.mephi.ru).
- 8Dec97 /Ronan Fauglas /changes for documentation templates + complements in documentation
- 11Dec97 /Ronan Fauglas /changes access methods names from "variable()" to "getVariable()"
- References:
- DIS Data Dictionary:
Variable Datum Record
- DIS specification : IEEE 1278.1, Section 5.3.32
- See Also:
- PduElement, mil.navy.nps.util.SerializationInterface, EntityPosition, DataPdu
Field Summary
|
static int
|
sizeOf
Constant value--size of an empty object WHEN WRITTEN TO THE WIRE; here :sizeOf = 8 bytes .
|
int
|
variableDatumID
The Variable Datum ID shall be represented by a 32-bit enumeration.
|
int
|
variableDatumLength
This field shall specify the length of the variable datum in bits.
|
long[]
|
variableDatumValue
These field(s) shall store the value of the variable datum defined by the Variable Datum ID
and Variable Datum length.
|
Constructor Summary
|
VariableDatum()
Default constructor--fills with zeros for all values.
|
Methods inherited from class java.lang.Object
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
variableDatumID
int variableDatumID
- The Variable Datum ID shall be represented by a 32-bit enumeration.
- Value:
- Enumeration; see references below for values. *
- References:
- DIS Data Dictionary :
Datum ID Field
- See section 7 in the EBV-DOC
variableDatumLength
int variableDatumLength
- This field shall specify the length of the variable datum in bits.
- References:
- DIS Data Dictionary :
Variable Datum Length Field
variableDatumValue
long[] variableDatumValue
- These field(s) shall store the value of the variable datum defined by the Variable Datum ID
and Variable Datum length.
- Explanation:
- The Variable Datum Value is stored in an array of long integers so as to respect
the convention to have a multiple of 64 length.
- References:
- DIS Data Dictionary :
Variable Datum Value/Padding Field
sizeOf
public static final int sizeOf
- Constant value--size of an empty object WHEN WRITTEN TO THE WIRE; here :
sizeOf = 8 bytes
.
VariableDatum
public VariableDatum()
- Default constructor--fills with zeros for all values.
clone
public java.lang.Object clone()
- Overrides:
- clone in class PduElement
serialize
public void serialize(java.io.DataOutputStream outputStream)
- Throws:
- java.lang.RuntimeException - when IO error occurs.
- Overrides:
- serialize in class PduElement
deSerialize
public void deSerialize(java.io.DataInputStream inputStream)
- Throws:
- java.lang.RuntimeException - when IO error occurs.
- Overrides:
- deSerialize in class PduElement
length
public int length()
- Overrides:
- length in class PduElement
printValues
public void printValues(int indentLevel,
java.io.PrintStream printStream)
- Overrides:
- printValues in class PduElement
getVariableDatumID
public int getVariableDatumID()
setVariableDatumID
public void setVariableDatumID(int pVariableDatumID)
getVariableDatumLength
public int getVariableDatumLength()
setVariableDatumLength
public void setVariableDatumLength(int pVariableDatumLength)
getVariableDatumValue
public long[] getVariableDatumValue()
- Throws:
- java.lang.RuntimeException - if Index error occurs while copying array
- java.lang.RuntimeException - if error occurs while copying array.
setVariableDatumValue
public void setVariableDatumValue(long[] pVariableDatumValue)