Files

52 lines
2.1 KiB
C
Raw Permalink Normal View History

// Copyright (c) 2025 Danielel. All rights reserved.
#pragma once
#include "CoreMinimal.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "ShaderPipelineCache.h"
#include "ShaderPipeline.generated.h"
/**
*
*/
UCLASS()
class PSOFUNCTIONS_API UShaderPipeline : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
public:
UFUNCTION(BlueprintCallable, Category = "PSO precompile", meta = (ToolTip = "Sets the precompilation batching mode to Fast"))
static void SetBatchModeFast();
UFUNCTION(BlueprintCallable, Category = "PSO precompile", meta = (ToolTip = "Sets the precompilation batching mode to Background"))
static void SetBatchModeBackground();
UFUNCTION(BlueprintCallable, Category = "PSO precompile", meta = (ToolTip = "Sets the precompilation batching mode to Precompile"))
static void SetBatchModePrecompile();
/** Pauses precompilation batching. */
UFUNCTION(BlueprintCallable, Category = "PSO precompile", meta = (ToolTip = "Pauses precompilation batching"))
static void PauseBatching();
/** Resumes precompilation batching. */
UFUNCTION(BlueprintCallable, Category = "PSO precompile", meta = (ToolTip = "Resumes precompilation batching"))
static void ResumeBatching();
/** true if pipeline cache(s) are precompiling. */
UFUNCTION(BlueprintCallable, Category = "PSO precompile", BlueprintPure, meta = (ToolTip = "True if pipeline cache(s) are precompiling"))
static bool IsPrecompiling();
/** Returns the number of pipelines waiting for precompilation of the current PSOFC task.
if there are multiple PSOFCs pending this will return a minimum value of 1. It may increase as subsequent caches are processed.*/
UFUNCTION(BlueprintCallable, Category = "PSO precompile", BlueprintPure, meta = (ToolTip = "Returns the number of pipelines waiting for precompilation of the current PSOFC task. If there are multiple PSOFCs pending this will return a minimum value of 1. It may increase as subsequent caches are processed."))
static int NumPrecompilesRemaining();
UFUNCTION(BlueprintCallable, Category = "PSO precompile", BlueprintPure, meta = (ToolTip = "Returns if the precompilation batching is paused"))
static bool IsBatchingPaused();
};