Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
Renderer::Backend::Vulkan::CRenderPassManager Class Reference

A helper class to store unique render passes. More...

#include <RenderPassManager.h>

Collaboration diagram for Renderer::Backend::Vulkan::CRenderPassManager:

Classes

struct  Attachment
 
struct  Desc
 
struct  DescEqual
 
struct  DescHash
 

Public Member Functions

 CRenderPassManager (CDevice *device)
 
 ~CRenderPassManager ()
 
VkRenderPass GetOrCreateRenderPass (SColorAttachment *colorAttachment, SDepthStencilAttachment *depthStencilAttachment)
 

Private Attributes

CDevicem_Device = nullptr
 
std::unordered_map< Desc, VkRenderPass, DescHash, DescEqualm_RenderPassMap
 

Detailed Description

A helper class to store unique render passes.

Constructor & Destructor Documentation

◆ CRenderPassManager()

Renderer::Backend::Vulkan::CRenderPassManager::CRenderPassManager ( CDevice device)

◆ ~CRenderPassManager()

Renderer::Backend::Vulkan::CRenderPassManager::~CRenderPassManager ( )

Member Function Documentation

◆ GetOrCreateRenderPass()

VkRenderPass Renderer::Backend::Vulkan::CRenderPassManager::GetOrCreateRenderPass ( SColorAttachment colorAttachment,
SDepthStencilAttachment depthStencilAttachment 
)
Returns
a renderpass with required attachments. Currently we use only single subpass renderpasses.
Note
it should be called as rarely as possible.

Member Data Documentation

◆ m_Device

CDevice* Renderer::Backend::Vulkan::CRenderPassManager::m_Device = nullptr
private

◆ m_RenderPassMap

std::unordered_map<Desc, VkRenderPass, DescHash, DescEqual> Renderer::Backend::Vulkan::CRenderPassManager::m_RenderPassMap
private

The documentation for this class was generated from the following files: