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

#include <TypedElementHandle.h>

+ Inheritance diagram for TTypedElementBase< BaseInterfaceType >:

Public Member Functions

 TTypedElementBase ()=default
 
 TTypedElementBase (const TTypedElementBase &)=default
 
TTypedElementBaseoperator= (const TTypedElementBase &)=default
 
 TTypedElementBase (TTypedElementBase &&InOther)
 
TTypedElementBaseoperator= (TTypedElementBase &&InOther)
 
 ~TTypedElementBase ()
 
 operator bool () const
 
bool IsSet () const
 
void Release ()
 
BaseInterfaceTypeGetInterface () const
 
template<typename U = BaseInterfaceType, std::enable_if_t<!std::is_void< U >::value > * = nullptr>
U & GetInterfaceChecked () const
 
void Private_InitializeNoRef (const FTypedElementInternalData &InData, BaseInterfaceType *InInterfacePtr)
 
void Private_InitializeAddRef (const FTypedElementInternalData &InData, BaseInterfaceType *InInterfacePtr)
 
void Private_DestroyNoRef ()
 
void Private_DestroyReleaseRef ()
 
- Public Member Functions inherited from FTypedElementHandle
 FTypedElementHandle ()=default
 
 FTypedElementHandle (const FTypedElementHandle &InOther)
 
FTypedElementHandleoperator= (const FTypedElementHandle &InOther)
 
 FTypedElementHandle (FTypedElementHandle &&InOther)
 
FTypedElementHandleoperator= (FTypedElementHandle &&InOther)
 
 ~FTypedElementHandle ()
 
 operator bool () const
 
bool IsSet () const
 
void Release ()
 
const FTypedElementIdGetId () const
 
template<typename ElementDataType >
bool IsDataOfType () const
 
template<typename ElementDataType >
const ElementDataType * GetData (const bool bSilent=false) const
 
template<typename ElementDataType >
const ElementDataType & GetDataChecked () const
 
FTypedElementId AcquireId () const
 
void ReleaseId (FTypedElementId &InOutElementId) const
 
void Private_InitializeNoRef (const FTypedElementInternalData &InData)
 
void Private_InitializeAddRef (const FTypedElementInternalData &InData)
 
void Private_DestroyNoRef ()
 
void Private_DestroyReleaseRef ()
 
const FTypedElementInternalDataPrivate_GetInternalData () const
 

Protected Attributes

BaseInterfaceTypeInterfacePtr = nullptr
 

Friends

bool operator== (const TTypedElementBase &InLHS, const TTypedElementBase &InRHS)
 
bool operator!= (const TTypedElementBase &InLHS, const TTypedElementBase &InRHS)
 
uint32 GetTypeHash (const TTypedElementBase &InElement)
 

Detailed Description

template<typename BaseInterfaceType>
struct TTypedElementBase< BaseInterfaceType >

Common implementation of TTypedElement that is inherited by all specializations.

Constructor & Destructor Documentation

◆ TTypedElementBase() [1/3]

◆ TTypedElementBase() [2/3]

◆ TTypedElementBase() [3/3]

◆ ~TTypedElementBase()

Member Function Documentation

◆ GetInterface()

BaseInterfaceType * TTypedElementBase< BaseInterfaceType >::GetInterface ( ) const
inline

Attempt to access the interface stored within this element, returning null if it isn't set.

◆ GetInterfaceChecked()

template<typename U = BaseInterfaceType, std::enable_if_t<!std::is_void< U >::value > * = nullptr>
U & TTypedElementBase< BaseInterfaceType >::GetInterfaceChecked ( ) const
inline

Attempt to access the interface stored within this element, asserting if it isn't set.

◆ IsSet()

bool TTypedElementBase< BaseInterfaceType >::IsSet ( ) const
inline

Has this element been initialized to a valid handle and interface?

◆ operator bool()

TTypedElementBase< BaseInterfaceType >::operator bool ( ) const
inlineexplicit

◆ operator=() [1/2]

◆ operator=() [2/2]

◆ Private_DestroyNoRef()

void TTypedElementBase< BaseInterfaceType >::Private_DestroyNoRef ( )
inline

◆ Private_DestroyReleaseRef()

void TTypedElementBase< BaseInterfaceType >::Private_DestroyReleaseRef ( )
inline

◆ Private_InitializeAddRef()

void TTypedElementBase< BaseInterfaceType >::Private_InitializeAddRef ( const FTypedElementInternalData InData,
BaseInterfaceType InInterfacePtr 
)
inline

◆ Private_InitializeNoRef()

void TTypedElementBase< BaseInterfaceType >::Private_InitializeNoRef ( const FTypedElementInternalData InData,
BaseInterfaceType InInterfacePtr 
)
inline

◆ Release()

Release this element and set it back to an empty state.

Friends And Related Symbol Documentation

◆ GetTypeHash

uint32 GetTypeHash ( const TTypedElementBase< BaseInterfaceType > &  InElement)
friend

◆ operator!=

bool operator!= ( const TTypedElementBase< BaseInterfaceType > &  InLHS,
const TTypedElementBase< BaseInterfaceType > &  InRHS 
)
friend

◆ operator==

bool operator== ( const TTypedElementBase< BaseInterfaceType > &  InLHS,
const TTypedElementBase< BaseInterfaceType > &  InRHS 
)
friend

Member Data Documentation

◆ InterfacePtr

BaseInterfaceType* TTypedElementBase< BaseInterfaceType >::InterfacePtr = nullptr
protected

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