Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
CommandBuffer.h File Reference
#include "CommandBuffer.inl"

Go to the source code of this file.

Classes

struct  Divide::GFX::CommandBufferQueue
 
struct  Divide::GFX::CommandBufferQueue::Entry
 
class  Divide::GFX::CommandBuffer
 

Namespaces

namespace  Divide
 Handle console commands that start with a forward slash.
 
namespace  Divide::GFX
 
namespace  Divide::GFX::Names
 

Macros

#define DVD_COMMAND_BUFFER_H_
 

Enumerations

enum class  Divide::GFX::ErrorType : U8 {
  Divide::GFX::NONE = 0 , Divide::GFX::MISSING_BEGIN_RENDER_PASS , Divide::GFX::INVALID_BEGIN_RENDER_PASS , Divide::GFX::MISSING_END_RENDER_PASS ,
  Divide::GFX::MISSING_BEGIN_GPU_QUERY , Divide::GFX::MISSING_END_GPU_QUERY , Divide::GFX::MISSING_PUSH_DEBUG_SCOPE , Divide::GFX::MISSING_POP_DEBUG_SCOPE ,
  Divide::GFX::MISSING_POP_CAMERA , Divide::GFX::MISSING_POP_VIEWPORT , Divide::GFX::MISSING_VALID_PIPELINE , Divide::GFX::MISSING_BLIT_DESCRIPTOR_SET ,
  Divide::GFX::INVALID_DISPATCH_COUNT , Divide::GFX::INVALID_DESCRIPTOR_SET , Divide::GFX::INVALID_RENDER_PASS_FOR_PIPELINE , Divide::GFX::COUNT
}
 

Functions

void Divide::GFX::ResetCommandBufferQueue (CommandBufferQueue &queue)
 
void Divide::GFX::AddCommandBufferToQueue (CommandBufferQueue &queue, const Handle< GFX::CommandBuffer > &commandBuffer)
 
void Divide::GFX::AddCommandBufferToQueue (CommandBufferQueue &queue, Handle< GFX::CommandBuffer > &&commandBuffer)
 
void Divide::GFX::ToString (const CommandBase &cmd, const CommandType type, I32 &crtIndent, string &out)
 
template<typename T = CommandBase>
requires std::is_base_of_v<CommandBase, T>
bool Divide::GFX::TryMergeCommands (CommandType type, T *prevCommand, T *crtCommand)
 
bool Divide::GFX::Merge (DrawCommand *prevCommand, DrawCommand *crtCommand)
 
bool Divide::GFX::Merge (GFX::MemoryBarrierCommand *lhs, GFX::MemoryBarrierCommand *rhs)
 
bool Divide::GFX::Merge (SendPushConstantsCommand *lhs, SendPushConstantsCommand *rhs)
 
bool Divide::GFX::BatchDrawCommands (GenericDrawCommand &previousGDC, GenericDrawCommand &currentGDC) noexcept
 
template<typename T >
requires std::is_base_of_v<CommandBase, T>
FORCE_INLINE T * Divide::GFX::EnqueueCommand (CommandBuffer &buffer)
 
template<typename T >
requires std::is_base_of_v<CommandBase, T>
FORCE_INLINE T * Divide::GFX::EnqueueCommand (CommandBuffer &buffer, T &cmd)
 
template<typename T >
requires std::is_base_of_v<CommandBase, T>
FORCE_INLINE T * Divide::GFX::EnqueueCommand (CommandBuffer &buffer, T &&cmd)
 

Variables

static const char * Divide::GFX::Names::errorType []
 

Macro Definition Documentation

◆ DVD_COMMAND_BUFFER_H_

#define DVD_COMMAND_BUFFER_H_

Definition at line 34 of file CommandBuffer.h.