public void marshal(DataOutputStream dos) { super.marshal(dos); try { minefieldID.marshal(dos); requestingEntityID.marshal(dos); dos.writeByte((byte) requestID); dos.writeByte((byte) requestedPerimeterPoints.size()); dos.writeByte((byte) pad2); dos.writeByte((byte) sensorTypes.size()); dos.writeInt((int) dataFilter); requestedMineType.marshal(dos); for (int idx = 0; idx < requestedPerimeterPoints.size(); idx++) { Point aPoint = requestedPerimeterPoints.get(idx); aPoint.marshal(dos); } // end of list marshalling for (int idx = 0; idx < sensorTypes.size(); idx++) { TwoByteChunk aTwoByteChunk = sensorTypes.get(idx); aTwoByteChunk.marshal(dos); } // end of list marshalling } // end try catch (Exception e) { System.out.println(e); } } // end of marshal method
/** * 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); minefieldID.marshal(buff); requestingEntityID.marshal(buff); buff.put((byte) requestID); buff.put((byte) requestedPerimeterPoints.size()); buff.put((byte) pad2); buff.put((byte) sensorTypes.size()); buff.putInt((int) dataFilter); requestedMineType.marshal(buff); for (int idx = 0; idx < requestedPerimeterPoints.size(); idx++) { Point aPoint = (Point) requestedPerimeterPoints.get(idx); aPoint.marshal(buff); } // end of list marshalling for (int idx = 0; idx < sensorTypes.size(); idx++) { TwoByteChunk aTwoByteChunk = (TwoByteChunk) sensorTypes.get(idx); aTwoByteChunk.marshal(buff); } // end of list marshalling } // end of marshal method