| /** | |
| * Reads as Big endian | |
| * @param dataArray {IndexedByteArray} | |
| * @param bytesAmount {number} | |
| * @returns {number} | |
| */ | |
| export function readBytesAsUintBigEndian(dataArray, bytesAmount) | |
| { | |
| let out = 0; | |
| for (let i = 8 * (bytesAmount - 1); i >= 0; i -= 8) | |
| { | |
| out |= (dataArray[dataArray.currentIndex++] << i); | |
| } | |
| return out >>> 0; | |
| } | |
| /** | |
| * @param number {number} | |
| * @param bytesAmount {number} | |
| * @returns {number[]} | |
| */ | |
| export function writeBytesAsUintBigEndian(number, bytesAmount) | |
| { | |
| const bytes = new Array(bytesAmount).fill(0); | |
| for (let i = bytesAmount - 1; i >= 0; i--) | |
| { | |
| bytes[i] = number & 0xFF; | |
| number >>= 8; | |
| } | |
| return bytes; | |
| } |