// Copyright (c) 2025 Danielel. All rights reserved.

#include "ShaderPipeline.h"
#include "ShaderPipelineCache.h"
#include "RenderResource.h"


void UShaderPipeline::SetBatchModeFast()
{
	FShaderPipelineCache::SetBatchMode(FShaderPipelineCache::BatchMode::Fast);
}

void UShaderPipeline::SetBatchModeBackground()
{
	FShaderPipelineCache::SetBatchMode(FShaderPipelineCache::BatchMode::Background);
}

void UShaderPipeline::SetBatchModePrecompile()
{
	FShaderPipelineCache::SetBatchMode(FShaderPipelineCache::BatchMode::Precompile);
}

void UShaderPipeline::PauseBatching()
{
	FShaderPipelineCache::PauseBatching();
}

void UShaderPipeline::ResumeBatching()
{
	FShaderPipelineCache::ResumeBatching();
}

bool UShaderPipeline::IsPrecompiling()
{
	return FShaderPipelineCache::IsPrecompiling();
}

int UShaderPipeline::NumPrecompilesRemaining()
{
	return FShaderPipelineCache::NumPrecompilesRemaining();
}

bool UShaderPipeline::IsBatchingPaused()
{
	return FShaderPipelineCache::IsBatchingPaused();
}
