No Matches
Engine::SecondaryCommandBuffer Class Reference

#include <commandbuffer.h>

Inheritance diagram for Engine::SecondaryCommandBuffer:
Engine::CommandBuffer Engine::MasterLock Mutex

Public Member Functions

 SecondaryCommandBuffer (PrimaryCommandBuffer *pCommandBuffer, RenderBuffer *pRenderBuffer, uint subPassIndex, VkFramebuffer framebuffer)
virtual ~SecondaryCommandBuffer ()
void setFrameBufferHandle (VkFramebuffer framebuffer)
- Public Member Functions inherited from Engine::CommandBuffer
 CommandBuffer (VkCommandPool commandPool, VkCommandBufferLevel bufferLevel=VK_COMMAND_BUFFER_LEVEL_PRIMARY, VkCommandBufferUsageFlagBits bufferUsage=VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT)
virtual ~CommandBuffer ()
 operator VkCommandBuffer * ()
 operator VkCommandBuffer ()
VkCommandBuffer getHandle () const
State getState () const
void setFence (VkFence fence, uintmax_t timeout=UINT64_MAX)
VkFence getFence ()
bool isFenceSignaled ()
void waitForFenceSignal ()
VkSemaphore getCompleteSemaphore () const
void setCompleteSemaphore (VkSemaphore semaphore)
VkSemaphore getWaitSemaphore () const
void setWaitSemaphore (VkSemaphore semaphore)
VkCommandPool getCommandPool () const
virtual void begin ()
virtual void end ()
virtual void reset ()
- Public Member Functions inherited from Engine::MasterLock
 MasterLock ()
void lock ()
void wait ()
void unlock ()
bool isLocked ()

Protected Attributes

VkCommandBufferInheritanceInfo inheritanceInfo
- Protected Attributes inherited from Engine::CommandBuffer
VkCommandBuffer commandBuffer
VkDevice logicalDevice
VkCommandPool commandPool
VkCommandBufferBeginInfo beginInfo
State state
VkFence fence
VkSemaphore completeSemaphore
VkSemaphore waitSemaphore
uintmax_t fenceTimeout


class PrimaryCommandBuffer

Additional Inherited Members

- Public Types inherited from Engine::CommandBuffer
enum  State : uint {
  RESET = 0 ,
- Static Public Member Functions inherited from Engine::CommandBuffer
template<class C >
static HeapArray< VkCommandBuffer > getHandles (HeapArray< C * > array)
template<class C >
static HeapArray< VkCommandBuffer > getHandles (Queue< C * > queue)
template<class C >
static HeapArray< VkSemaphore > getWaitSemaphores (Queue< C * > queue)
template<class C >
static HeapArray< VkSemaphore > getCompleteSemaphores (Queue< C * > queue)
- Public Attributes inherited from Engine::MasterLock
volatile uint slaveCount
volatile bool locked

Detailed Description

A secondary command-buffer;

Constructor & Destructor Documentation

◆ SecondaryCommandBuffer()

Engine::SecondaryCommandBuffer::SecondaryCommandBuffer ( PrimaryCommandBuffer * pCommandBuffer,
RenderBuffer * pRenderBuffer,
uint subPassIndex,
VkFramebuffer framebuffer )

A sub command-buffer allocated from the pool of the parent command-buffer. This will be of type SECONDARY. Allocation is done upon construction.

◆ ~SecondaryCommandBuffer()

virtual Engine::SecondaryCommandBuffer::~SecondaryCommandBuffer ( )

Member Function Documentation

◆ setFrameBufferHandle()

void Engine::SecondaryCommandBuffer::setFrameBufferHandle ( VkFramebuffer framebuffer)

Friends And Related Symbol Documentation

◆ PrimaryCommandBuffer

friend class PrimaryCommandBuffer

Member Data Documentation

◆ inheritanceInfo

VkCommandBufferInheritanceInfo Engine::SecondaryCommandBuffer::inheritanceInfo

Both the FrameBufferHandle and RenderBufferHandle are recorded into this structure.

◆ pRenderBuffer

RenderBuffer* Engine::SecondaryCommandBuffer::pRenderBuffer

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