UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
StaticMeshCompiler.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"
7
8#if WITH_EDITOR
9
11class UStaticMesh;
12class UPrimitiveComponent;
13class UStaticMeshComponent;
16enum class EQueuedWorkPriority : uint8;
17
18class FStaticMeshCompilingManager : IAssetCompilingManager
19{
20public:
22 {
30
32 };
33
34 ENGINE_API static FStaticMeshCompilingManager& Get();
35
40
45
50
55
60
65
69 ENGINE_API void FinishAllCompilation() override;
70
74 ENGINE_API bool IsAsyncCompilationAllowed(UStaticMesh* InStaticMesh) const;
75
80
84 ENGINE_API FQueuedThreadPool* GetThreadPool() const;
85
89 ENGINE_API void Shutdown() override;
90
92 ENGINE_API static FName GetStaticAssetTypeName();
93
94private:
95 friend class FAssetCompilingManager;
96
97 FStaticMeshCompilingManager();
98
99 FName GetAssetTypeName() const override;
100 FTextFormat GetAssetNameFormat() const override;
102 int32 GetNumRemainingAssets() const override;
103
105 void ProcessAsyncTasks(bool bLimitExecutionTime = false) override;
106
109
112
113 bool bHasShutdown = false;
118
120 void Reschedule();
121 void ProcessStaticMeshes(bool bLimitExecutionTime, int32 MinBatchSize = 1);
123
127
128 void OnPostReachabilityAnalysis();
129 FDelegateHandle PostReachabilityAnalysisHandle;
130};
131
132#endif // #if WITH_EDITOR
133
134#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_4
135#include "CoreMinimal.h"
138#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 StaticMesh.h:593
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 MarkCompilationAsCanceled(TArrayView< UObject *const > InObjects)
Definition IAssetCompilingManager.h:59
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