5#include "Containers/Array.h"
7#include "Math/UnrealMathUtility.h"
8#include "Misc/AssertionMacros.h"
10#include "Serialization/BitArchive.h"
15
16
30
31
44
45
46
47
48
54
55
56
57
58
59
63 virtual void Serialize(
void* Src, int64 LengthBytes )
override;
66
67
75 return Buffer.GetData();
85 return Buffer.GetData();
99
100
107
108
115
116
123
124
125
126
130
131
150 Max = FMath::Max<int64>(Max<<1,Num+LengthBits);
151 int64 ByteMax = (
Max+7)>>3;
152 Buffer.AddZeroed((int32)(ByteMax - Buffer.Num()));
153 check((Max+7)>>3== Buffer.Num());
170
171
176 Num = (
Num + 7 ) & ( ~0x07 );
#define UE_BUILD_SHIPPING
#define FORCEINLINE_DEBUGGABLE
FORCEINLINE bool IsError() const
virtual void CountMemory(FArchive &Ar) const
FORCEINLINE uint8 * GetData(void)
FORCEINLINE const TArray< uint8 > * GetBuffer(void) const
FBitWriter(const FBitWriter &)=default
virtual void SerializeBitsWithOffset(void *Src, int32 SourceBit, int64 LengthBits) override
virtual void SerializeIntPacked(uint32 &Value) override
FORCEINLINE int64 GetNumBits(void) const
FORCEINLINE bool AllowAppend(int64 LengthBits)
FORCEINLINE int64 GetNumBytes(void) const
virtual void Serialize(void *Src, int64 LengthBytes) override
void SetOverflowed(int32 LengthBits)
FORCEINLINE void SetAllowResize(bool NewResize)
FBitWriter(FBitWriter &&)=default
FBitWriter(int64 InMaxBits, bool AllowResize=false)
FORCEINLINE void WriteAlign()
FORCEINLINE const uint8 * GetData(void) const
FBitWriter & operator=(FBitWriter &&)=default
FBitWriter & operator=(const FBitWriter &)=default
virtual void SerializeBits(void *Src, int64 LengthBits) override
void WriteIntWrapped(uint32 Value, uint32 ValueMax)
FORCEINLINE int64 GetMaxBits(void) const
virtual void SerializeInt(uint32 &Value, uint32 Max) override
FORCEINLINE void SetAllowOverflow(bool bInAllow)
FORCEINLINE_DEBUGGABLE void PopWithoutClear(FBitWriter &Writer)
FORCEINLINE_DEBUGGABLE void Init(FBitWriter &Writer)
FBitWriterMark(FBitWriter &Writer)
void Copy(FBitWriter &Writer, TArray< uint8 > &Buffer)
void Pop(FBitWriter &Writer)
FORCEINLINE_DEBUGGABLE int64 GetNumBits() const