[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[certi-cvs] jcerti/src/hla/rti1516e/jlc HLAboolean.java Bas...
From: |
CERTI CVS commits |
Subject: |
[certi-cvs] jcerti/src/hla/rti1516e/jlc HLAboolean.java Bas... |
Date: |
Tue, 13 Dec 2011 23:49:25 +0000 |
CVSROOT: /sources/certi
Module name: jcerti
Changes by: Eric NOULARD <erk> 11/12/13 23:49:25
Added files:
src/hla/rti1516e/jlc: HLAboolean.java BasicHLAbyte.java
BasicHLAfloat32LE.java
BasicHLAinteger64LE.java
BasicHLAinteger64BE.java
BasicHLAoctetPairLE.java
BasicHLAinteger32LE.java
BasicHLAfloat64LE.java
BasicHLAinteger16LE.java
DataElementBase.java
BasicHLAfloat32BE.java
BasicHLAfloat64BE.java
BasicHLAinteger32BE.java
EncoderFactory.java
BasicHLAinteger16BE.java
BasicHLAoctet.java
BasicHLAoctetPairBE.java
Log message:
Add first set of Basic encoding helper classes.
Factory is not complete [yet]
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/HLAboolean.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAbyte.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAfloat32LE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAinteger64LE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAinteger64BE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAoctetPairLE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAinteger32LE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAfloat64LE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAinteger16LE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/DataElementBase.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAfloat32BE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAfloat64BE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAinteger32BE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/EncoderFactory.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAinteger16BE.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAoctet.java?cvsroot=certi&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/jcerti/src/hla/rti1516e/jlc/BasicHLAoctetPairBE.java?cvsroot=certi&rev=1.1
Patches:
Index: HLAboolean.java
===================================================================
RCS file: HLAboolean.java
diff -N HLAboolean.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ HLAboolean.java 13 Dec 2011 23:49:23 -0000 1.1
@@ -0,0 +1,55 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+
+public class HLAboolean extends DataElementBase implements
+ hla.rti1516e.encoding.HLAboolean {
+
+ private BasicHLAinteger32BE value;
+
+ public HLAboolean() {
+ value = new BasicHLAinteger32BE(0);
+ }
+
+ public HLAboolean(boolean b) {
+ value = new BasicHLAinteger32BE(b ? 1 :0);
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return value.getOctetBoundary();
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ value.encode(byteWrapper);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return value.getEncodedLength();
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ value.decode(byteWrapper);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value.decode(bytes);
+ }
+
+ @Override
+ public boolean getValue() {
+ return (value.getValue()==1);
+ }
+
+ @Override
+ public void setValue(boolean value) {
+ this.value.setValue(value ? 1 : 0);
+ }
+
+}
Index: BasicHLAbyte.java
===================================================================
RCS file: BasicHLAbyte.java
diff -N BasicHLAbyte.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAbyte.java 13 Dec 2011 23:49:23 -0000 1.1
@@ -0,0 +1,55 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+
+public class BasicHLAbyte extends DataElementBase implements
+ hla.rti1516e.encoding.HLAbyte {
+
+ private BasicHLAoctet value;
+
+ public BasicHLAbyte() {
+ value = new BasicHLAoctet();
+ }
+
+ public BasicHLAbyte(byte b) {
+ value = new BasicHLAoctet(b);
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return value.getOctetBoundary();
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ value.encode(byteWrapper);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return value.getEncodedLength();
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ value.decode(byteWrapper);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value.decode(bytes);
+ }
+
+ @Override
+ public byte getValue() {
+ return value.getValue();
+ }
+
+ @Override
+ public void setValue(byte value) {
+ this.value.setValue(value);
+ }
+
+}
Index: BasicHLAfloat32LE.java
===================================================================
RCS file: BasicHLAfloat32LE.java
diff -N BasicHLAfloat32LE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAfloat32LE.java 13 Dec 2011 23:49:23 -0000 1.1
@@ -0,0 +1,74 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAfloat32LE;
+
+public class BasicHLAfloat32LE extends DataElementBase implements HLAfloat32LE
{
+
+ private float value;
+
+ public BasicHLAfloat32LE() {
+ value = 0.0f;
+ }
+
+ public BasicHLAfloat32LE(float f) {
+ value = f;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 4;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ int f_as_i = Float.floatToIntBits(value);
+ byteWrapper.put((int)(f_as_i >>> 0) & 0xFF);
+ byteWrapper.put((int)(f_as_i >>> 8) & 0xFF);
+ byteWrapper.put((int)(f_as_i >>> 16) & 0xFF);
+ byteWrapper.put((int)(f_as_i >>> 24) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 4;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ int f_as_i;
+ f_as_i = 0;
+ f_as_i += (int)((byteWrapper.get() & 0xFF) << 0);
+ f_as_i += (int)((byteWrapper.get() & 0xFF) << 8);
+ f_as_i += (int)((byteWrapper.get() & 0xFF) << 16);
+ f_as_i += (int)((byteWrapper.get() & 0xFF) << 24);
+ value = Float.intBitsToFloat(f_as_i);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+
+ int f_as_i;
+ f_as_i = 0;
+ f_as_i += (int)((bytes[0] & 0xFF) << 0);
+ f_as_i += (int)((bytes[1] & 0xFF) << 8);
+ f_as_i += (int)((bytes[2] & 0xFF) << 16);
+ f_as_i += (int)((bytes[3] & 0xFF) << 24);
+ value = Float.intBitsToFloat(f_as_i);
+ }
+
+ @Override
+ public float getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(float value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAinteger64LE.java
===================================================================
RCS file: BasicHLAinteger64LE.java
diff -N BasicHLAinteger64LE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAinteger64LE.java 13 Dec 2011 23:49:23 -0000 1.1
@@ -0,0 +1,81 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAinteger64LE;
+
+public class BasicHLAinteger64LE extends DataElementBase implements
+ HLAinteger64LE {
+
+ private long value;
+
+ public BasicHLAinteger64LE() {
+ value = 0L;
+ }
+
+ public BasicHLAinteger64LE(long value) {
+ this.value = value;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 4;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put((int)(value >>> 0) & 0xFF);
+ byteWrapper.put((int)(value >>> 8) & 0xFF);
+ byteWrapper.put((int)(value >>> 16) & 0xFF);
+ byteWrapper.put((int)(value >>> 24) & 0xFF);
+ byteWrapper.put((int)(value >>> 32) & 0xFF);
+ byteWrapper.put((int)(value >>> 40) & 0xFF);
+ byteWrapper.put((int)(value >>> 48) & 0xFF);
+ byteWrapper.put((int)(value >>> 56) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 8;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = 0L;
+ value += (long)((byteWrapper.get() & 0xFF) << 0);
+ value += (long)((byteWrapper.get() & 0xFF) << 8);
+ value += (long)((byteWrapper.get() & 0xFF) << 16);
+ value += (long)((byteWrapper.get() & 0xFF) << 24);
+ value += (long)((byteWrapper.get() & 0xFF) << 32);
+ value += (long)((byteWrapper.get() & 0xFF) << 40);
+ value += (long)((byteWrapper.get() & 0xFF) << 48);
+ value += (long)((byteWrapper.get() & 0xFF) << 56);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = 0L;
+ value += (long)((bytes[0] & 0xFF) << 0);
+ value += (long)((bytes[1] & 0xFF) << 8);
+ value += (long)((bytes[2] & 0xFF) << 16);
+ value += (long)((bytes[3] & 0xFF) << 24);
+ value += (long)((bytes[4] & 0xFF) << 32);
+ value += (long)((bytes[5] & 0xFF) << 40);
+ value += (long)((bytes[6] & 0xFF) << 48);
+ value += (long)((bytes[7] & 0xFF) << 56);
+ }
+
+ @Override
+ public long getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(long value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAinteger64BE.java
===================================================================
RCS file: BasicHLAinteger64BE.java
diff -N BasicHLAinteger64BE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAinteger64BE.java 13 Dec 2011 23:49:23 -0000 1.1
@@ -0,0 +1,81 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAinteger64BE;
+
+public class BasicHLAinteger64BE extends DataElementBase implements
+ HLAinteger64BE {
+
+ private long value;
+
+ public BasicHLAinteger64BE() {
+ value = 0L;
+ }
+
+ public BasicHLAinteger64BE(long value) {
+ this.value = value;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 4;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put((int)(value >>> 56) & 0xFF);
+ byteWrapper.put((int)(value >>> 48) & 0xFF);
+ byteWrapper.put((int)(value >>> 40) & 0xFF);
+ byteWrapper.put((int)(value >>> 32) & 0xFF);
+ byteWrapper.put((int)(value >>> 24) & 0xFF);
+ byteWrapper.put((int)(value >>> 16) & 0xFF);
+ byteWrapper.put((int)(value >>> 8) & 0xFF);
+ byteWrapper.put((int)(value >>> 0) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 8;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = 0L;
+ value += (long)((byteWrapper.get() & 0xFF) << 56);
+ value += (long)((byteWrapper.get() & 0xFF) << 48);
+ value += (long)((byteWrapper.get() & 0xFF) << 40);
+ value += (long)((byteWrapper.get() & 0xFF) << 32);
+ value += (long)((byteWrapper.get() & 0xFF) << 24);
+ value += (long)((byteWrapper.get() & 0xFF) << 16);
+ value += (long)((byteWrapper.get() & 0xFF) << 8);
+ value += (long)((byteWrapper.get() & 0xFF) << 0);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = 0L;
+ value += (long)((bytes[0] & 0xFF) << 56);
+ value += (long)((bytes[1] & 0xFF) << 48);
+ value += (long)((bytes[2] & 0xFF) << 40);
+ value += (long)((bytes[3] & 0xFF) << 32);
+ value += (long)((bytes[4] & 0xFF) << 24);
+ value += (long)((bytes[5] & 0xFF) << 16);
+ value += (long)((bytes[6] & 0xFF) << 8);
+ value += (long)((bytes[7] & 0xFF) << 0);
+ }
+
+ @Override
+ public long getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(long value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAoctetPairLE.java
===================================================================
RCS file: BasicHLAoctetPairLE.java
diff -N BasicHLAoctetPairLE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAoctetPairLE.java 13 Dec 2011 23:49:23 -0000 1.1
@@ -0,0 +1,63 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAoctetPairLE;
+
+public class BasicHLAoctetPairLE extends DataElementBase implements
+ HLAoctetPairLE {
+
+ private short value;
+
+ public BasicHLAoctetPairLE() {
+ value = 0;
+ }
+
+ public BasicHLAoctetPairLE(short value) {
+ this.value = value;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 2;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put((int)(value >>> 0) & 0xFF);
+ byteWrapper.put((int)(value >>> 8) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 2;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = 0;
+ value += (short)((byteWrapper.get() & 0xFF) << 0);
+ value += (short)((byteWrapper.get() & 0xFF) << 8);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = 0;
+ value += (short)((bytes[0] & 0xFF) << 0);
+ value += (short)((bytes[1] & 0xFF) << 8);
+ }
+
+ @Override
+ public short getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(short value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAinteger32LE.java
===================================================================
RCS file: BasicHLAinteger32LE.java
diff -N BasicHLAinteger32LE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAinteger32LE.java 13 Dec 2011 23:49:23 -0000 1.1
@@ -0,0 +1,69 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAinteger32LE;
+
+public class BasicHLAinteger32LE extends DataElementBase implements
+ HLAinteger32LE {
+
+ private int value;
+
+ public BasicHLAinteger32LE() {
+ value = 0;
+ }
+
+ public BasicHLAinteger32LE(int value) {
+ this.value = value;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 4;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put((int)(value >>> 0) & 0xFF);
+ byteWrapper.put((int)(value >>> 8) & 0xFF);
+ byteWrapper.put((int)(value >>> 16) & 0xFF);
+ byteWrapper.put((int)(value >>> 24) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 4;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = 0;
+ value += (int)((byteWrapper.get() & 0xFF) << 0);
+ value += (int)((byteWrapper.get() & 0xFF) << 8);
+ value += (int)((byteWrapper.get() & 0xFF) << 16);
+ value += (int)((byteWrapper.get() & 0xFF) << 24);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = 0;
+ value += (int)((bytes[0] & 0xFF) << 0);
+ value += (int)((bytes[1] & 0xFF) << 8);
+ value += (int)((bytes[2] & 0xFF) << 16);
+ value += (int)((bytes[3] & 0xFF) << 24);
+ }
+
+ @Override
+ public int getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(int value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAfloat64LE.java
===================================================================
RCS file: BasicHLAfloat64LE.java
diff -N BasicHLAfloat64LE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAfloat64LE.java 13 Dec 2011 23:49:23 -0000 1.1
@@ -0,0 +1,86 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAfloat64LE;
+
+public class BasicHLAfloat64LE extends DataElementBase implements HLAfloat64LE
{
+
+ private double value;
+
+ public BasicHLAfloat64LE() {
+ value = 0.0;
+ }
+
+ public BasicHLAfloat64LE(double d) {
+ value = d;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 4;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ long d_as_l = Double.doubleToLongBits(value);
+ byteWrapper.put((int)(d_as_l >>> 0) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 8) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 16) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 24) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 32) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 40) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 48) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 56) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 8;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ long d_as_l;
+ d_as_l = 0L;
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 0);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 8);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 16);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 24);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 32);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 40);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 48);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 56);
+ value = Double.longBitsToDouble(d_as_l);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+
+ long d_as_l;
+ d_as_l = 0L;
+ d_as_l += (long)((bytes[0] & 0xFF) << 0);
+ d_as_l += (long)((bytes[1] & 0xFF) << 8);
+ d_as_l += (long)((bytes[2] & 0xFF) << 16);
+ d_as_l += (long)((bytes[3] & 0xFF) << 24);
+ d_as_l += (long)((bytes[4] & 0xFF) << 32);
+ d_as_l += (long)((bytes[5] & 0xFF) << 40);
+ d_as_l += (long)((bytes[6] & 0xFF) << 48);
+ d_as_l += (long)((bytes[7] & 0xFF) << 56);
+ value = Double.longBitsToDouble(d_as_l);
+ }
+
+ @Override
+ public double getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(double value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAinteger16LE.java
===================================================================
RCS file: BasicHLAinteger16LE.java
diff -N BasicHLAinteger16LE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAinteger16LE.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,63 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAinteger16LE;
+
+public class BasicHLAinteger16LE extends DataElementBase implements
+ HLAinteger16LE {
+
+ private short value;
+
+ public BasicHLAinteger16LE() {
+ value = 0;
+ }
+
+ public BasicHLAinteger16LE(short value) {
+ this.value = value;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 2;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put((int)(value >>> 0) & 0xFF);
+ byteWrapper.put((int)(value >>> 8) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 2;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = 0;
+ value += (short)((byteWrapper.get() & 0xFF) << 0);
+ value += (short)((byteWrapper.get() & 0xFF) << 8);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = 0;
+ value += (short)((bytes[0] & 0xFF) << 0);
+ value += (short)((bytes[1] & 0xFF) << 8);
+ }
+
+ @Override
+ public short getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(short value) {
+ this.value = value;
+ }
+
+}
Index: DataElementBase.java
===================================================================
RCS file: DataElementBase.java
diff -N DataElementBase.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ DataElementBase.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,16 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DataElement;
+import hla.rti1516e.encoding.EncoderException;
+
+public abstract class DataElementBase implements DataElement {
+
+ @Override
+ public byte[] toByteArray() throws EncoderException {
+ ByteWrapper bw = new ByteWrapper(getEncodedLength());
+ encode(bw);
+ return bw.array();
+ }
+
+}
Index: BasicHLAfloat32BE.java
===================================================================
RCS file: BasicHLAfloat32BE.java
diff -N BasicHLAfloat32BE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAfloat32BE.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,74 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAfloat32BE;
+
+public class BasicHLAfloat32BE extends DataElementBase implements HLAfloat32BE
{
+
+ private float value;
+
+ public BasicHLAfloat32BE() {
+ value = 0.0f;
+ }
+
+ public BasicHLAfloat32BE(float f) {
+ value = f;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 4;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ int f_as_i = Float.floatToIntBits(value);
+ byteWrapper.put((int)(f_as_i >>> 24) & 0xFF);
+ byteWrapper.put((int)(f_as_i >>> 16) & 0xFF);
+ byteWrapper.put((int)(f_as_i >>> 8) & 0xFF);
+ byteWrapper.put((int)(f_as_i >>> 0) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 4;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ int f_as_i;
+ f_as_i = 0;
+ f_as_i += (int)((byteWrapper.get() & 0xFF) << 24);
+ f_as_i += (int)((byteWrapper.get() & 0xFF) << 16);
+ f_as_i += (int)((byteWrapper.get() & 0xFF) << 8);
+ f_as_i += (int)((byteWrapper.get() & 0xFF) << 0);
+ value = Float.intBitsToFloat(f_as_i);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+
+ int f_as_i;
+ f_as_i = 0;
+ f_as_i += (long)((bytes[4] & 0xFF) << 24);
+ f_as_i += (long)((bytes[5] & 0xFF) << 16);
+ f_as_i += (long)((bytes[6] & 0xFF) << 8);
+ f_as_i += (long)((bytes[7] & 0xFF) << 0);
+ value = Float.intBitsToFloat(f_as_i);
+ }
+
+ @Override
+ public float getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(float value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAfloat64BE.java
===================================================================
RCS file: BasicHLAfloat64BE.java
diff -N BasicHLAfloat64BE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAfloat64BE.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,86 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAfloat64BE;
+
+public class BasicHLAfloat64BE extends DataElementBase implements HLAfloat64BE
{
+
+ private double value;
+
+ public BasicHLAfloat64BE() {
+ value = 0.0;
+ }
+
+ public BasicHLAfloat64BE(double d) {
+ value = d;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 4;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ long d_as_l = Double.doubleToLongBits(value);
+ byteWrapper.put((int)(d_as_l >>> 56) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 48) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 40) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 32) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 24) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 16) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 8) & 0xFF);
+ byteWrapper.put((int)(d_as_l >>> 0) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 8;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ long d_as_l;
+ d_as_l = 0L;
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 56);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 48);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 40);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 32);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 24);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 16);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 8);
+ d_as_l += (long)((byteWrapper.get() & 0xFF) << 0);
+ value = Double.longBitsToDouble(d_as_l);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+
+ long d_as_l;
+ d_as_l = 0L;
+ d_as_l += (long)((bytes[0] & 0xFF) << 56);
+ d_as_l += (long)((bytes[1] & 0xFF) << 48);
+ d_as_l += (long)((bytes[2] & 0xFF) << 40);
+ d_as_l += (long)((bytes[3] & 0xFF) << 32);
+ d_as_l += (long)((bytes[4] & 0xFF) << 24);
+ d_as_l += (long)((bytes[5] & 0xFF) << 16);
+ d_as_l += (long)((bytes[6] & 0xFF) << 8);
+ d_as_l += (long)((bytes[7] & 0xFF) << 0);
+ value = Double.longBitsToDouble(d_as_l);
+ }
+
+ @Override
+ public double getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(double value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAinteger32BE.java
===================================================================
RCS file: BasicHLAinteger32BE.java
diff -N BasicHLAinteger32BE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAinteger32BE.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,69 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAinteger32BE;
+
+public class BasicHLAinteger32BE extends DataElementBase implements
+ HLAinteger32BE {
+
+ private int value;
+
+ public BasicHLAinteger32BE() {
+ value = 0;
+ }
+
+ public BasicHLAinteger32BE(int value) {
+ this.value = value;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 4;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put((int)(value >>> 24) & 0xFF);
+ byteWrapper.put((int)(value >>> 16) & 0xFF);
+ byteWrapper.put((int)(value >>> 8) & 0xFF);
+ byteWrapper.put((int)(value >>> 0) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 4;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = 0;
+ value += (int)((byteWrapper.get() & 0xFF) << 24);
+ value += (int)((byteWrapper.get() & 0xFF) << 16);
+ value += (int)((byteWrapper.get() & 0xFF) << 8);
+ value += (int)((byteWrapper.get() & 0xFF) << 0);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = 0;
+ value += (int)((bytes[4] & 0xFF) << 24);
+ value += (int)((bytes[5] & 0xFF) << 16);
+ value += (int)((bytes[6] & 0xFF) << 8);
+ value += (int)((bytes[7] & 0xFF) << 0);
+ }
+
+ @Override
+ public int getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(int value) {
+ this.value = value;
+ }
+
+}
Index: EncoderFactory.java
===================================================================
RCS file: EncoderFactory.java
diff -N EncoderFactory.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ EncoderFactory.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,260 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.*;
+
+public class EncoderFactory implements hla.rti1516e.encoding.EncoderFactory {
+
+ public static final EncoderFactory CERTI_ENCODER_FACTORY = new
EncoderFactory();
+
+ public static EncoderFactory getInstance()
+ {
+ return CERTI_ENCODER_FACTORY;
+ }
+
+ @Override
+ public HLAASCIIchar createHLAASCIIchar() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAASCIIchar createHLAASCIIchar(byte b) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAASCIIstring createHLAASCIIstring() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAASCIIstring createHLAASCIIstring(String s) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAboolean createHLAboolean() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAboolean createHLAboolean(boolean b) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAbyte createHLAbyte() {
+ return new BasicHLAbyte();
+ }
+
+ @Override
+ public HLAbyte createHLAbyte(byte b) {
+ return new BasicHLAbyte(b);
+ }
+
+ @Override
+ public <T extends DataElement> HLAvariantRecord<T> createHLAvariantRecord(
+ T discriminant) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAfixedRecord createHLAfixedRecord() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public <T extends DataElement> HLAfixedArray<T> createHLAfixedArray(
+ DataElementFactory<T> factory, int size) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public <T extends DataElement> HLAfixedArray<T> createHLAfixedArray(
+ T... elements) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAfloat32BE createHLAfloat32BE() {
+ return new BasicHLAfloat32BE();
+ }
+
+ @Override
+ public HLAfloat32BE createHLAfloat32BE(float f) {
+ return new BasicHLAfloat32BE(f);
+ }
+
+ @Override
+ public HLAfloat32LE createHLAfloat32LE() {
+ return new BasicHLAfloat32LE();
+ }
+
+ @Override
+ public HLAfloat32LE createHLAfloat32LE(float f) {
+ return new BasicHLAfloat32LE(f);
+ }
+
+ @Override
+ public HLAfloat64BE createHLAfloat64BE() {
+ return new BasicHLAfloat64BE();
+ }
+
+ @Override
+ public HLAfloat64BE createHLAfloat64BE(double d) {
+ return new BasicHLAfloat64BE(d);
+ }
+
+ @Override
+ public HLAfloat64LE createHLAfloat64LE() {
+ return new BasicHLAfloat64LE();
+ }
+
+ @Override
+ public HLAfloat64LE createHLAfloat64LE(double d) {
+ return new BasicHLAfloat64LE(d);
+ }
+
+ @Override
+ public HLAinteger16BE createHLAinteger16BE() {
+ return new BasicHLAinteger16BE();
+ }
+
+ @Override
+ public HLAinteger16BE createHLAinteger16BE(short s) {
+ return new BasicHLAinteger16BE(s);
+ }
+
+ @Override
+ public HLAinteger16LE createHLAinteger16LE() {
+ return new BasicHLAinteger16LE();
+ }
+
+ @Override
+ public HLAinteger16LE createHLAinteger16LE(short s) {
+ return new BasicHLAinteger16LE(s);
+ }
+
+ @Override
+ public HLAinteger32BE createHLAinteger32BE() {
+ return new BasicHLAinteger32BE();
+ }
+
+ @Override
+ public HLAinteger32BE createHLAinteger32BE(int i) {
+ return new BasicHLAinteger32BE(i);
+ }
+
+ @Override
+ public HLAinteger32LE createHLAinteger32LE() {
+ return new BasicHLAinteger32LE();
+ }
+
+ @Override
+ public HLAinteger32LE createHLAinteger32LE(int i) {
+ return new BasicHLAinteger32LE(i);
+ }
+
+ @Override
+ public HLAinteger64BE createHLAinteger64BE() {
+ return new BasicHLAinteger64BE();
+ }
+
+ @Override
+ public HLAinteger64BE createHLAinteger64BE(long l) {
+ return new BasicHLAinteger64BE(l);
+ }
+
+ @Override
+ public HLAinteger64LE createHLAinteger64LE() {
+ return new BasicHLAinteger64LE();
+ }
+
+ @Override
+ public HLAinteger64LE createHLAinteger64LE(long l) {
+ return new BasicHLAinteger64LE(l);
+ }
+
+ @Override
+ public HLAoctet createHLAoctet() {
+ return new BasicHLAoctet();
+ }
+
+ @Override
+ public HLAoctet createHLAoctet(byte b) {
+ return new BasicHLAoctet(b);
+ }
+
+ @Override
+ public HLAoctetPairBE createHLAoctetPairBE() {
+ return new BasicHLAoctetPairBE();
+ }
+
+ @Override
+ public HLAoctetPairBE createHLAoctetPairBE(short s) {
+ return new BasicHLAoctetPairBE(s);
+ }
+
+ @Override
+ public HLAoctetPairLE createHLAoctetPairLE() {
+ return new BasicHLAoctetPairLE();
+ }
+
+ @Override
+ public HLAoctetPairLE createHLAoctetPairLE(short s) {
+ return new BasicHLAoctetPairLE(s);
+ }
+
+ @Override
+ public HLAopaqueData createHLAopaqueData() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAopaqueData createHLAopaqueData(byte[] b) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAunicodeChar createHLAunicodeChar() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAunicodeChar createHLAunicodeChar(short c) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAunicodeString createHLAunicodeString() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public HLAunicodeString createHLAunicodeString(String s) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public <T extends DataElement> HLAvariableArray<T> createHLAvariableArray(
+ DataElementFactory<T> factory, T... elements) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
Index: BasicHLAinteger16BE.java
===================================================================
RCS file: BasicHLAinteger16BE.java
diff -N BasicHLAinteger16BE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAinteger16BE.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,63 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAinteger16BE;
+
+public class BasicHLAinteger16BE extends DataElementBase implements
+ HLAinteger16BE {
+
+ private short value;
+
+ public BasicHLAinteger16BE() {
+ value = 0;
+ }
+
+ public BasicHLAinteger16BE(short value) {
+ this.value = value;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 2;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put((int)(value >>> 8) & 0xFF);
+ byteWrapper.put((int)(value >>> 0) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 2;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = 0;
+ value += (short)((byteWrapper.get() & 0xFF) << 8);
+ value += (short)((byteWrapper.get() & 0xFF) << 0);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = 0;
+ value += (short)((bytes[0] & 0xFF) << 8);
+ value += (short)((bytes[1] & 0xFF) << 0);
+ }
+
+ @Override
+ public short getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(short value) {
+ this.value = value;
+ }
+
+}
Index: BasicHLAoctet.java
===================================================================
RCS file: BasicHLAoctet.java
diff -N BasicHLAoctet.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAoctet.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,74 @@
+// ----------------------------------------------------------------------------
+// CERTI - HLA RunTime Infrastructure
+// Copyright (C) 2011 Eric Noulard
+//
+// This program is free software ; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public License
+// as published by the Free Software Foundation ; either version 2 of
+// the License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful, but
+// WITHOUT ANY WARRANTY ; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this program ; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// ----------------------------------------------------------------------------
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+
+public class BasicHLAoctet extends DataElementBase implements
+ hla.rti1516e.encoding.HLAoctet {
+ private byte value;
+
+ public BasicHLAoctet(byte value) {
+ this.value = value;
+ }
+
+ public BasicHLAoctet() {
+ value = 0;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 1;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put(value);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 1;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = (byte)byteWrapper.get();
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = bytes[0];
+ }
+
+ @Override
+ public byte getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(byte value) {
+ this.value = value;
+ }
+}
Index: BasicHLAoctetPairBE.java
===================================================================
RCS file: BasicHLAoctetPairBE.java
diff -N BasicHLAoctetPairBE.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ BasicHLAoctetPairBE.java 13 Dec 2011 23:49:24 -0000 1.1
@@ -0,0 +1,63 @@
+package hla.rti1516e.jlc;
+
+import hla.rti1516e.encoding.ByteWrapper;
+import hla.rti1516e.encoding.DecoderException;
+import hla.rti1516e.encoding.EncoderException;
+import hla.rti1516e.encoding.HLAoctetPairBE;
+
+public class BasicHLAoctetPairBE extends DataElementBase implements
+ HLAoctetPairBE {
+
+ private short value;
+
+ public BasicHLAoctetPairBE() {
+ value = 0;
+ }
+
+ public BasicHLAoctetPairBE(short value) {
+ this.value = value;
+ }
+
+ @Override
+ public int getOctetBoundary() {
+ return 2;
+ }
+
+ @Override
+ public void encode(ByteWrapper byteWrapper) throws EncoderException {
+ byteWrapper.align(getOctetBoundary());
+ byteWrapper.put((int)(value >>> 8) & 0xFF);
+ byteWrapper.put((int)(value >>> 0) & 0xFF);
+ }
+
+ @Override
+ public int getEncodedLength() {
+ return 2;
+ }
+
+ @Override
+ public void decode(ByteWrapper byteWrapper) throws DecoderException {
+ byteWrapper.align(getOctetBoundary());
+ value = 0;
+ value += (short)((byteWrapper.get() & 0xFF) << 8);
+ value += (short)((byteWrapper.get() & 0xFF) << 0);
+ }
+
+ @Override
+ public void decode(byte[] bytes) throws DecoderException {
+ value = 0;
+ value += (short)((bytes[0] & 0xFF) << 8);
+ value += (short)((bytes[1] & 0xFF) << 0);
+ }
+
+ @Override
+ public short getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(short value) {
+ this.value = value;
+ }
+
+}
- [certi-cvs] jcerti/src/hla/rti1516e/jlc HLAboolean.java Bas...,
CERTI CVS commits <=