72#if UE_WITH_REMOTE_OBJECT_HANDLE
78 const void* UserObject;
81 template<
typename UserObjectType>
86 bIsUObject = std::is_convertible_v<UserObjectType*, UObject*>;
98 return (
const UObject*)UserObject;
119#if USE_DELEGATE_TRYGETBOUNDFUNCTIONNAME
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const void * FDelegateUserObjectConst
Definition IDelegateInstance.h:108
void * FDelegateUserObject
Definition IDelegateInstance.h:107
#define UE_STATIC_ASSERT_COMPLETE_TYPE(TypeToCheck,...)
Definition StaticAssertCompleteType.h:62
Definition IDelegateInstance.h:14
EGenerateNewHandleType
Definition IDelegateInstance.h:17
@ GenerateNewHandle
Definition IDelegateInstance.h:18
void Reset()
Definition IDelegateInstance.h:40
bool operator==(const FDelegateHandle &Rhs) const
Definition IDelegateInstance.h:45
FDelegateHandle()
Definition IDelegateInstance.h:22
friend UE_FORCEINLINE_HINT uint32 GetTypeHash(const FDelegateHandle &Key)
Definition IDelegateInstance.h:55
bool IsValid() const
Definition IDelegateInstance.h:34
FDelegateHandle(EGenerateNewHandleType)
Definition IDelegateInstance.h:28
bool operator!=(const FDelegateHandle &Rhs) const
Definition IDelegateInstance.h:50
Definition NameTypes.h:617
Definition IDelegateInstance.h:112
virtual uint64 GetBoundProgramCounterForTimerManager() const =0
virtual const void * GetObjectForTimerManager() const =0
virtual bool HasSameObject(FDelegateUserObjectConst InUserObject) const =0
virtual FDelegateHandle GetHandle() const =0
virtual ~IDelegateInstance()=default
virtual UObject * GetUObject() const =0
virtual bool IsSafeToExecute() const =0
virtual bool IsCompactable() const
Definition IDelegateInstance.h:174