TDelegate< InRetValType(ParamTypes...), UserPolicy >

Inheritance Hierarchy

FDelegateExtras

TDelegate< InRetValType(ParamTypes...), UserPolicy >

References

Module

Core

Header

/Engine/Source/Runtime/Core/Public/Delegates/DelegateSignatureImpl.inl

Include

#include "Delegates/DelegateSignatureImpl.inl"

Syntax

template<typename InRetValType, typename... ParamTypes, typename UserPolicy>
class TDelegate< InRetValType(ParamTypes...), UserPolicy > : public FDelegateExtras

Functions

Name Description

Public function

void

 

BindLambda

(
    FunctorType&& InFunctor,
    VarTypes&&... Vars
)

Static: Binds a C++ lambda delegate technically this works for any functor types, but lambdas are the primary use case

Public function

void

 

BindRaw

(
    UserClass* InUserObject,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Binds a raw C++ pointer delegate.

Public function

void

 

BindRaw

(
    const UserClass* InUserObject,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function

void

 

BindSP

(
    const TSharedRef< UserClass, Mode >...,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Binds a shared pointer-based member function delegate.

Public function

void

 

BindSP

(
    const TSharedRef< UserClass, Mode >...,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function

void

 

BindSP

(
    UserClass* InUserObject,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Binds a shared pointer-based member function delegate.

Public function

void

 

BindSP

(
    const UserClass* InUserObject,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function

void

 

BindSPLambda

(
    const TSharedRef< UserClass, Mode >...,
    FunctorType&& InFunctor,
    VarTypes&&... Vars
)

Static: Binds a weak shared pointer C++ lambda delegate technically this works for any functor types, but lambdas are the primary use case

Public function

void

 

BindSPLambda

(
    const UserClass* InUserObject,
    FunctorType&& InFunctor,
    VarTypes&&... Vars
)

Public function

void

 

BindStatic

(
    typename TBaseStaticDelegateInstanc...,
    VarTypes&&... Vars
)

Binds a raw C++ pointer global function delegate

Public function

void

 

BindThreadSafeSP

(
    const UserClass* InUserObject,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function

void

 

BindThreadSafeSP

(
    const TSharedRef< UserClass, ESPMod...,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function

void

 

BindThreadSafeSP

(
    const TSharedRef< UserClass, ESPMod...,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Binds a shared pointer-based (thread-safe) member function delegate.

Public function

void

 

BindThreadSafeSP

(
    UserClass* InUserObject,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Binds a shared pointer-based (thread-safe) member function delegate.

Public function

void

 

BindUFunction

(
    TObjectPtr< UObjectTemplate > InUse...,
    const FName& InFunctionName,
    VarTypes&&... Vars
)

Public function

void

 

BindUFunction

(
    UObjectTemplate* InUserObject,
    const FName& InFunctionName,
    VarTypes&&... Vars
)

Binds a UFunction-based member function delegate.

Public function

void

 

BindUObject

(
    const UserClass* InUserObject,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function

void

 

BindUObject

(
    UserClass* InUserObject,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Binds a UObject-based member function delegate.

Public function

void

 

BindUObject

(
    TObjectPtr< UserClass > InUserObjec...,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Public function

void

 

BindUObject

(
    TObjectPtr< UserClass > InUserObjec...,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function

void

 

BindWeakLambda

(
    UserClass* InUserObject,
    FunctorType&& InFunctor,
    VarTypes&&... Vars
)

Static: Binds a weak object C++ lambda delegate technically this works for any functor types, but lambdas are the primary use case

Public function Static

TDelegate< R...

 

CreateLambda

(
    FunctorType&& InFunctor,
    VarTypes&&... Vars
)

Static: Creates a C++ lambda delegate technically this works for any functor types, but lambdas are the primary use case

Public function Static

TDelegate< R...

 

CreateRaw

(
    UserClass* InUserObject,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Static: Creates a raw C++ pointer member function delegate.

Public function Static

TDelegate< R...

 

CreateRaw

(
    const UserClass* InUserObject,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateSP

(
    UserClass* InUserObject,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Static: Creates a shared pointer-based member function delegate.

Public function Static

TDelegate< R...

 

CreateSP

(
    const TSharedRef< UserClass, Mode >...,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Static: Creates a shared pointer-based member function delegate.

Public function Static

TDelegate< R...

 

CreateSP

(
    const TSharedRef< UserClass, Mode >...,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateSP

(
    const UserClass* InUserObject,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateSPLambda

(
    const TSharedRef< UserClass, Mode >...,
    FunctorType&& InFunctor,
    VarTypes&&... Vars
)

Static: Creates a weak shared pointer C++ lambda delegate technically this works for any functor types, but lambdas are the primary use case

Public function Static

TDelegate< R...

 

CreateSPLambda

(
    UserClass* InUserObject,
    FunctorType&& InFunctor,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateStatic

(
    typename TIdentity< RetValType(*...,
    VarTypes&&... Vars
)

Static: Creates a raw C++ pointer global function delegate

Public function Static

TDelegate< R...

 

CreateThreadSafeSP

(
    const UserClass* InUserObject,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateThreadSafeSP

(
    UserClass* InUserObject,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Static: Creates a shared pointer-based (thread-safe) member function delegate.

Public function Static

TDelegate< R...

 

CreateThreadSafeSP

(
    const TSharedRef< UserClass, ESPMod...,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Static: Creates a shared pointer-based (thread-safe) member function delegate.

Public function Static

TDelegate< R...

 

CreateThreadSafeSP

(
    const TSharedRef< UserClass, ESPMod...,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateUFunction

(
    UObjectTemplate* InUserObject,
    const FName& InFunctionName,
    VarTypes&&... Vars
)

Static: Creates a UFunction-based member function delegate.

Public function Static

TDelegate< R...

 

CreateUFunction

(
    TObjectPtr< UObjectTemplate > InUse...,
    const FName& InFunctionName,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateUObject

(
    TObjectPtr< UserClass > InUserObjec...,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateUObject

(
    TObjectPtr< UserClass > InUserObjec...,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateUObject

(
    UserClass* InUserObject,
    typename TMemFunPtrType< false, Use...,
    VarTypes&&... Vars
)

Static: Creates a UObject-based member function delegate.

Public function Static

TDelegate< R...

 

CreateUObject

(
    const UserClass* InUserObject,
    typename TMemFunPtrType< true, User...,
    VarTypes&&... Vars
)

Public function Static

TDelegate< R...

 

CreateWeakLambda

(
    UserClass* InUserObject,
    FunctorType&& InFunctor,
    VarTypes&&... Vars
)

Static: Creates a weak object C++ lambda delegate technically this works for any functor types, but lambdas are the primary use case

Public function Const

RetValType

 

Execute

(
    ParamTypes... Params
)

Execute the delegate.

Public function Const

bool

 

ExecuteIfBound

(
    ParamTypes... Params
)

NOTE: Currently only delegates with no return value support ExecuteIfBound()

Protected function

DelegateInst...

 

GetDelegateInstanceProtected()

Returns a pointer to the correctly-typed delegate instance.

Protected function Const

const Delega...

 

GetDelegateInstanceProtected()

Public function

 

TDelegate

(
    const TDelegate& Other
)

Public function

 

TDelegate()

Public function

 

TDelegate

(
    TYPE_OF_NULLPTR
)

Public function

 

TDelegate

(
    TDelegate&& Other
)

Operators

Name Description

Public function

TDelegate &

 

operator=

(
    const TDelegate& Other
)

Public function

TDelegate &

 

operator=

(
    TDelegate&& Other
)

Typedefs

Name

Description

DelegateInstanceInterfaceType

FuncType

RetValType

Type definition for return value type.

Super

TConstMethodPtr

TFuncPtr

Helper typedefs for getting a member function pointer type for the delegate with a given payload

TFuncType

TMethodPtr

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Cancel