21template<
typename InElementType, u
int32 ElementsPerChunk = 100,
typename AllocatorType = FDefaultAllocator>
43 FMemory::Memset<typename Super::FChunk>(*CurrentChunk, 0);
79 InvalidatePreAllocatedChunks();
97 checkf(
false,
TEXT(
"This function is not supported"));
102 checkf(
false,
TEXT(
"This function is not supported"));
116 this->
Add(NewElementCount);
132 FMemory::Memset<typename Super::FChunk>(*this->
Chunks.
GetData()[ChunkIndex], 0);
148 void InvalidatePreAllocatedChunks()
154 FirstChunk = (FirstChunk ==
nullptr) ? this->
Chunks.
GetData()[ChunkIndex] : FirstChunk;
171 InvalidatePreAllocatedChunks();
174 this->NumPreAllocatedChunks =
ChunkedArray.NumPreAllocatedChunks;
187 *CurrentChunk = *
ChunkedArray.Chunks.GetData()[ChunkIndex];
193 for (
int32 ChunkIndex = this->NumPreAllocatedChunks; ChunkIndex <
NumChunks; ChunkIndex++)
195 const typename Super::FChunk* CurrentChunk =
ChunkedArray.Chunks.GetData()[ChunkIndex];
197 this->
Chunks.
Add(
new typename Super::FChunk(*CurrentChunk));
201 void MoveIncludingPreAllocatedChunks(TNetChunkedArray&
ChunkedArray)
205 this->NumPreAllocatedChunks =
ChunkedArray.NumPreAllocatedChunks;
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition ChunkedArray.h:56
ChunksType Chunks
Definition ChunkedArray.h:338
int32 NumElements
Definition ChunkedArray.h:341
TIndirectArray< FChunk, AllocatorType > ChunksType
Definition ChunkedArray.h:337
@ NumElementsPerChunk
Definition ChunkedArray.h:327
UE_FORCEINLINE_HINT int32 Num() const
Definition IndirectArray.h:94
UE_FORCEINLINE_HINT int32 Add(T *Item)
Definition IndirectArray.h:374
void Empty(int32 Slack=0)
Definition IndirectArray.h:361
UE_FORCEINLINE_HINT T ** GetData()
Definition IndirectArray.h:104
Definition NetChunkedArray.h:23
int32 NumPreAllocatedChunks
Definition NetChunkedArray.h:138
void Reset(int32 NewSize=0)
Definition NetChunkedArray.h:100
int32 Capacity() const
Definition NetChunkedArray.h:90
TNetChunkedArray & operator=(TNetChunkedArray &&OtherChunkedArray)
Definition NetChunkedArray.h:68
TNetChunkedArray & operator=(const TNetChunkedArray &OtherChunkedArray)
Definition NetChunkedArray.h:57
TNetChunkedArray(int32 InNumElements=0, EInitMemory InitMemory=EInitMemory::Constructor)
Definition NetChunkedArray.h:28
~TNetChunkedArray()
Definition NetChunkedArray.h:77
TNetChunkedArray(TNetChunkedArray &&OtherChunkedArray)
Definition NetChunkedArray.h:63
void AddToIndexUninitialized(int32 Index)
Definition NetChunkedArray.h:111
void AddToIndexZeroed(int32 Index)
Definition NetChunkedArray.h:126
void Empty(int32 Slack=0)
Definition NetChunkedArray.h:95
int32 NumChunks() const
Definition NetChunkedArray.h:82
TNetChunkedArray(const TNetChunkedArray &OtherChunkedArray)
Definition NetChunkedArray.h:52
Definition NetworkVersion.cpp:28
EInitMemory
Definition NetChunkedArray.h:12
U16 Index
Definition radfft.cpp:71
Definition ChunkedArray.h:331