CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::VKRenderAPI Class Referencefinal

#include <CeresEngine/RenderAPI/Vulkan/VKRenderAPI.hpp>

Inheritance diagram for CeresEngine::VKRenderAPI:
CeresEngine::RenderAPI

Public Member Functions

 VKRenderAPI (const RenderAPIDescriptor &descriptor)
 
 ~VKRenderAPI () final
 
 operator VkInstance () const noexcept
 
GPUDevicePtr createDevice (const GPUDeviceDescriptor &descriptor, const DevicePickerFunc &pickerFunc=nullptr) final
 
GPUDevicePtr getDefaultDevice () final
 
void update () final
 
- Public Member Functions inherited from CeresEngine::RenderAPI
 RenderAPI ()=default
 Default initializer.
 
virtual ~RenderAPI ()=default
 Destroys the renderer object.
 
 RenderAPI (const RenderAPI &)=delete
 Deleted copy constructor.
 
RenderAPIoperator= (const RenderAPI &)=delete
 
 RenderAPI (RenderAPI &&)=delete
 Deleted move constructor.
 
RenderAPIoperator= (RenderAPI &&)=delete
 

Static Public Member Functions

static bool available () noexcept
 Checks if the Vulkan renderer is available on this system.
 

Private Attributes

DynamicLibrary library
 
VkInstance mInstance
 
VKFuncTable funcTable
 The Vulkan function table.
 
DebugMessageCallback mDebugMessageCallback = nullptr
 
VkDebugUtilsMessengerEXT mDebugMessenger = VK_NULL_HANDLE
 
VKDevicePtr mDevice
 

Friends

class VKDevice
 

Constructor & Destructor Documentation

◆ VKRenderAPI()

CeresEngine::VKRenderAPI::VKRenderAPI ( const RenderAPIDescriptor descriptor)
explicit

◆ ~VKRenderAPI()

CeresEngine::VKRenderAPI::~VKRenderAPI ( )
final

Member Function Documentation

◆ available()

static bool CeresEngine::VKRenderAPI::available ( )
staticnoexcept

Checks if the Vulkan renderer is available on this system.

Returns
true if the Vulkan renderer is available on the system.

◆ createDevice()

GPUDevicePtr CeresEngine::VKRenderAPI::createDevice ( const GPUDeviceDescriptor descriptor,
const DevicePickerFunc pickerFunc = nullptr 
)
finalvirtual

◆ getDefaultDevice()

GPUDevicePtr CeresEngine::VKRenderAPI::getDefaultDevice ( )
finalvirtual

◆ operator VkInstance()

CeresEngine::VKRenderAPI::operator VkInstance ( ) const
inlinenoexcept

◆ update()

void CeresEngine::VKRenderAPI::update ( )
finalvirtual

Friends And Related Symbol Documentation

◆ VKDevice

Member Data Documentation

◆ funcTable

VKFuncTable CeresEngine::VKRenderAPI::funcTable
private

The Vulkan function table.

◆ library

DynamicLibrary CeresEngine::VKRenderAPI::library
private

◆ mDebugMessageCallback

DebugMessageCallback CeresEngine::VKRenderAPI::mDebugMessageCallback = nullptr
private

◆ mDebugMessenger

VkDebugUtilsMessengerEXT CeresEngine::VKRenderAPI::mDebugMessenger = VK_NULL_HANDLE
private

◆ mDevice

VKDevicePtr CeresEngine::VKRenderAPI::mDevice
private

◆ mInstance

VkInstance CeresEngine::VKRenderAPI::mInstance
private

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