Talvos  0.1
SPIR-V interpreter and dynamic analysis framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Member Functions | Private Attributes | List of all members
talvos::RenderPassInstance Class Reference

This class represents an instance of a render pass being used for drawing. More...

#include <talvos/RenderPass.h>

Public Member Functions

 RenderPassInstance (const RenderPass &RP, const Framebuffer &FB, const std::vector< VkClearValue > &ClearValues)
 Create a render pass instance from a render pass and a framebuffer. More...
 
void begin ()
 Initialize the render pass state in preparation for draw commands. More...
 
void end ()
 Finalize the render pass state after completing all draw commands. More...
 
const FramebuffergetFramebuffer () const
 Returns the framebuffer associated with this render pass instance. More...
 
const RenderPassgetRenderPass () const
 Returns the render pass. More...
 
uint32_t getSubpassIndex () const
 Returns the index of the current subpass. More...
 
void nextSubpass ()
 Transition to the next subpass. More...
 

Private Member Functions

void beginSubpass ()
 Helper used to update render pass state when a new subpass is started. More...
 
void endSubpass ()
 Helper used to update render pass state when a subpass completes. More...
 

Private Attributes

const RenderPassRP
 The render pass that this object instantiates. More...
 
const FramebufferFB
 The framebuffer associated with this render pass instance. More...
 
std::vector< VkClearValue > ClearValues
 The clear values used for this render pass instance. More...
 
bool Rendering
 Flag used to indicate whether the instance is currently rendering. More...
 
uint32_t SubpassIndex
 The index of the current subpass. More...
 
std::vector< bool > AttachmentsInitialized
 Flags denoting whether each attachment has been initialized yet. More...
 

Detailed Description

This class represents an instance of a render pass being used for drawing.

Definition at line 95 of file RenderPass.h.

Constructor & Destructor Documentation

talvos::RenderPassInstance::RenderPassInstance ( const RenderPass RP,
const Framebuffer FB,
const std::vector< VkClearValue > &  ClearValues 
)
inline

Create a render pass instance from a render pass and a framebuffer.

Definition at line 99 of file RenderPass.h.

Member Function Documentation

void talvos::RenderPassInstance::begin ( )

Initialize the render pass state in preparation for draw commands.

Definition at line 29 of file RenderPass.cpp.

void talvos::RenderPassInstance::beginSubpass ( )
private

Helper used to update render pass state when a new subpass is started.

Definition at line 42 of file RenderPass.cpp.

void talvos::RenderPassInstance::end ( )

Finalize the render pass state after completing all draw commands.

Definition at line 86 of file RenderPass.cpp.

void talvos::RenderPassInstance::endSubpass ( )
private

Helper used to update render pass state when a subpass completes.

Definition at line 94 of file RenderPass.cpp.

const Framebuffer& talvos::RenderPassInstance::getFramebuffer ( ) const
inline

Returns the framebuffer associated with this render pass instance.

Definition at line 110 of file RenderPass.h.

const RenderPass& talvos::RenderPassInstance::getRenderPass ( ) const
inline

Returns the render pass.

Definition at line 113 of file RenderPass.h.

uint32_t talvos::RenderPassInstance::getSubpassIndex ( ) const
inline

Returns the index of the current subpass.

Definition at line 116 of file RenderPass.h.

void talvos::RenderPassInstance::nextSubpass ( )

Transition to the next subpass.

Definition at line 99 of file RenderPass.cpp.

Member Data Documentation

std::vector<bool> talvos::RenderPassInstance::AttachmentsInitialized
private

Flags denoting whether each attachment has been initialized yet.

Definition at line 138 of file RenderPass.h.

std::vector<VkClearValue> talvos::RenderPassInstance::ClearValues
private

The clear values used for this render pass instance.

Definition at line 129 of file RenderPass.h.

const Framebuffer& talvos::RenderPassInstance::FB
private

The framebuffer associated with this render pass instance.

Definition at line 126 of file RenderPass.h.

bool talvos::RenderPassInstance::Rendering
private

Flag used to indicate whether the instance is currently rendering.

Definition at line 132 of file RenderPass.h.

const RenderPass& talvos::RenderPassInstance::RP
private

The render pass that this object instantiates.

Definition at line 123 of file RenderPass.h.

uint32_t talvos::RenderPassInstance::SubpassIndex
private

The index of the current subpass.

Definition at line 135 of file RenderPass.h.