UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Attribute.h File Reference

Go to the source code of this file.

Classes

class  TAttribute< ObjectType >
 

Functions

template<typename T , typename SourceType , typename SourceTypeOrBase , typename... PayloadTypes>
UE_FORCEINLINE_HINT TAttribute< T > MakeAttributeRaw (const SourceType *InObject, T(SourceTypeOrBase::*InMethod)(PayloadTypes...) const, typename TDecay< PayloadTypes >::Type... InputPayload)
 
template<typename T , typename SourceType , typename SourceTypeOrBase , typename... PayloadTypes>
UE_FORCEINLINE_HINT TAttribute< T > MakeAttributeSP (const SourceType *InObject, T(SourceTypeOrBase::*InMethod)(PayloadTypes...) const, typename TDecay< PayloadTypes >::Type... InputPayload)
 
template<typename T , typename SourceType , typename SourceTypeOrBase , typename... PayloadTypes>
UE_FORCEINLINE_HINT TAttribute< T > MakeAttributeSP (TSharedRef< SourceType > InObject, T(SourceTypeOrBase::*InMethod)(PayloadTypes...) const, typename TDecay< PayloadTypes >::Type... InputPayload)
 
template<typename T , typename SourceType , typename SourceTypeOrBase , typename... PayloadTypes>
UE_FORCEINLINE_HINT TAttribute< T > MakeAttributeUObject (const SourceType *InObject, T(SourceTypeOrBase::*InMethod)(PayloadTypes...) const, typename TDecay< PayloadTypes >::Type... InputPayload)
 
template<typename LambdaType , typename... PayloadTypes>
decltype(autoMakeAttributeLambda (LambdaType &&InCallable, PayloadTypes &&... InputPayload)
 
template<typename UserClass , ESPMode Mode, typename LambdaType , typename... PayloadTypes>
decltype(autoMakeAttributeSPLambda (const TSharedRef< UserClass, Mode > &InUserObjectRef, LambdaType &&InCallable, PayloadTypes &&... InputPayload)
 
template<typename UserClass , typename LambdaType , typename... PayloadTypes>
decltype(autoMakeAttributeSPLambda (UserClass *InUserObject, LambdaType &&InCallable, PayloadTypes &&... InputPayload)
 
template<typename UserClass , typename LambdaType , typename... PayloadTypes>
decltype(autoMakeAttributeWeakLambda (UserClass *InUserObject, LambdaType &&InCallable, PayloadTypes &&... InputPayload)
 

Function Documentation

◆ MakeAttributeLambda()

template<typename LambdaType , typename... PayloadTypes>
decltype(auto) MakeAttributeLambda ( LambdaType &&  InCallable,
PayloadTypes &&...  InputPayload 
)

Helper function for creating TAttributes from a lambda TAttribute<float> FloatAttribute = MakeAttributeLambda([]{ return 10.f; });

◆ MakeAttributeRaw()

template<typename T , typename SourceType , typename SourceTypeOrBase , typename... PayloadTypes>
UE_FORCEINLINE_HINT TAttribute< T > MakeAttributeRaw ( const SourceType *  InObject,
T(SourceTypeOrBase::*)(PayloadTypes...) const  InMethod,
typename TDecay< PayloadTypes >::Type...  InputPayload 
)

Helper function for creating TAttributes from a const member function pointer, accessed through a raw pointer

◆ MakeAttributeSP() [1/2]

template<typename T , typename SourceType , typename SourceTypeOrBase , typename... PayloadTypes>
UE_FORCEINLINE_HINT TAttribute< T > MakeAttributeSP ( const SourceType *  InObject,
T(SourceTypeOrBase::*)(PayloadTypes...) const  InMethod,
typename TDecay< PayloadTypes >::Type...  InputPayload 
)

Helper function for creating TAttributes from a const member function pointer, accessed through a weak pointer to the shared object

◆ MakeAttributeSP() [2/2]

template<typename T , typename SourceType , typename SourceTypeOrBase , typename... PayloadTypes>
UE_FORCEINLINE_HINT TAttribute< T > MakeAttributeSP ( TSharedRef< SourceType >  InObject,
T(SourceTypeOrBase::*)(PayloadTypes...) const  InMethod,
typename TDecay< PayloadTypes >::Type...  InputPayload 
)

◆ MakeAttributeSPLambda() [1/2]

template<typename UserClass , ESPMode Mode, typename LambdaType , typename... PayloadTypes>
decltype(auto) MakeAttributeSPLambda ( const TSharedRef< UserClass, Mode > &  InUserObjectRef,
LambdaType &&  InCallable,
PayloadTypes &&...  InputPayload 
)

Helper function for creating TAttributes from a weak shared pointer C++ lambda delegate

◆ MakeAttributeSPLambda() [2/2]

template<typename UserClass , typename LambdaType , typename... PayloadTypes>
decltype(auto) MakeAttributeSPLambda ( UserClass *  InUserObject,
LambdaType &&  InCallable,
PayloadTypes &&...  InputPayload 
)

◆ MakeAttributeUObject()

template<typename T , typename SourceType , typename SourceTypeOrBase , typename... PayloadTypes>
UE_FORCEINLINE_HINT TAttribute< T > MakeAttributeUObject ( const SourceType *  InObject,
T(SourceTypeOrBase::*)(PayloadTypes...) const  InMethod,
typename TDecay< PayloadTypes >::Type...  InputPayload 
)

◆ MakeAttributeWeakLambda()

template<typename UserClass , typename LambdaType , typename... PayloadTypes>
decltype(auto) MakeAttributeWeakLambda ( UserClass *  InUserObject,
LambdaType &&  InCallable,
PayloadTypes &&...  InputPayload 
)

Helper function for creating TAttributes from a weak object pointer C++ lambda delegate