/** * Packs a Pdu into the ByteBuffer. * * @throws java.nio.BufferOverflowException if buff is too small * @throws java.nio.ReadOnlyBufferException if buff is read only * @see java.nio.ByteBuffer * @param buff The ByteBuffer at the position to begin writing * @since ?? */ public void marshal(java.nio.ByteBuffer buff) { super.marshal(buff); entityId.marshal(buff); buff.putShort((short) communicationsDeviceID); buff.putShort((short) encodingScheme); buff.putShort((short) tdlType); buff.putInt((int) sampleRate); buff.putShort((short) data.size()); buff.putShort((short) samples); for (int idx = 0; idx < data.size(); idx++) { OneByteChunk aOneByteChunk = (OneByteChunk) data.get(idx); aOneByteChunk.marshal(buff); } // end of list marshalling } // end of marshal method
/** * Unpacks a Pdu from the underlying data. * * @throws java.nio.BufferUnderflowException if buff is too small * @see java.nio.ByteBuffer * @param buff The ByteBuffer at the position to begin reading * @since ?? */ public void unmarshal(java.nio.ByteBuffer buff) { super.unmarshal(buff); entityId.unmarshal(buff); communicationsDeviceID = (int) (buff.getShort() & 0xFFFF); encodingScheme = (int) (buff.getShort() & 0xFFFF); tdlType = (int) (buff.getShort() & 0xFFFF); sampleRate = buff.getInt(); dataLength = (int) (buff.getShort() & 0xFFFF); samples = (int) (buff.getShort() & 0xFFFF); for (int idx = 0; idx < dataLength; idx++) { OneByteChunk anX = new OneByteChunk(); anX.unmarshal(buff); data.add(anX); } } // end of unmarshal method
public int getMarshalledSize() { int marshalSize = 0; marshalSize = super.getMarshalledSize(); marshalSize = marshalSize + entityId.getMarshalledSize(); // entityId marshalSize = marshalSize + 2; // communicationsDeviceID marshalSize = marshalSize + 2; // encodingScheme marshalSize = marshalSize + 2; // tdlType marshalSize = marshalSize + 4; // sampleRate marshalSize = marshalSize + 2; // dataLength marshalSize = marshalSize + 2; // samples for (int idx = 0; idx < data.size(); idx++) { OneByteChunk listElement = data.get(idx); marshalSize = marshalSize + listElement.getMarshalledSize(); } return marshalSize; }
public void marshal(DataOutputStream dos) { super.marshal(dos); try { entityId.marshal(dos); dos.writeShort((short) communicationsDeviceID); dos.writeShort((short) encodingScheme); dos.writeShort((short) tdlType); dos.writeInt((int) sampleRate); dos.writeShort((short) data.size()); dos.writeShort((short) samples); for (int idx = 0; idx < data.size(); idx++) { OneByteChunk aOneByteChunk = data.get(idx); aOneByteChunk.marshal(dos); } // end of list marshalling } // end try catch (Exception e) { System.out.println(e); } } // end of marshal method
public void unmarshal(DataInputStream dis) { super.unmarshal(dis); try { entityId.unmarshal(dis); communicationsDeviceID = (int) dis.readUnsignedShort(); encodingScheme = (int) dis.readUnsignedShort(); tdlType = (int) dis.readUnsignedShort(); sampleRate = dis.readInt(); dataLength = (int) dis.readUnsignedShort(); samples = (int) dis.readUnsignedShort(); for (int idx = 0; idx < dataLength; idx++) { OneByteChunk anX = new OneByteChunk(); anX.unmarshal(dis); data.add(anX); } } // end try catch (Exception e) { System.out.println(e); } } // end of unmarshal method