read method

void read(
  1. LByteBuffer buffer,
  2. bool strict
)

Implementation

void read(LByteBuffer buffer, bool strict) {
  buffer.endian = Endian.big;
  fileCode = buffer.getInt32();

  checkMagic(strict);

  // skip 5 ints...
  buffer.skip(20);

  fileLength = buffer.getInt32();

  buffer.endian = Endian.little;
  version = buffer.getInt32();
  checkVersion(strict);
  shapeType = ShapeType.forID(buffer.getInt32());

  minX = buffer.getDouble64();
  minY = buffer.getDouble64();
  maxX = buffer.getDouble64();
  maxY = buffer.getDouble64();

  // skip remaining unused bytes
  // file.order(ByteOrder.BIG_ENDIAN); // well they may not be unused
  // forever...
  buffer.endian = Endian.big;
  buffer.skip(32);
}