Rasterfarm-SDK
|
#include <commandbuffer.h>
Public Types | |
enum | State : uint { RESET = 0 , RECORDING , PENDING } |
Public Member Functions | |
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 () |
Static Public Member Functions | |
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) |
Protected Attributes | |
VkCommandBuffer | commandBuffer |
VkDevice | logicalDevice |
VkCommandPool | commandPool |
VkCommandBufferBeginInfo | beginInfo |
State | state |
VkFence | fence |
VkSemaphore | completeSemaphore |
VkSemaphore | waitSemaphore |
uintmax_t | fenceTimeout |
Friends | |
class | Implementation |
class | PrimaryCommandBuffer |
class | RenderBuffer |
Additional Inherited Members | |
Public Attributes inherited from Engine::MasterLock | |
volatile uint | slaveCount |
volatile bool | locked |
A primary command-buffer;
enum Engine::CommandBuffer::State : uint |
Engine::CommandBuffer::CommandBuffer | ( | VkCommandPool | commandPool, |
VkCommandBufferLevel | bufferLevel = VK_COMMAND_BUFFER_LEVEL_PRIMARY, | ||
VkCommandBufferUsageFlagBits | bufferUsage = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT ) |
A command-buffer. Allocation is done upon construction.
The | command-pool that this buffer will-be allocated from. |
The | buffer-level of type primary or secondary. |
|
virtual |
|
virtual |
Begins the recording sequence of this command-buffer. In the case of a primary command-buffer, it may-be this method is never called and all commands are within the sub-commands, which are called individually.
Reimplemented in Engine::PrimaryCommandBuffer.
|
virtual |
Ends the recording sequence of this command-buffer. In the case of a primary command-buffer, it may-be this method is never called and all commands are within the sub-commands, which are called individually.
Reimplemented in Engine::PrimaryCommandBuffer.
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
inlinestatic |
|
inlinestatic |
|
inline |
|
inline |
|
inlinestatic |
bool Engine::CommandBuffer::isFenceSignaled | ( | ) |
|
inline |
|
inline |
|
virtual |
Reimplemented in Engine::PrimaryCommandBuffer.
|
inline |
void Engine::CommandBuffer::setFence | ( | VkFence | fence, |
uintmax_t | timeout = UINT64_MAX ) |
|
inline |
void Engine::CommandBuffer::waitForFenceSignal | ( | ) |
|
friend |
|
friend |
|
friend |
|
protected |
|
protected |
|
protected |
Child command-buffers will be allocated from this field.
|
protected |
Produced by this CommandBuffer when submission is complete.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Submission will wait until receipt of this signal.