Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
vkResources.h File Reference

Go to the source code of this file.

Classes

struct  Divide::VKQueue
 
struct  Divide::CompiledPipeline
 
struct  Divide::PipelineBuilder
 
struct  Divide::VkPipelineEntry
 
struct  Divide::DynamicBinding
 
struct  Divide::VKImmediateCmdContext
 
struct  Divide::VMAAllocatorInstance
 
struct  Divide::DescriptorAllocator
 
struct  Divide::VKPerWindowState
 
struct  Divide::VKPerWindowState::VKDynamicState
 
struct  Divide::VKStateTracker
 
struct  Divide::VKDeletionQueue
 
struct  Divide::VKTransferQueue
 
struct  Divide::VKTransferQueue::TransferRequest
 
struct  Divide::VulkanQueryType
 

Namespaces

namespace  vke
 
namespace  Divide
 Handle console commands that start with a forward slash.
 
namespace  Divide::Debug
 
namespace  Divide::VKUtil
 

Macros

#define VK_RESOURCES_H
 
#define VK_FLAGS_NONE   0
 
#define DEFAULT_FENCE_TIMEOUT   100000000000
 
#define STR(r)   case VK_ ##r: return #r
 
#define VK_CHECK(x)
 
#define VK_PROFILE(FUNCTION, ...)
 

Typedefs

using Divide::DynamicBindings = eastl::fixed_vector< DynamicBinding, MAX_BINDINGS_PER_DESCRIPTOR_SET, false >
 

Enumerations

enum class  Divide::QueueType : U8 { Divide::GRAPHICS , Divide::COMPUTE , Divide::TRANSFER , Divide::COUNT }
 

Functions

 vke::FWD_DECLARE_MANAGED_CLASS (DescriptorAllocatorPool)
 
 VK_DEFINE_HANDLE (VmaAllocator) namespace NS_GLIM
 
 Divide::FWD_DECLARE_MANAGED_CLASS (VKSwapChain)
 
void Divide::Debug::SetObjectName (VkDevice device, uint64_t object, VkObjectType objectType, const char *name)
 
void Divide::Debug::SetObjectTag (VkDevice device, uint64_t object, const VkObjectType objectType, size_t tagSize, void *tagData, uint64_t tagName)
 
 Divide::FWD_DECLARE_MANAGED_STRUCT (VKImmediateCmdContext)
 
 Divide::FWD_DECLARE_MANAGED_STRUCT (VKStateTracker)
 
std::string Divide::VKErrorString (VkResult errorCode)
 
void Divide::VKUtil::SubmitRenderCommand (const GenericDrawCommand &drawCommand, const VkCommandBuffer commandBuffer, bool indexed)
 Note: If internal format is not GL_NONE, an indexed draw is issued!
 
void Divide::VKUtil::OnStartup (VkDevice device)
 
VkFormat Divide::VKUtil::InternalFormat (GFXImageFormat baseFormat, GFXDataFormat dataType, GFXImagePacking packing) noexcept
 
VkFormat Divide::VKUtil::InternalFormat (GFXDataFormat format, U8 componentCount, bool normalized) noexcept
 
VkDescriptorType Divide::VKUtil::vkDescriptorType (DescriptorSetBindingType type, bool isPushDescriptor) noexcept
 
bool operator== (const VkDescriptorSetLayoutBinding &lhs, const VkDescriptorSetLayoutBinding &rhs) noexcept
 
bool operator!= (const VkDescriptorSetLayoutBinding &lhs, const VkDescriptorSetLayoutBinding &rhs) noexcept
 
bool operator== (const VkViewport &lhs, const VkViewport &rhs) noexcept
 
bool operator!= (const VkViewport &lhs, const VkViewport &rhs) noexcept
 
bool operator== (const VkRect2D &lhs, const VkRect2D &rhs) noexcept
 
bool operator!= (const VkRect2D &lhs, const VkRect2D &rhs) noexcept
 

Variables

PFN_vkCmdBeginDebugUtilsLabelEXT Divide::Debug::vkCmdBeginDebugUtilsLabelEXT = VK_NULL_HANDLE
 
PFN_vkCmdEndDebugUtilsLabelEXT Divide::Debug::vkCmdEndDebugUtilsLabelEXT = VK_NULL_HANDLE
 
PFN_vkCmdInsertDebugUtilsLabelEXT Divide::Debug::vkCmdInsertDebugUtilsLabelEXT = VK_NULL_HANDLE
 
PFN_vkSetDebugUtilsObjectNameEXT Divide::Debug::vkSetDebugUtilsObjectNameEXT = VK_NULL_HANDLE
 
PFN_vkSetDebugUtilsObjectTagEXT Divide::Debug::vkSetDebugUtilsObjectTagEXT = VK_NULL_HANDLE
 
constexpr U32 Divide::INVALID_VK_QUEUE_INDEX = U32_MAX
 
std::array< VkBlendFactor, to_base(BlendProperty::COUNT)> Divide::vkBlendTable
 
std::array< VkBlendOp, to_base(BlendOperation::COUNT)> Divide::vkBlendOpTable
 
std::array< VkCompareOp, to_base(ComparisonFunction::COUNT)> Divide::vkCompareFuncTable
 
std::array< VkStencilOp, to_base(StencilOperation::COUNT)> Divide::vkStencilOpTable
 
std::array< VkCullModeFlags, to_base(CullMode::COUNT)> Divide::vkCullModeTable
 
std::array< VkPolygonMode, to_base(FillMode::COUNT)> Divide::vkFillModeTable
 
std::array< VkImageType, to_base(TextureType::COUNT)> Divide::vkTextureTypeTable
 
std::array< VkImageViewType, to_base(TextureType::COUNT)> Divide::vkTextureViewTypeTable
 
std::array< VkPrimitiveTopology, to_base(PrimitiveTopology::COUNT)> Divide::vkPrimitiveTypeTable
 
std::array< VkSamplerAddressMode, to_base(TextureWrap::COUNT)> Divide::vkWrapTable
 
std::array< VkShaderStageFlagBits, to_base(ShaderType::COUNT)> Divide::vkShaderStageTable
 
std::array< VulkanQueryType, to_base(QueryType::COUNT)> Divide::vkQueryTypeTable
 
constexpr U8 Divide::VKUtil::k_invalidSyncID = U8_MAX
 

Macro Definition Documentation

◆ DEFAULT_FENCE_TIMEOUT

#define DEFAULT_FENCE_TIMEOUT   100000000000

Definition at line 59 of file vkResources.h.

◆ STR

#define STR (   r)    case VK_ ##r: return #r

◆ VK_CHECK

#define VK_CHECK (   x)
Value:
do \
{ \
VkResult err = x; \
if (err) \
{ \
Console::errorfn(LOCALE_STR("ERROR_GENERIC_VK"), VKErrorString(err).c_str());\
DIVIDE_UNEXPECTED_CALL(); \
} \
} while (0)
#define LOCALE_STR(X)
Definition: Localization.h:91

Definition at line 327 of file vkResources.h.

◆ VK_FLAGS_NONE

#define VK_FLAGS_NONE   0

Definition at line 56 of file vkResources.h.

◆ VK_PROFILE

#define VK_PROFILE (   FUNCTION,
  ... 
)
Value:
do \
{ \
PROFILE_VK_EVENT(#FUNCTION); \
FUNCTION(__VA_ARGS__); \
} while ( 0 )

Definition at line 340 of file vkResources.h.

◆ VK_RESOURCES_H

#define VK_RESOURCES_H

Definition at line 34 of file vkResources.h.

Function Documentation

◆ operator!=() [1/3]

bool operator!= ( const VkDescriptorSetLayoutBinding &  lhs,
const VkDescriptorSetLayoutBinding &  rhs 
)
inlinenoexcept

Definition at line 394 of file vkResources.h.

◆ operator!=() [2/3]

bool operator!= ( const VkRect2D &  lhs,
const VkRect2D &  rhs 
)
inlinenoexcept

Definition at line 428 of file vkResources.h.

◆ operator!=() [3/3]

bool operator!= ( const VkViewport &  lhs,
const VkViewport &  rhs 
)
inlinenoexcept

Definition at line 412 of file vkResources.h.

◆ operator==() [1/3]

bool operator== ( const VkDescriptorSetLayoutBinding &  lhs,
const VkDescriptorSetLayoutBinding &  rhs 
)
inlinenoexcept

Definition at line 385 of file vkResources.h.

◆ operator==() [2/3]

bool operator== ( const VkRect2D &  lhs,
const VkRect2D &  rhs 
)
inlinenoexcept

Definition at line 421 of file vkResources.h.

◆ operator==() [3/3]

bool operator== ( const VkViewport &  lhs,
const VkViewport &  rhs 
)
inlinenoexcept

Definition at line 403 of file vkResources.h.

◆ VK_DEFINE_HANDLE()

VK_DEFINE_HANDLE ( VmaAllocator  )

Definition at line 49 of file vkResources.h.