UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CoreAsyncTaskNotificationImpl.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Containers/Array.h"
10#include "Misc/Attribute.h"
11#include "Templates/Function.h"
13#include "Templates/Tuple.h"
14#include "UObject/NameTypes.h"
15
16struct FLogCategoryBase;
17
22{
23public:
24 virtual ~IAsyncTaskNotificationImpl() = default;
25
30
34 virtual void SetTitleText(const FText& InTitleText, const bool bClearProgressText) = 0;
35
39 virtual void SetProgressText(const FText& InProgressText) = 0;
40
44 virtual void SetPromptText(const FText& InPromptText) = 0;
45
50
54 virtual void SetComplete(const bool bSuccess) = 0;
55
59 virtual void SetComplete(const FText& InTitleText, const FText& InProgressText, const bool bSuccess) = 0;
60
65
69 virtual void SetCanCancel(const TAttribute<bool>& InCanCancel) = 0;
70
75
80
86};
87
92{
93public:
96
97 //~ IAsyncTaskNotificationImpl
98 CORE_API virtual void Initialize(const FAsyncTaskNotificationConfig& InConfig) override;
99 CORE_API virtual void SetTitleText(const FText& InTitleText, const bool bClearProgressText) override;
100 CORE_API virtual void SetProgressText(const FText& InProgressText) override;
101 CORE_API virtual void SetPromptText(const FText& InPromptText) override;
102 CORE_API virtual void SetHyperlink(const FSimpleDelegate& InHyperlink, const FText& InHyperlinkText) override;
103 CORE_API virtual void SetComplete(const bool bSuccess) override;
104 CORE_API virtual void SetComplete(const FText& InTitleText, const FText& InProgressText, const bool bSuccess) override;
106 CORE_API virtual void SetCanCancel(const TAttribute<bool>& InCanCancel) override;
110
111protected:
113 CORE_API virtual void UpdateNotification();
114
117
120
123
126
129
132private:
134 void LogNotification();
135
137 const FLogCategoryBase* LogCategory = nullptr;
138
140 mutable FCriticalSection SynchronizationObject;
141};
142
147{
149
150public:
153
158
162 CORE_API void RegisterFactory(const FName InName, const FFactoryFunc& InFunc);
163
167 CORE_API void UnregisterFactory(const FName InName);
168
169private:
173 CORE_API FImplPointerType InvokeFactory() const;
174
177};
EAsyncTaskNotificationState
Definition AsyncTaskNotification.h:56
EAsyncTaskNotificationPromptAction
Definition AsyncTaskNotification.h:65
bool bSuccess
Definition ConvexDecomposition3.cpp:819
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
Definition CoreAsyncTaskNotificationImpl.h:147
CORE_API void RegisterFactory(const FName InName, const FFactoryFunc &InFunc)
Definition CoreAsyncTaskNotificationImpl.cpp:200
CORE_API void UnregisterFactory(const FName InName)
Definition CoreAsyncTaskNotificationImpl.cpp:206
TFunction< FImplPointerType()> FFactoryFunc
Definition CoreAsyncTaskNotificationImpl.h:152
static CORE_API FAsyncTaskNotificationFactory & Get()
Definition CoreAsyncTaskNotificationImpl.cpp:194
TSharedPtr< IAsyncTaskNotificationImpl > FImplPointerType
Definition CoreAsyncTaskNotificationImpl.h:151
Definition AsyncTaskNotification.h:114
Definition CoreAsyncTaskNotificationImpl.h:92
virtual CORE_API void SetHyperlink(const FSimpleDelegate &InHyperlink, const FText &InHyperlinkText) override
Definition CoreAsyncTaskNotificationImpl.cpp:60
FText HyperlinkText
Definition CoreAsyncTaskNotificationImpl.h:131
virtual CORE_API ~FCoreAsyncTaskNotificationImpl()
Definition CoreAsyncTaskNotificationImpl.cpp:15
virtual CORE_API void SetPromptText(const FText &InPromptText) override
Definition CoreAsyncTaskNotificationImpl.cpp:52
virtual CORE_API EAsyncTaskNotificationPromptAction GetPromptAction() const override
Definition CoreAsyncTaskNotificationImpl.cpp:123
virtual CORE_API void SetCanCancel(const TAttribute< bool > &InCanCancel) override
Definition CoreAsyncTaskNotificationImpl.cpp:111
virtual CORE_API void SetProgressText(const FText &InProgressText) override
Definition CoreAsyncTaskNotificationImpl.cpp:44
FText PromptText
Definition CoreAsyncTaskNotificationImpl.h:125
FText ProgressText
Definition CoreAsyncTaskNotificationImpl.h:122
virtual CORE_API void SetComplete(const bool bSuccess) override
Definition CoreAsyncTaskNotificationImpl.cpp:70
virtual CORE_API void UpdateNotification()
Definition CoreAsyncTaskNotificationImpl.cpp:128
virtual CORE_API void SetNotificationState(const FAsyncNotificationStateData &InState) override
Definition CoreAsyncTaskNotificationImpl.cpp:89
virtual CORE_API void SetKeepOpenOnFailure(const TAttribute< bool > &InKeepOpenOnFailure) override
Definition CoreAsyncTaskNotificationImpl.cpp:119
FText TitleText
Definition CoreAsyncTaskNotificationImpl.h:119
EAsyncTaskNotificationState State
Definition CoreAsyncTaskNotificationImpl.h:116
CORE_API FCoreAsyncTaskNotificationImpl()
Definition CoreAsyncTaskNotificationImpl.cpp:10
virtual CORE_API void SetTitleText(const FText &InTitleText, const bool bClearProgressText) override
Definition CoreAsyncTaskNotificationImpl.cpp:31
FSimpleDelegate Hyperlink
Definition CoreAsyncTaskNotificationImpl.h:128
virtual CORE_API void SetKeepOpenOnSuccess(const TAttribute< bool > &InKeepOpenOnSuccess) override
Definition CoreAsyncTaskNotificationImpl.cpp:115
Definition NameTypes.h:617
Definition Text.h:385
Definition CoreAsyncTaskNotificationImpl.h:22
virtual void SetPromptText(const FText &InPromptText)=0
virtual void SetComplete(const FText &InTitleText, const FText &InProgressText, const bool bSuccess)=0
virtual ~IAsyncTaskNotificationImpl()=default
virtual void SetKeepOpenOnFailure(const TAttribute< bool > &InKeepOpenOnFailure)=0
virtual void SetHyperlink(const FSimpleDelegate &InHyperlink, const FText &InHyperlinkText)=0
virtual EAsyncTaskNotificationPromptAction GetPromptAction() const =0
virtual void SetProgressText(const FText &InProgressText)=0
virtual void SetKeepOpenOnSuccess(const TAttribute< bool > &InKeepOpenOnSuccess)=0
virtual void SetComplete(const bool bSuccess)=0
virtual void SetNotificationState(const FAsyncNotificationStateData &InState)=0
virtual void SetTitleText(const FText &InTitleText, const bool bClearProgressText)=0
virtual void SetCanCancel(const TAttribute< bool > &InCanCancel)=0
virtual void Initialize(const FAsyncTaskNotificationConfig &InConfig)=0
Definition Array.h:670
Definition Attribute.h:17
Definition AndroidPlatformMisc.h:14
Definition SharedPointer.h:692
Definition AsyncTaskNotification.h:80
Definition AsyncTaskNotification.h:20
Definition LogCategory.h:21