Navigation
API > API/Runtime > API/Runtime/Core
Dynamic multi-cast delegate template class (UObject-based, serializable). You'll use the various DECLARE_DYNAMIC_MULTICAST_DELEGATE macros to create the actual delegate type, templated to the function signature the delegate is compatible with. Then, you can create an instance of that class when you want to assign functions to the delegate.
| Name | TDynamicMulticastDelegate< RetValType(ParamTypes...), ThreadSafetyMode > |
| Type | class |
| Header File | /Engine/Source/Runtime/Core/Public/Delegates/DelegateSignatureImpl.inl |
| Include Path | #include "Delegates/DelegateSignatureImpl.inl" |
Syntax
template<typename RetValType, typename... ParamTypes, typename ThreadSafetyMode>
class TDynamicMulticastDelegate< RetValType, ThreadSafetyMode > : public TMulticastScriptDelegate< ThreadSafetyMode >
Inheritance Hierarchy
- TDelegateAccessHandlerBase → TMulticastScriptDelegate → TDynamicMulticastDelegate< RetValType(ParamTypes...), ThreadSafetyMode >
Typedefs
| Name | Type | Remarks | Include Path | | --- | --- | --- | --- |Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void __Internal_AddDynamic
(
UserClass* InUserObject, |
Binds a UObject instance and a UObject method address to this multi-cast delegate. | ||
void __Internal_AddDynamic
(
TObjectPtr< UserClass > InUserObject, |
|||
void __Internal_AddDynamic
(
UserClass* InUserObject, |
|||
void __Internal_AddDynamic
(
TObjectPtr< UserClass > InUserObject, |
|||
void __Internal_AddUniqueDynamic
(
UserClass* InUserObject, |
|||
void __Internal_AddUniqueDynamic
(
UserClass* InUserObject, |
Binds a UObject instance and a UObject method address to this multi-cast delegate, but only if it hasn't been bound before. | ||
void __Internal_AddUniqueDynamic
(
TObjectPtr< UserClass > InUserObject, |
|||
void __Internal_AddUniqueDynamic
(
TObjectPtr< UserClass > InUserObject, |
|||
bool __Internal_IsAlreadyBound
(
TObjectPtr< UserClass > InUserObject, |
|||
bool __Internal_IsAlreadyBound
(
UserClass* InUserObject, |
Tests if a UObject instance and a UObject method address pair are already bound to this multi-cast delegate. | ||
bool __Internal_IsAlreadyBound
(
TObjectPtr< UserClass > InUserObject, |
|||
bool __Internal_IsAlreadyBound
(
UserClass* InUserObject, |
|||
void __Internal_RemoveDynamic
(
TObjectPtr< UserClass > InUserObject, |
|||
void __Internal_RemoveDynamic
(
UserClass* InUserObject, |
|||
void __Internal_RemoveDynamic
(
TObjectPtr< UserClass > InUserObject, |
|||
void __Internal_RemoveDynamic
(
UserClass* InUserObject, |
Unbinds a UObject instance and a UObject method address from this multi-cast delegate. | ||
void Broadcast
(
UE::Core::Private::TDelegateCallTraits_T< ParamTypes >... Params |
Broadcasts this delegate to all bound objects, except to those that may have expired | ||
| Default constructor | |||
TDynamicMulticastDelegate
(
const TMulticastScriptDelegate< ThreadSafetyMode >& InMulticastScriptDelegate |
Construction from an FMulticastScriptDelegate must be explicit. |