25 class rv_InstanceData;
30 class RV_VKCommandPool;
32 class RV_VKCommandBufferAllocator;
34 class RV_VKMemAllocator;
44 static bool hasInstance();
46 static void destroyInstance();
49 static void exitCallback(
void*);
57 bool initializeDevice();
62 VkPhysicalDevice getPhysicalDevice();
64 VkInstance getVkInst();
79 static uint32_t getInstanceVersion();
82 uint32_t getDeviceVersion();
87 static bool usingDebugValidation();
90 static bool usingVulkanMultithreading();
93 int getMaxColorSamples()
const;
96 int getMaxDepthSamples()
const;
99 int getMaxTextureSize2D()
const;
102 int getMaxTextureSize3D()
const;
105 float getLineWidthGranularity()
const;
111 bool extEnabled(
const char* vk_ext_name )
const;
114 void waitDeviceIdle();
RV_VKMemAllocator & getMemAllocator()
Our Vulkan memory allocator implementation.
RV_VKQueue & getGraphicsQueue()
Main Queue supporting graphics, compute and transfer.
RV_DescriptorAllocator & getDescAllocator()
Our Vulkan descriptor set allocator.
std::unique_ptr< T, Deleter > UT_UniquePtr
A smart pointer for unique ownership of dynamically allocated objects.
Handle to the main interface of Vulkan.
RV_VKExt * getExt()
Object containing function pointers to Vulkan extensions.