/** * Positions the overlay structure. This reads the cached data only when it was not previously set * by the constructor. */ public void overlay(byte[] rawBytes, int offset) { rawBytes_ = rawBytes; offset_ = offset; if (numberOfFields_ == -1) { numberOfFields_ = BinaryConverter.byteArrayToShort(rawBytes_, offset + 4); length_ = 8 + numberOfFields_ * REPEATED_LENGTH_; } else { setNumberOfFields(numberOfFields_); } }
public int getFieldScale(int fieldIndex) { return BinaryConverter.byteArrayToShort( rawBytes_, offset_ + 14 + (fieldIndex * REPEATED_LENGTH_)); }
public int getRecordSize() { return BinaryConverter.byteArrayToShort(rawBytes_, offset_ + 6); }
public int getFieldNameLength(int fieldIndex) { return BinaryConverter.byteArrayToShort( rawBytes_, offset_ + 28 + (fieldIndex * REPEATED_LENGTH_)); }