From bb3801544a0ed1f47c7074649c81f638b48d2f25 Mon Sep 17 00:00:00 2001 From: BiSaXa <1669855+BiSaXa@users.noreply.github.com> Date: Sun, 28 Aug 2022 18:46:20 +0300 Subject: module name and other changes --- utils/utils.go | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'utils/utils.go') diff --git a/utils/utils.go b/utils/utils.go index 5226e80..6874e6b 100644 --- a/utils/utils.go +++ b/utils/utils.go @@ -1,12 +1,15 @@ package utils import ( + "bytes" "encoding/binary" "log" "math" "math/bits" "os" "unsafe" + + "github.com/32bitkid/bitreader" ) func CheckError(e error) { @@ -15,6 +18,34 @@ func CheckError(e error) { } } +func ReadBitsFromReversedByteArray1(byteArr []byte) bool { + r := bitreader.NewReader(bytes.NewBuffer(ReverseByteArrayValues(byteArr, len(byteArr)))) + value, err := r.Read1() + CheckError(err) + return value +} + +func ReadBitsFromReversedByteArray8(byteArr []byte, bitLength uint) uint8 { + r := bitreader.NewReader(bytes.NewBuffer(ReverseByteArrayValues(byteArr, len(byteArr)))) + value, err := r.Read8(bitLength) + CheckError(err) + return value +} + +func ReadBitsFromReversedByteArray16(byteArr []byte, bitLength uint) uint16 { + r := bitreader.NewReader(bytes.NewBuffer(ReverseByteArrayValues(byteArr, len(byteArr)))) + value, err := r.Read16(bitLength) + CheckError(err) + return value +} + +func ReadBitsFromReversedByteArray32(byteArr []byte, bitLength uint) uint32 { + r := bitreader.NewReader(bytes.NewBuffer(ReverseByteArrayValues(byteArr, len(byteArr)))) + value, err := r.Read32(bitLength) + CheckError(err) + return value +} + func ReverseByteArrayValues(byteArr []byte, size int) []byte { arr := make([]byte, size) for index, byteValue := range byteArr { -- cgit v1.2.3