QuartzUIDiagnostics: declaration reference
0.57.0-dev · beta source documentation. Native, Blueprint, Editor and rendering examples are source-reviewed, not executed in Unreal during this scan. See validation and limits.
Pinned source (source: Source/QuartzUIRuntime/Public/QuartzUIDiagnostics.h) · integration recipe · practical guide
FQuartzUIRuntimeStats
Public type. Process-wide counters for every QuartzUI view in the current Unreal process.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIDiagnostics recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: GetRuntimeStats; compare baseline/current with EvaluateRuntimeBudget. Snapshot values; caller owns baseline and thresholds.
Avoid: Calling estimates complete GPU memory or historical counters frame timing. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIDiagnostics.h#L9)
FQuartzUIRuntimeBudget
Public type. Caller-owned limits for one runtime interval. Negative values disable that gate.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIDiagnostics recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: GetRuntimeStats; compare baseline/current with EvaluateRuntimeBudget. Snapshot values; caller owns baseline and thresholds.
Avoid: Calling estimates complete GPU memory or historical counters frame timing. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIDiagnostics.h#L128)
FQuartzUIRuntimeBudgetResult
Public type. Stable, machine-readable result of evaluating an explicit project budget.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIDiagnostics recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: GetRuntimeStats; compare baseline/current with EvaluateRuntimeBudget. Snapshot values; caller owns baseline and thresholds.
Avoid: Calling estimates complete GPU memory or historical counters frame timing. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIDiagnostics.h#L156)
FQuartzUIViewStats
Public type. Counters and the current physical raster estimate for one QuartzUI widget.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIDiagnostics recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: GetRuntimeStats; compare baseline/current with EvaluateRuntimeBudget. Snapshot values; caller owns baseline and thresholds.
Avoid: Calling estimates complete GPU memory or historical counters frame timing. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIDiagnostics.h#L169)
UQuartzUIDiagnosticsLibrary
Public type. Blueprint and C++ entry points for lightweight QuartzUI runtime diagnostics.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIDiagnostics recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: GetRuntimeStats; compare baseline/current with EvaluateRuntimeBudget. Snapshot values; caller owns baseline and thresholds.
Avoid: Calling estimates complete GPU memory or historical counters frame timing. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIDiagnostics.h#L286)
Complete header
Source snapshot, not an additional example. Unreal annotations distinguish exposed Blueprint nodes from native-only/private methods.
#pragma once
#include "Kismet/BlueprintFunctionLibrary.h"
#include "QuartzUIDiagnostics.generated.h"
/** Process-wide counters for every QuartzUI view in the current Unreal process. */
USTRUCT(BlueprintType)
struct QUARTZUIRUNTIME_API FQuartzUIRuntimeStats
{
GENERATED_BODY()
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 LiveViews = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 TotalViewsCreated = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 CompletedLoads = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 FailedLoads = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 CompletedHandshakes = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 FailedHandshakes = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 LoadRecoveryAttempts = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 SuccessfulLoadRecoveries = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 ExhaustedLoadRecoveries = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 SuspendedViews = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 ViewSuspensions = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 ViewResumptions = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 JavaScriptExecutions = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 ResourceRequests = 0;
/** Response-body bytes served by the packaged QuartzUI origin. HEAD response lengths are not counted. */
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 ResourceBytesServed = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 ProtocolRequestsAccepted = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 ProtocolRequestsRejected = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 ProtocolBytesReceived = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 BridgeRequestsSucceeded = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 BridgeRequestsFailed = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 PendingAsyncBridgeRequests = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 AsyncBridgeRequestsStarted = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 AsyncBridgeRequestsTimedOut = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 AsyncBridgeBackpressureRejections = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 OutboundStateSnapshotsPublished = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 OutboundStatePatchesDispatched = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 OutboundStateValuesDispatched = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 OutboundStateWritesCoalesced = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 OutboundEventsEmitted = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 OutboundStateBackpressureRejections = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 OutboundEventBackpressureRejections = 0;
/** Number of validated scene-backdrop snapshots accepted in this process. */
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 SceneBackdropSnapshotUpdates = 0;
/** Rounded-rectangle backdrop regions currently submitted to the scene compositor. */
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 ActiveSceneBackdropRegions = 0;
/** Sum of live physical raster dimensions at four BGRA bytes per pixel; not total Chromium memory. */
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 EstimatedLiveSurfaceBytes = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
double TotalDocumentLoadMilliseconds = 0.0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
double TotalHandshakeMilliseconds = 0.0;
};
/** Caller-owned limits for one runtime interval. Negative values disable that gate. */
USTRUCT(BlueprintType)
struct QUARTZUIRUNTIME_API FQuartzUIRuntimeBudget
{
GENERATED_BODY()
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "QuartzUI|Diagnostics|Budget")
int32 MaxLiveViews = -1;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "QuartzUI|Diagnostics|Budget")
int64 MaxEstimatedLiveSurfaceBytes = -1;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "QuartzUI|Diagnostics|Budget")
int32 MaxPendingAsyncBridgeRequests = -1;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "QuartzUI|Diagnostics|Budget")
int32 MaxActiveSceneBackdropRegions = -1;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "QuartzUI|Diagnostics|Budget")
int64 MaxFailedLoadDelta = -1;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "QuartzUI|Diagnostics|Budget")
int64 MaxAsyncTimeoutDelta = -1;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "QuartzUI|Diagnostics|Budget")
int64 MaxAsyncBackpressureDelta = -1;
};
/** Stable, machine-readable result of evaluating an explicit project budget. */
USTRUCT(BlueprintType)
struct QUARTZUIRUNTIME_API FQuartzUIRuntimeBudgetResult
{
GENERATED_BODY()
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics|Budget")
bool bWithinBudget = true;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics|Budget")
TArray<FString> Violations;
};
/** Counters and the current physical raster estimate for one QuartzUI widget. */
USTRUCT(BlueprintType)
struct QUARTZUIRUNTIME_API FQuartzUIViewStats
{
GENERATED_BODY()
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 PhysicalRasterWidth = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 PhysicalRasterHeight = 0;
/** Width times height times four; this excludes Chromium process, compositor, and mip/driver memory. */
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int64 EstimatedSurfaceBytes = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 CompletedLoads = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 FailedLoads = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 CompletedHandshakes = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 FailedHandshakes = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 LoadRecoveryAttempts = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 SuccessfulLoadRecoveries = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 ExhaustedLoadRecoveries = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 JavaScriptExecutions = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 BridgeRequestsSucceeded = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 BridgeRequestsFailed = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 PendingAsyncBridgeRequests = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 AsyncBridgeRequestsStarted = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 AsyncBridgeRequestsTimedOut = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 AsyncBridgeBackpressureRejections = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 OutboundStateSnapshotsPublished = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 OutboundStatePatchesDispatched = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 OutboundStateValuesDispatched = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 OutboundStateWritesCoalesced = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 OutboundEventsEmitted = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 RetainedOutboundStates = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 PendingOutboundEvents = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 OutboundStateBackpressureRejections = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 OutboundEventBackpressureRejections = 0;
/** Explicit capture-loss signals sent when native interactive ownership changes. */
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 InputCaptureCancellationSignals = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 BlockedTopLevelNavigations = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 BlockedSubframeNavigations = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 BlockedPopupNavigations = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
double LastDocumentLoadMilliseconds = 0.0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
double LastHandshakeMilliseconds = 0.0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 BrowserFrameRate = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
bool bRuntimeSuspended = false;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 RuntimeSuspensions = 0;
UPROPERTY(BlueprintReadOnly, Category = "QuartzUI|Diagnostics")
int32 RuntimeResumptions = 0;
};
/** Blueprint and C++ entry points for lightweight QuartzUI runtime diagnostics. */
UCLASS()
class QUARTZUIRUNTIME_API UQuartzUIDiagnosticsLibrary final : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
public:
UFUNCTION(BlueprintPure, Category = "QuartzUI|Diagnostics")
static FQuartzUIRuntimeStats GetRuntimeStats();
/** Writes the same process-wide snapshot as QuartzUI.DumpStats to LogQuartzUI. */
UFUNCTION(BlueprintCallable, Category = "QuartzUI|Diagnostics")
static void DumpRuntimeStats();
/** Returns the single uncompressed BGRA surface estimate, not total Chromium memory. */
UFUNCTION(BlueprintPure, Category = "QuartzUI|Diagnostics")
static int64 EstimateSurfaceBytes(int32 PhysicalWidth, int32 PhysicalHeight);
/** Evaluates explicit instantaneous limits and failure deltas without hidden hardware assumptions. */
UFUNCTION(BlueprintPure, Category = "QuartzUI|Diagnostics")
static FQuartzUIRuntimeBudgetResult EvaluateRuntimeBudget(
const FQuartzUIRuntimeStats& Baseline,
const FQuartzUIRuntimeStats& Current,
const FQuartzUIRuntimeBudget& Budget);
};