UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType > Class Template Reference

#include <ConcurrentLinearAllocator.h>

Public Member Functions

 ForElementType ()=default
 
 ~ForElementType ()
 
void MoveToEmpty (ForElementType &Other)
 
ElementType * GetAllocation () const
 
void ResizeAllocation (SizeType CurrentNum, SizeType NewMax, SIZE_T NumBytesPerElement)
 
SizeType CalculateSlackReserve (SizeType NewMax, SIZE_T NumBytesPerElement) const
 
SizeType CalculateSlackShrink (SizeType NewMax, SizeType CurrentMax, SIZE_T NumBytesPerElement) const
 
SizeType CalculateSlackGrow (SizeType NewMax, SizeType CurrentMax, SIZE_T NumBytesPerElement) const
 
SIZE_T GetAllocatedSize (SizeType CurrentMax, SIZE_T NumBytesPerElement) const
 
bool HasAllocation () const
 
SizeType GetInitialCapacity () const
 

Constructor & Destructor Documentation

◆ ForElementType()

template<typename ElementType >
TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::ForElementType ( )
default

◆ ~ForElementType()

template<typename ElementType >
TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::~ForElementType ( )
inline

Member Function Documentation

◆ CalculateSlackGrow()

template<typename ElementType >
SizeType TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::CalculateSlackGrow ( SizeType  NewMax,
SizeType  CurrentMax,
SIZE_T  NumBytesPerElement 
) const
inline

◆ CalculateSlackReserve()

template<typename ElementType >
SizeType TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::CalculateSlackReserve ( SizeType  NewMax,
SIZE_T  NumBytesPerElement 
) const
inline

◆ CalculateSlackShrink()

template<typename ElementType >
SizeType TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::CalculateSlackShrink ( SizeType  NewMax,
SizeType  CurrentMax,
SIZE_T  NumBytesPerElement 
) const
inline

◆ GetAllocatedSize()

template<typename ElementType >
SIZE_T TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::GetAllocatedSize ( SizeType  CurrentMax,
SIZE_T  NumBytesPerElement 
) const
inline

◆ GetAllocation()

template<typename ElementType >
ElementType * TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::GetAllocation ( ) const
inline

◆ GetInitialCapacity()

template<typename ElementType >
SizeType TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::GetInitialCapacity ( ) const
inline

◆ HasAllocation()

template<typename ElementType >
bool TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::HasAllocation ( ) const
inline

◆ MoveToEmpty()

template<typename ElementType >
void TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::MoveToEmpty ( ForElementType< ElementType > &  Other)
inline

Moves the state of another allocator into this one. Assumes that the allocator is currently empty, i.e. memory may be allocated but any existing elements have already been destructed (if necessary).

Parameters
Other- The allocator to move the state from. This allocator should be left in a valid empty state.

◆ ResizeAllocation()

template<typename ElementType >
void TLinearArrayAllocatorBase< BlockAllocationTag, ThreadPolicy >::ForElementType< ElementType >::ResizeAllocation ( SizeType  CurrentNum,
SizeType  NewMax,
SIZE_T  NumBytesPerElement 
)
inline

The documentation for this class was generated from the following file: