4#include <unordered_map>
7#include "render/general/resource/shadow/ShadowMapArrayIndexManager.h"
8#include "shader/general/resource/ShaderArrayIndexManager.h"
9#include "render/general/resource/frame/FrameResourceManager.h"
12#include "vulkan/vulkan.h"
50 [[nodiscard]]
virtual std::optional<Error>
60 [[nodiscard]]
virtual std::optional<Error>
106 [[nodiscard]] std::optional<Error>
119 [[nodiscard]] std::optional<Error>
Definition: Pipeline.h:20
Definition: Renderer.h:43
Definition: ShadowMapArrayIndexManager.h:25
Renderer *const pRenderer
Definition: ShadowMapArrayIndexManager.h:134
const std::string sShaderArrayResourceName
Definition: ShadowMapArrayIndexManager.h:137
Definition: ShadowMapHandle.h:23
Definition: VulkanPipeline.h:21
Definition: VulkanShadowMapArrayIndexManager.h:18
virtual std::optional< Error > bindShadowMapsToPipeline(Pipeline *pPipeline) override
Definition: VulkanShadowMapArrayIndexManager.cpp:94
virtual std::optional< Error > registerShadowMapResource(ShadowMapHandle *pShadowMapHandle) override
Definition: VulkanShadowMapArrayIndexManager.cpp:37
virtual std::optional< Error > bindShadowMapsToAllPipelines() override
Definition: VulkanShadowMapArrayIndexManager.cpp:98
virtual std::optional< Error > unregisterShadowMapResource(ShadowMapHandle *pShadowMapHandle) override
Definition: VulkanShadowMapArrayIndexManager.cpp:76
std::pair< std::recursive_mutex, InternalData > mtxInternalData
Definition: VulkanShadowMapArrayIndexManager.h:135
std::optional< Error > bindShadowMapToPipelineIfUsed(ShadowMapHandle *pShadowMapHandle, VulkanPipeline *pPipeline, VkSampler pSampler)
Definition: VulkanShadowMapArrayIndexManager.cpp:184
Definition: VulkanShadowMapArrayIndexManager.h:81
std::unique_ptr< ShaderArrayIndexManager > pIndexManager
Definition: VulkanShadowMapArrayIndexManager.h:91
std::unordered_map< ShadowMapHandle *, std::unique_ptr< ShaderArrayIndex > > registeredShadowMaps
Definition: VulkanShadowMapArrayIndexManager.h:94