readUint24 method
Read a 24-bit unsigned int at the given position within the file.
Implementation
int readUint24(int position, [int? fileSize]) {
if (position > (_fileSize - 3) || position < 0) {
return 0;
}
if (position < _position || position >= (_position + (_bufferSize - 3))) {
_readBuffer(position, fileSize ?? _fileSize);
}
var p = position - _position;
final b1 = _buffer![p++];
final b2 = _buffer![p++];
final b3 = _buffer![p++];
if (byteOrder == ByteOrder.bigEndian) {
return b3 | (b2 << 8) | (b1 << 16);
}
return b1 | (b2 << 8) | (b3 << 16);
}