UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TGrowOnlyLockFreeHash< EntryType, KeyType, ValueType > Class Template Reference

#include <GrowOnlyLockFreeHash.h>

Public Member Functions

 TGrowOnlyLockFreeHash (FMalloc *InMalloc)
 
 ~TGrowOnlyLockFreeHash ()
 
void Reserve (int32 Count)
 
void Find (KeyType Key, ValueType *OutValue, bool *bIsAlreadyInTable=nullptr) const
 
void Emplace (KeyType Key, ValueType Value, bool *bIsAlreadyInTable=nullptr)
 
void FindOrAdd (KeyType Key, ValueType Value, bool *bIsAlreadyInTable=nullptr)
 

Constructor & Destructor Documentation

◆ TGrowOnlyLockFreeHash()

template<typename EntryType , typename KeyType , typename ValueType >
TGrowOnlyLockFreeHash< EntryType, KeyType, ValueType >::TGrowOnlyLockFreeHash ( FMalloc InMalloc)
inline

◆ ~TGrowOnlyLockFreeHash()

template<typename EntryType , typename KeyType , typename ValueType >
TGrowOnlyLockFreeHash< EntryType, KeyType, ValueType >::~TGrowOnlyLockFreeHash ( )
inline

Member Function Documentation

◆ Emplace()

template<typename EntryType , typename KeyType , typename ValueType >
void TGrowOnlyLockFreeHash< EntryType, KeyType, ValueType >::Emplace ( KeyType  Key,
ValueType  Value,
bool bIsAlreadyInTable = nullptr 
)
inline

Add an entry with the given Key to the hash table, will do nothing if the item already exists

Parameters
Key- Key to add
Value- Value to add for key
bIsAlreadyInTable– Optional result for whether item was already in table

◆ Find()

template<typename EntryType , typename KeyType , typename ValueType >
void TGrowOnlyLockFreeHash< EntryType, KeyType, ValueType >::Find ( KeyType  Key,
ValueType *  OutValue,
bool bIsAlreadyInTable = nullptr 
) const
inline

Find an entry in the hash table

Parameters
Key- Key to search for
OutValue- Memory location to write result value to. Left unmodified if Key isn't found.
bIsAlreadyInTable- Optional result for whether key was found in table.

◆ FindOrAdd()

template<typename EntryType , typename KeyType , typename ValueType >
void TGrowOnlyLockFreeHash< EntryType, KeyType, ValueType >::FindOrAdd ( KeyType  Key,
ValueType  Value,
bool bIsAlreadyInTable = nullptr 
)
inline

◆ Reserve()

template<typename EntryType , typename KeyType , typename ValueType >
void TGrowOnlyLockFreeHash< EntryType, KeyType, ValueType >::Reserve ( int32  Count)
inline

Preallocate the hash table to a certain size

Parameters
Count- Number of EntryType elements to allocate
Warning
Can only be called once, and only before any items have been added!

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