SpiecsEngine
 
Loading...
Searching...
No Matches
Spices::RendererSubPass Class Reference

This Class Combines some data relative to sub pass. Usually as a member variable of RendererPass. More...

#include <RendererSubPass.h>

Public Member Functions

 RendererSubPass (const std::string &subPassName, uint32_t index, Querier::StatisticsFlags flags)
 Constructor Function.
 
virtual ~RendererSubPass ()=default
 Destructor Function.
 
void AddColorAttachmentReference (const VkAttachmentReference &attachmentReference, const VkPipelineColorBlendAttachmentState &colorBlend)
 Add a Color Attachment to sub pass.
 
void AddDepthAttachmentReference (const VkAttachmentReference &attachmentReference)
 Add a Depth Attachment to sub pass.
 
void AddInputAttachmentReference (const VkAttachmentReference &attachmentReference)
 Add a Input Attachment to sub pass.
 
void BuildSubPassDescription ()
 Build VkSubpassDescription.
 
void AddFirstSubPassDependency ()
 Add First VkSubpassDependency.
 
void BuildSubPassDependency (uint32_t index)
 Build VkSubpassDependency.
 
void AddSubPassDependency (uint32_t srcsubpass, uint32_t dstsubpass, VkAccessFlags srcAccessMask, VkAccessFlags dstAccessMask, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask)
 Add VkSubpassDependency.
 
template<typename T >
void SetPushConstant (T fn)
 Set Pipeline PushConstant.
 
VkSubpassDescription & GetDescription ()
 Get a VkSubpassDescription.
 
std::vector< VkSubpassDependency > & GetDependency ()
 Get a VkSubpassDependency.
 
const std::string & GetName ()
 Get sub pass name.
 
bool IsUsePushConstant () const
 Get isUsePushConstant.
 
VkPushConstantRange & GetPushConstant ()
 Get VkPushConstantRange.
 
std::shared_ptr< VulkanBuffer > & GetBuffers (const UInt2 &i2)
 Get a buffer with index.
 
void SetBuffer (const UInt2 &i2, void *data, uint64_t size=VK_WHOLE_SIZE, uint64_t offset=0)
 Set Buffer data.
 
uint32_t GetIndex () const
 Get sub pass index of pass.
 
std::vector< VkPipelineColorBlendAttachmentState > & GetColorBlend ()
 Get VkPipelineColorBlendAttachmentState.
 
std::shared_ptr< RenderPassStatistics > & GetStatistics ()
 Get RenderPassStatistics.
 
void BeginStatistics (VkCommandBuffer commandBuffer, Querier::StatisticsFlags flags=Querier::ALL) const
 Begin Statistics this frame.
 
void EndStatistics (VkCommandBuffer commandBuffer, Querier::StatisticsFlags flags=Querier::ALL) const
 End Statistics this frame.
 
void StoreStatistics () const
 Store statistics this frame.
 

Private Attributes

std::string m_SubpassName
 Sub pass Name.
 
uint32_t m_Index
 Index of sub pass in pass.
 
std::shared_ptr< RenderPassStatisticsm_Statistics
 Statistics of RenderPass.
 
VkSubpassDescription m_SubPassDescriptions {}
 VkSubpassDescription.
 
std::vector< VkSubpassDependency > m_SubPassDependency {}
 VkSubpassDependency.
 
std::vector< VkAttachmentReference > m_ColorAttachmentReference
 Subpass used color attachment.
 
std::vector< VkAttachmentReference > m_DepthAttachmentReference
 Sub pass used depth attachment.
 
std::vector< VkAttachmentReference > m_InputAttachmentReference
 Sub pass used input attachment.
 
std::vector< VkPipelineColorBlendAttachmentState > m_ColorBlends
 Sub pass used VkPipelineColorBlendAttachmentState.
 
bool isUsePushConstant = false
 True if sub pass use a PushConstant.
 
VkPushConstantRange m_PushConstantRange {}
 VkPushConstantRange.
 
std::unordered_map< UInt2, std::shared_ptr< VulkanBuffer > > m_Buffers
 All Buffers used this sub pass.
 

Detailed Description

This Class Combines some data relative to sub pass. Usually as a member variable of RendererPass.

Definition at line 26 of file RendererSubPass.h.


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