Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | 72x 72x 72x 69x 1x 1x 1x 72x 72x 72x 71x | import { DecodeContext } from '../decode';
import { FloatQuality } from '../types';
function decodeFloatQuality(context: DecodeContext): FloatQuality {
const { reader } = context;
const quality = reader.readUint8();
switch (quality) {
case 0:
return 'double';
case 1:
return 'single';
case 2:
return reader.readUintVar();
default:
throw `Unexpected float quality: ${quality}`;
}
}
export function decodeHeader(context: DecodeContext) {
const { reader } = context;
const version = reader.readUintVar();
const floatQuality = decodeFloatQuality(context);
Object.assign(context, { version, floatQuality });
}
|