13#include "Containers/Set.h"
20#include "WorldPartitionStreamingPolicy.generated.h"
66 bool bBlockOnSlowStreaming =
false;
68 bool bUpdateServerEpoch =
false;
99 virtual void UpdateStreamingState();
102 virtual void DrawRuntimeHash3D();
111 UE_DEPRECATED(5.3,
"CanAddLoadedLevelToWorld is deprecated.")
122 UE_DEPRECATED(5.4,
"Use StoreStreamingContentToExternalStreamingObject instead.")
128#if !UE_BUILD_SHIPPING
140 static bool IsUpdateStreamingOptimEnabled();
155 UE_DEPRECATED(5.6,
"Use version that also sets if streaming should block on slow loading")
164 enum class EAsyncUpdateTaskState
171 struct FUpdateStreamingStateParams
178 const bool bCanStream;
179 const bool bIsServer;
180 const bool bIsStreamingInEnabled;
181 const bool bIsServerStreamingEnabled;
182 const bool bIsServerStreamingOutEnabled;
183 const bool bIsBlockingCausedByBadStreamingPerformance;
184 const bool bIsPlaybackEnabled;
185 const bool bMatchStarted;
186 const bool bShouldMergeStreamingSourceInfo;
187 const int32 PolicyUpdateStreamingStateEpoch;
189 const FTransform WorldPartitionInstanceTransform;
191 const TSet<FName>& ServerDisallowedStreamingOutDataLayers;
196 const FWorldDataLayersEffectiveStates& GetWorldDataLayersEffectiveStates()
const {
return WorldDataLayersEffectiveStatesCopy.Get(WorldDataLayersEffectiveStatesRef); }
204 int32 ComputeServerStreamingEnabledEpoch()
const;
206 void OnStreamingStateUpdated();
207 void OnPreChangeStreamingContent();
208 bool WaitForAsyncUpdateStreamingState();
210 const TSet<FName>& GetServerDisallowedStreamingOutDataLayers()
const;
223 bool bCurrentBlockOnSlowStreaming;
238 bool bShouldMergeStreamingSourceInfo;
240 bool bCriticalPerformanceRequestedBlockTillOnWorld;
241 int32 CriticalPerformanceBlockTillLevelStreamingCompletedEpoch;
242 int32 ProcessedToLoadCells;
243 int32 ProcessedToActivateCells;
244 int32 ServerStreamingStateEpoch;
245 int32 ServerStreamingEnabledEpoch;
246 uint32 UpdateStreamingHash;
247 uint32 UpdateStreamingSourcesHash;
248 uint32 UpdateStreamingStateCounter;
251 EAsyncUpdateTaskState AsyncUpdateTaskState;
252 UE::
Tasks::TTask<
void> AsyncUpdateStreamingStateTask;
254 int32 AsyncShouldSkipUpdateCounter;
263 static bool IsUpdateOptimEnabled;
264 static bool IsAsyncUpdateStreamingStateEnabled;
270#if !UE_BUILD_SHIPPING
273 double OnScreenMessageStartTime;
275 bool bOnScreenMessageShouldBlock;
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define PURE_VIRTUAL(func,...)
Definition CoreMiscDefines.h:103
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const bool
Definition NetworkReplayStreaming.h:178
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
UClass * StaticClass()
Definition ReflectedTypeAccessors.h:13
uint32 Offset
Definition VulkanMemory.cpp:4033
EWorldPartitionRuntimeCellState
Definition WorldPartitionRuntimeCell.h:202
EWorldPartitionStreamingPerformance
Definition WorldPartitionRuntimeHash.h:39
EWorldPartitionDataLayersLogicOperator
Definition WorldPartition.h:89
Definition IConsoleManager.h:1580
TMultiMap< EOnScreenMessageSeverity, FText > FSeverityMessageMap
Definition CoreDelegates.h:513
Definition NameTypes.h:617
Definition WorldPartitionDraw2DContext.h:117
Definition SubclassOf.h:30
Definition WorldPartitionRuntimeHash.h:61
Definition WorldPartitionRuntimeCell.h:236
Definition WorldPartitionRuntimeHash.h:192
Definition WorldPartitionStreamingPolicy.h:94
EWorldPartitionStreamingPerformance GetStreamingPerformance() const
Definition WorldPartitionStreamingPolicy.h:138
virtual bool ConvertEditorPathToRuntimePath(const FSoftObjectPath &InPath, FSoftObjectPath &OutPath) const
Definition WorldPartitionStreamingPolicy.h:133
virtual bool InjectExternalStreamingObject(URuntimeHashExternalStreamingObjectBase *ExternalStreamingObject)
Definition WorldPartitionStreamingPolicy.h:142
virtual bool RemoveExternalStreamingObject(URuntimeHashExternalStreamingObjectBase *ExternalStreamingObject)
Definition WorldPartitionStreamingPolicy.h:143
virtual void SetShouldMergeStreamingSourceInfo(bool bInShouldMergeStreamingSourceInfo)
Definition WorldPartitionStreamingPolicy.h:145
const TArray< FWorldPartitionStreamingSource > & GetStreamingSources() const
Definition WorldPartitionStreamingPolicy.h:136
virtual UObject * GetSubObject(const TCHAR *SubObjectPath)
Definition WorldPartitionStreamingPolicy.h:134
virtual void DrawRuntimeCellsDetails(class UCanvas *Canvas, FVector2D &Offset)
Definition WorldPartitionStreamingPolicy.h:103
Definition WorldPartitionSubsystem.h:52
Definition WorldPartition.h:142
Definition AdvancedWidgetsModule.cpp:13
Definition WorldPartition.cpp:74
@ false
Definition radaudio_common.h:23
Definition WorldPartitionStreamingPolicy.h:27
bool Contains(const UWorldPartitionRuntimeCell *InCell) const
Definition WorldPartitionStreamingPolicy.h:32
const TSet< const UWorldPartitionRuntimeCell * > & GetPendingAddToWorldCells() const
Definition WorldPartitionStreamingPolicy.h:38
const TSet< TObjectPtr< const UWorldPartitionRuntimeCell > > & GetCells() const
Definition WorldPartitionStreamingPolicy.h:37
Definition WorldPartitionActorContainerID.h:44
Definition SoftObjectPath.h:56
Definition WorldDataLayers.h:51
Definition WorldPartitionRuntimeContainerResolving.h:65
Definition WorldPartitionStreamingSource.h:344
Definition WorldPartitionStreamingPolicy.h:76
Definition WorldPartitionStreamingPolicy.h:50
Definition ObjectPtr.h:488
Definition Optional.h:131