LeviLamina
Loading...
Searching...
No Matches
BitStream.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5namespace RakNet {
6
7class BitStream {
8public:
9 // member variables
10 // NOLINTBEGIN
11 ::ll::TypedStorage<4, 4, uint> numberOfBitsUsed;
12 ::ll::TypedStorage<4, 4, uint> numberOfBitsAllocated;
13 ::ll::TypedStorage<4, 4, uint> readOffset;
14 ::ll::TypedStorage<8, 8, uchar*> data;
15 ::ll::TypedStorage<1, 1, bool> copyData;
16 ::ll::TypedStorage<1, 256, uchar[256]> stackData;
17 // NOLINTEND
18
19public:
20 // member functions
21 // NOLINTBEGIN
22 MCAPI bool AddBitsAndReallocate(uint numberOfBitsToWrite);
23
24 MCAPI bool Read(char* outByteArray, uint numberOfBytes);
25
26 MCAPI bool ReadAlignedBytes(uchar* inOutByteArray, uint numberOfBytesToRead);
27
28 MCAPI bool ReadAlignedVar16(char* inOutByteArray);
29
30 MCAPI bool ReadAlignedVar32(char* inOutByteArray);
31
32 MCAPI bool ReadBits(uchar* inOutByteArray, uint numberOfBitsToRead, bool alignBitsToRight);
33
34 MCAPI void Write(::RakNet::BitStream* bitStream, uint numberOfBits);
35
36 MCAPI void Write(char const* inputByteArray, uint numberOfBytes);
37
38 MCAPI void WriteAlignedBytes(uchar const* inByteArray, uint numberOfBytesToWrite);
39
40 MCAPI void WriteAlignedVar16(char const* inByteArray);
41
42 MCAPI void WriteAlignedVar32(char const* inByteArray);
43
44 MCAPI void WriteBits(uchar const* inByteArray, uint numberOfBitsToWrite, bool rightAlignedBits);
45 // NOLINTEND
46};
47
48} // namespace RakNet
Definition BitStream.h:7