UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SkinnedAssetCompiler.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
5#include "Containers/Set.h"
6#include "Tickable.h"
7#include "Stats/Stats.h"
9
10#if WITH_EDITOR
11
13class USkinnedAsset;
14class UPrimitiveComponent;
17enum class EQueuedWorkPriority : uint8;
18
19class FSkinnedAssetCompilingManager : IAssetCompilingManager
20{
21public:
23 {
31
33 };
34
35 ENGINE_API static FSkinnedAssetCompilingManager& Get();
36
41
45 ENGINE_API int32 GetNumRemainingJobs() const;
46
51
56
61
65 ENGINE_API void FinishAllCompilation() override;
66
70 ENGINE_API bool IsAsyncCompilationAllowed(USkinnedAsset* InSkinnedAsset) const;
71
76
80 ENGINE_API FQueuedThreadPool* GetThreadPool() const;
81
85 ENGINE_API void Shutdown() override;
86
88 ENGINE_API static FName GetStaticAssetTypeName();
89
90private:
91 FSkinnedAssetCompilingManager();
92
93 FName GetAssetTypeName() const override;
94 FTextFormat GetAssetNameFormat() const override;
96 int32 GetNumRemainingAssets() const override;
97 void ProcessAsyncTasks(bool bLimitExecutionTime = false) override;
98
100
101 friend class FAssetCompilingManager;
102
103 bool bHasShutdown = false;
109 void Reschedule();
110 void ProcessSkinnedAssets(bool bLimitExecutionTime, int32 MinBatchSize = 1);
112
113 void PostCompilation(USkinnedAsset* SkinnedAsset);
116
117 void OnPostReachabilityAnalysis();
118 FDelegateHandle PostReachabilityAnalysisHandle;
119
120 void OnPreGarbageCollect();
122};
123
124#endif // #if WITH_EDITOR
125
126#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_4
127#include "CoreMinimal.h"
130#endif
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EQueuedWorkPriority
Definition QueuedThreadPool.h:14
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition AssetCompilingManager.h:44
Definition AsyncCompilationHelpers.h:14
Definition IDelegateInstance.h:14
Definition NameTypes.h:617
Definition QueuedThreadPool.h:105
Definition Text.h:278
Definition ArrayView.h:139
Definition UnrealString.h.inl:34
Definition UniquePtr.h:107
Definition SkinnedAsset.h:47
void FinishCompilation(TFunctionRef< ICompilable &(int32 Index)> Getter, int32 Num, TFunctionRef< void(ICompilable *)> PostCompileSingle)
Definition AsyncCompilationHelpers.cpp:90
FORCEINLINE T * Get(const FObjectPtr &ObjectPtr)
Definition ObjectPtr.h:426
@ false
Definition radaudio_common.h:23
Definition IAssetCompilingManager.h:25
virtual TArrayView< FName > GetDependentTypeNames() const =0
virtual int32 GetNumRemainingAssets() const =0
virtual void Shutdown()=0
virtual void ProcessAsyncTasks(bool bLimitExecutionTime=false)=0
virtual FTextFormat GetAssetNameFormat() const =0
virtual void FinishAllCompilation()=0
virtual FName GetAssetTypeName() const =0
virtual void FinishCompilationForObjects(TArrayView< UObject *const > InObjects)
Definition IAssetCompilingManager.h:51