QuartzUIProviderSet: 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/QuartzUIProviderSet.h) · integration recipe · practical guide
EQuartzUIProviderActivation
Public type. Selects when a registered provider set is instantiated for a shell.
Prerequisites / integration: Configured app, explicit reflected value types, saved assets and freshly generated app contract. Use the QuartzUIProviderSet recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: Register a set on the app; select OnShellReady or bind/release manually. Asset is durable; each handle belongs to one binding lifetime.
Avoid: Confusing registration with activation or releasing automatic handles manually. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIProviderSet.h#L12)
FQuartzUIProviderSetHandle
Public type. Opaque lifetime token returned by UQuartzUISubsystem::BindProviderSet.
Prerequisites / integration: Configured app, explicit reflected value types, saved assets and freshly generated app contract. Use the QuartzUIProviderSet recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: Register a set on the app; select OnShellReady or bind/release manually. Asset is durable; each handle belongs to one binding lifetime.
Avoid: Confusing registration with activation or releasing automatic handles manually. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIProviderSet.h#L23)
UQuartzUIProviderSet
Public type. Ordered reusable provider-class collection with an explicit activation policy.
Prerequisites / integration: Configured app, explicit reflected value types, saved assets and freshly generated app contract. Use the QuartzUIProviderSet recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: Register a set on the app; select OnShellReady or bind/release manually. Asset is durable; each handle belongs to one binding lifetime.
Avoid: Confusing registration with activation or releasing automatic handles manually. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIProviderSet.h#L36)
Complete header
Source snapshot, not an additional example. Unreal annotations distinguish exposed Blueprint nodes from native-only/private methods.
#pragma once
#include "CoreMinimal.h"
#include "Engine/DataAsset.h"
#include "QuartzUIProviderSet.generated.h"
class UQuartzUIProvider;
/** Selects when a registered provider set is instantiated for a shell. */
UENUM(BlueprintType)
enum class EQuartzUIProviderActivation : uint8
{
/** The project binds and releases the set explicitly. */
Manual,
/** The QuartzUI subsystem binds the set whenever the canonical shell exists. */
OnShellReady
};
/** Opaque lifetime token returned by UQuartzUISubsystem::BindProviderSet. */
USTRUCT(BlueprintType)
struct QUARTZUIRUNTIME_API FQuartzUIProviderSetHandle
{
GENERATED_BODY()
bool IsValid() const { return Id.IsValid(); }
void Reset() { Id.Invalidate(); }
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "QuartzUI|Providers")
FGuid Id;
};
/** Ordered reusable provider-class collection with an explicit activation policy. */
UCLASS(BlueprintType, meta = (DisplayName = "QuartzUI Provider Set"))
class QUARTZUIRUNTIME_API UQuartzUIProviderSet final : public UDataAsset
{
GENERATED_BODY()
public:
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "QuartzUI|Providers")
TArray<TSoftClassPtr<UQuartzUIProvider>> Providers;
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "QuartzUI|Providers")
EQuartzUIProviderActivation Activation = EQuartzUIProviderActivation::Manual;
#if WITH_EDITOR
virtual EDataValidationResult IsDataValid(class FDataValidationContext& Context) const override;
#endif
};