Navigation
API > API/Runtime > API/Runtime/Engine
This subsystem captures level streaming operations for a specified time and outputs a .tsv (tab separated values) file to the profiling directory containing the amount of time spent loading levels and the time levels spent queuing for theability to load.
| Name | ULevelStreamingProfilingSubsystem |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Public/ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
| Include Path | #include "ProfilingDebugging/LevelStreamingProfilingSubsystem.h" |
Syntax
UCLASS (MinimalAPI)
class ULevelStreamingProfilingSubsystem : public UWorldSubsystem
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → USubsystem → UWorldSubsystem → ULevelStreamingProfilingSubsystem
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
ULevelStreamingProfilingSubsystem
(
const FObjectInitializer& |
ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~ULevelStreamingProfilingSubsystem() |
ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
Structs
| Name | Remarks |
|---|---|
| FActiveLevel | |
| FLevelStats |
Enums
Protected
| Name | Remarks |
|---|---|
| ELevelState |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ActiveLevels | TMap< TObjectKey< const ULevelStreaming >, TUniquePtr< FActiveLevel > > | A level currently pending or in the process of streaming. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | |
| bIsTracking | bool | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | ||
| Handle_OnLevelBeginAddToWorld | FDelegateHandle | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | ||
| Handle_OnLevelBeginRemoveFromWorld | FDelegateHandle | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | ||
| Handle_OnLevelStreamingStateChanged | FDelegateHandle | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | ||
| Handle_OnLevelStreamingTargetStateChanged | FDelegateHandle | Handles for registered callbacks. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | |
| LevelStats | TArray< FLevelStats > | Stats for levels which have been at least partially loaded. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | |
| ReportWritingTask | UE::Tasks::TTask< void > | Possibly-executing task dependend on our recorded stats. Cannot start recording again until this task is complete. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool IsTracking() |
ProfilingDebugging/LevelStreamingProfilingSubsystem.h | ||
virtual void PostReport() |
Gives child classes an opportunity to clean up after a report is produced. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | |
void StartTracking() |
Begin recording timings for level streaming events. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | |
void StopTrackingAndReport() |
Top recording timings for level streaming events and output a .tsv (tab separated values) file to the Profiling directory. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
Overridden from UWorldSubsystem
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void PostInitialize() |
Called once all UWorldSubsystems have been initialized | ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
Overridden from USubsystem
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void Deinitialize() |
Implement this for deinitialization of instances of the system | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | |
virtual bool ShouldCreateSubsystem
(
UObject* Outer |
Override to control if the Subsystem should be created at all. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AugmentReportHeader
(
FUtf8StringBuilderBase& Builder |
Gives child classes an opportunity to add additional data to the final report. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | |
virtual void AugmentReportRow
(
FUtf8StringBuilderBase& Builder, |
Gives child classes an opportunity to add additional data to the final report. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h | |
TConstArrayView< FLevelStats > GetLevelStats() |
ProfilingDebugging/LevelStreamingProfilingSubsystem.h | ||
virtual void UpdateTrackingData
(
int32 TrackingIndex, |
Gives child classes an opportunity to track additional data along with the main report. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
Overridden from UWorldSubsystem
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool DoesSupportWorldType
(
const EWorldType::Type WorldType |
ProfilingDebugging/LevelStreamingProfilingSubsystem.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static const TCHAR * EnumToString
(
ULevelStreamingProfilingSubsystem::ELevelState State |
ProfilingDebugging/LevelStreamingProfilingSubsystem.h | ||
static double GetLateStreamingDistanceSquared () |
Access to tuning values set by cvars for other systems. | ProfilingDebugging/LevelStreamingProfilingSubsystem.h |