/** sort by number */ public int compareTo( Object o) { return code - ((Tag) o).getCode(); }
/** sort by number */ public int compareTo( Object o) { return code - ((Tag) o).getCode(); }
/** sort by number */ public int compareTo( Object o) { return code - ((Tag) o).getCode(); }
private void writeIFDEntry(FileChannel channel, IFDEntry ifd, int start) throws IOException { channel.position(start); ByteBuffer buffer = ByteBuffer.allocate(12); buffer.putShort((short) ifd.tag.getCode()); buffer.putShort((short) ifd.type.code); buffer.putInt(ifd.count); int size = ifd.count * ifd.type.size; if (size <= 4) { int done = writeValues(buffer, ifd); for (int k = 0; k < 4 - done; k++) // fill out to 4 bytes buffer.put((byte) 0); buffer.flip(); channel.write(buffer); } else { // write offset buffer.putInt(nextOverflowData); buffer.flip(); channel.write(buffer); // write data channel.position(nextOverflowData); //System.out.println(" write offset = "+ifd.tag.getName()); ByteBuffer vbuffer = ByteBuffer.allocate(size); writeValues(vbuffer, ifd); vbuffer.flip(); channel.write(vbuffer); nextOverflowData += size; } }
private void writeIFDEntry(FileChannel channel, IFDEntry ifd, int start) throws IOException { channel.position(start); ByteBuffer buffer = ByteBuffer.allocate(12); buffer.putShort((short) ifd.tag.getCode()); buffer.putShort((short) ifd.type.code); buffer.putInt(ifd.count); int size = ifd.count * ifd.type.size; if (size <= 4) { int done = writeValues(buffer, ifd); for (int k = 0; k < 4 - done; k++) // fill out to 4 bytes buffer.put((byte) 0); buffer.flip(); channel.write(buffer); } else { // write offset buffer.putInt(nextOverflowData); buffer.flip(); channel.write(buffer); // write data channel.position(nextOverflowData); //System.out.println(" write offset = "+ifd.tag.getName()); ByteBuffer vbuffer = ByteBuffer.allocate(size); writeValues(vbuffer, ifd); vbuffer.flip(); channel.write(vbuffer); nextOverflowData += size; } }
private void writeIFDEntry(FileChannel channel, IFDEntry ifd, int start) throws IOException { channel.position(start); ByteBuffer buffer = ByteBuffer.allocate(12); buffer.putShort((short) ifd.tag.getCode()); buffer.putShort((short) ifd.type.code); buffer.putInt(ifd.count); int size = ifd.count * ifd.type.size; if (size <= 4) { int done = writeValues(buffer, ifd); for (int k = 0; k < 4 - done; k++) // fill out to 4 bytes buffer.put((byte) 0); buffer.flip(); channel.write(buffer); } else { // write offset buffer.putInt(nextOverflowData); buffer.flip(); channel.write(buffer); // write data channel.position(nextOverflowData); //System.out.println(" write offset = "+ifd.tag.getName()); ByteBuffer vbuffer = ByteBuffer.allocate(size); writeValues(vbuffer, ifd); vbuffer.flip(); channel.write(vbuffer); nextOverflowData += size; } }
values[count++] = Tag.GeoDoubleParamsTag.getCode(); // extra double values here values[count++] = geokey.count(); values[count++] = dcounter; values[count++] = Tag.GeoAsciiParamsTag.getCode(); // extra double values here values[count++] = Tag.GeoKeyDirectoryTag.getCode(); // extra int values here values[count++] = geokey.count(); values[count++] = icounter;
values[count++] = Tag.GeoDoubleParamsTag.getCode(); // extra double values here values[count++] = geokey.count(); values[count++] = dcounter; values[count++] = Tag.GeoAsciiParamsTag.getCode(); // extra double values here values[count++] = Tag.GeoKeyDirectoryTag.getCode(); // extra int values here values[count++] = geokey.count(); values[count++] = icounter;
values[count++] = Tag.GeoDoubleParamsTag.getCode(); // extra double values here values[count++] = geokey.count(); values[count++] = dcounter; values[count++] = Tag.GeoAsciiParamsTag.getCode(); // extra double values here values[count++] = Tag.GeoKeyDirectoryTag.getCode(); // extra int values here values[count++] = geokey.count(); values[count++] = icounter;