UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TTypedElementOwner< ElementDataType > Struct Template Reference

#include <TypedElementHandle.h>

Public Member Functions

 TTypedElementOwner ()=default
 
 TTypedElementOwner (const TTypedElementOwner &)=delete
 
TTypedElementOwneroperator= (const TTypedElementOwner &)=delete
 
 TTypedElementOwner (TTypedElementOwner &&InOther)
 
TTypedElementOwneroperator= (TTypedElementOwner &&InOther)
 
 ~TTypedElementOwner ()
 
 operator bool () const
 
bool IsSet () const
 
const FTypedElementIdGetId () const
 
template<typename U = ElementDataType, std::enable_if_t<!std::is_void< U >::value > * = nullptr>
U * GetData () const
 
template<typename U = ElementDataType, std::enable_if_t<!std::is_void< U >::value > * = nullptr>
U & GetDataChecked () const
 
FTypedElementId AcquireId () const
 
void ReleaseId (FTypedElementId &InOutElementId) const
 
FTypedElementHandle AcquireHandle () const
 
void ReleaseHandle (FTypedElementHandle &InOutElementHandle) const
 
void Private_InitializeNoRef (TTypedElementInternalData< ElementDataType > &InData)
 
void Private_InitializeAddRef (TTypedElementInternalData< ElementDataType > &InData)
 
void Private_DestroyNoRef ()
 
void Private_DestroyReleaseRef ()
 
const TTypedElementInternalData< ElementDataType > * Private_GetInternalData () const
 

Friends

bool operator== (const TTypedElementOwner &InLHS, const TTypedElementOwner &InRHS)
 
bool operator!= (const TTypedElementOwner &InLHS, const TTypedElementOwner &InRHS)
 
uint32 GetTypeHash (const TTypedElementOwner &InElementOwner)
 

Detailed Description

template<typename ElementDataType>
struct TTypedElementOwner< ElementDataType >

A representation of the owner of an element that includes its mutable handle data. This type is returned when creating an element, and should be used to populate its internal payload data (if any).

Note
Owners do not auto-release on destruction, and must be manually destroyed via their owner element registry.

Constructor & Destructor Documentation

◆ TTypedElementOwner() [1/3]

template<typename ElementDataType >
TTypedElementOwner< ElementDataType >::TTypedElementOwner ( )
default

◆ TTypedElementOwner() [2/3]

template<typename ElementDataType >
TTypedElementOwner< ElementDataType >::TTypedElementOwner ( const TTypedElementOwner< ElementDataType > &  )
delete

◆ TTypedElementOwner() [3/3]

template<typename ElementDataType >
TTypedElementOwner< ElementDataType >::TTypedElementOwner ( TTypedElementOwner< ElementDataType > &&  InOther)
inline

◆ ~TTypedElementOwner()

template<typename ElementDataType >
TTypedElementOwner< ElementDataType >::~TTypedElementOwner ( )
inline

Member Function Documentation

◆ AcquireHandle()

template<typename ElementDataType >
FTypedElementHandle TTypedElementOwner< ElementDataType >::AcquireHandle ( ) const
inline

Acquire a copy of the handle that this element represents.

Note
This must be paired with a call to ReleaseHandle (or a call to Release on the handle instance).

◆ AcquireId()

template<typename ElementDataType >
FTypedElementId TTypedElementOwner< ElementDataType >::AcquireId ( ) const
inline

Acquire a copy of the ID that this element represents.

Note
This must be paired with a call to ReleaseId.

◆ GetData()

template<typename ElementDataType >
template<typename U = ElementDataType, std::enable_if_t<!std::is_void< U >::value > * = nullptr>
U * TTypedElementOwner< ElementDataType >::GetData ( ) const
inline

Attempt to access the mutable data stored within this owner, returning null if it isn't possible.

◆ GetDataChecked()

template<typename ElementDataType >
template<typename U = ElementDataType, std::enable_if_t<!std::is_void< U >::value > * = nullptr>
U & TTypedElementOwner< ElementDataType >::GetDataChecked ( ) const
inline

Attempt to access the mutable data stored within this owner, asserting if it isn't possible.

◆ GetId()

template<typename ElementDataType >
const FTypedElementId & TTypedElementOwner< ElementDataType >::GetId ( ) const
inline

Get the ID that this element represents.

◆ IsSet()

template<typename ElementDataType >
bool TTypedElementOwner< ElementDataType >::IsSet ( ) const
inline

Has this owner been initialized to a valid element?

◆ operator bool()

template<typename ElementDataType >
TTypedElementOwner< ElementDataType >::operator bool ( ) const
inlineexplicit

◆ operator=() [1/2]

template<typename ElementDataType >
TTypedElementOwner & TTypedElementOwner< ElementDataType >::operator= ( const TTypedElementOwner< ElementDataType > &  )
delete

◆ operator=() [2/2]

template<typename ElementDataType >
TTypedElementOwner & TTypedElementOwner< ElementDataType >::operator= ( TTypedElementOwner< ElementDataType > &&  InOther)
inline

◆ Private_DestroyNoRef()

template<typename ElementDataType >
void TTypedElementOwner< ElementDataType >::Private_DestroyNoRef ( )
inline

◆ Private_DestroyReleaseRef()

template<typename ElementDataType >
void TTypedElementOwner< ElementDataType >::Private_DestroyReleaseRef ( )
inline

◆ Private_GetInternalData()

template<typename ElementDataType >
const TTypedElementInternalData< ElementDataType > * TTypedElementOwner< ElementDataType >::Private_GetInternalData ( ) const
inline

◆ Private_InitializeAddRef()

template<typename ElementDataType >
void TTypedElementOwner< ElementDataType >::Private_InitializeAddRef ( TTypedElementInternalData< ElementDataType > &  InData)
inline

◆ Private_InitializeNoRef()

template<typename ElementDataType >
void TTypedElementOwner< ElementDataType >::Private_InitializeNoRef ( TTypedElementInternalData< ElementDataType > &  InData)
inline

◆ ReleaseHandle()

template<typename ElementDataType >
void TTypedElementOwner< ElementDataType >::ReleaseHandle ( FTypedElementHandle InOutElementHandle) const
inline

Release a copy of the handle that this element represents.

Note
This should have come from a call to AcquireHandle.

◆ ReleaseId()

template<typename ElementDataType >
void TTypedElementOwner< ElementDataType >::ReleaseId ( FTypedElementId InOutElementId) const
inline

Release a copy of the ID that this element represents.

Note
This should have come from a call to AcquireId.

Friends And Related Symbol Documentation

◆ GetTypeHash

template<typename ElementDataType >
uint32 GetTypeHash ( const TTypedElementOwner< ElementDataType > &  InElementOwner)
friend

◆ operator!=

template<typename ElementDataType >
bool operator!= ( const TTypedElementOwner< ElementDataType > &  InLHS,
const TTypedElementOwner< ElementDataType > &  InRHS 
)
friend

◆ operator==

template<typename ElementDataType >
bool operator== ( const TTypedElementOwner< ElementDataType > &  InLHS,
const TTypedElementOwner< ElementDataType > &  InRHS 
)
friend

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