Faro Engine 0.0.0.b519570 (main)
Loading...
Searching...
No Matches
GraphicsAdapterVK.hpp
Go to the documentation of this file.
1#pragma once
2#include <GraphicsAdapter.hpp>
3#include "Vulkan.hpp"
4
5namespace Faro
6{
8 {
9 public:
10 void Init(GraphicsAdapterDesc&) override;
11 void Destroy() override;
12
14
16
17 GraphicsFence* CreateFence() override;
18
19 GraphicsSwapchain* CreateSwapchain(Window* window) override;
20
22
24
25 VkPhysicalDevice GetPhysicalDevice();
26
27 VkDevice GetDevice();
28
29 VkQueue GetQueue();
30
32
34
36
37 private:
38 static int32 GetMemoryIndex(const VkPhysicalDeviceMemoryProperties& memoryProperties, VkMemoryPropertyFlags memoryFlags);
39
40 static Array<char*> GetDeviceExtensions();
41 bool VerifyDeviceExtensions(VkPhysicalDevice device);
42
43 private:
44 VkPhysicalDevice physicalDevice = nullptr;
45 VkDevice device = nullptr;
46 VkQueue queue = nullptr;
47 uint32 graphicsQueue = 0;
48
49 int32 memoryIndexRemote = -1;
50 int32 memoryIndexUpload = -1;
51
52#ifndef NDEBUG
53 VkDebugUtilsMessengerEXT debugMessenger = nullptr;
54#endif
55 };
56}
Definition Array.hpp:11
Definition GraphicsAdapterVK.hpp:8
GraphicsFence * CreateFence() override
Definition GraphicsAdapterVK.cpp:177
GraphicsPipeline * CreatePipeline(GraphicsPipelineDesc desc) override
Definition GraphicsAdapterVK.cpp:191
GraphicsSwapchain * CreateSwapchain(Window *window) override
Definition GraphicsAdapterVK.cpp:184
uint32 GetMemoryIndexRemote()
Definition GraphicsAdapterVK.cpp:225
GraphicsCommandList * CreateCommandList() override
Definition GraphicsAdapterVK.cpp:163
GraphicsSemaphore * CreateSyncPoint() override
Definition GraphicsAdapterVK.cpp:198
uint32 GetQueueIndex()
Definition GraphicsAdapterVK.cpp:220
GraphicsBuffer * CreateBuffer(GraphicsBufferCreateDesc createDesc) override
Definition GraphicsAdapterVK.cpp:170
uint32 GetMemoryIndexUpload()
Definition GraphicsAdapterVK.cpp:230
VkDevice GetDevice()
Definition GraphicsAdapterVK.cpp:210
VkQueue GetQueue()
Definition GraphicsAdapterVK.cpp:215
void Init(GraphicsAdapterDesc &) override
Definition GraphicsAdapterVK.cpp:28
VkPhysicalDevice GetPhysicalDevice()
Definition GraphicsAdapterVK.cpp:205
void Destroy() override
Definition GraphicsAdapterVK.cpp:145
Definition GraphicsAdapter.hpp:27
A buffer storing graphics related data. Created by GraphicsAdapter::CreateBuffer.
Definition GraphicsBuffer.hpp:20
Definition GraphicsCommandList.hpp:10
Marker to be placed on an adapter command queue. Allows for synchronization between CPU and graphics ...
Definition GraphicsFence.hpp:8
Graphics pipeline state object.
Definition GraphicsPipeline.hpp:46
Definition GraphicsSemaphore.hpp:7
Definition GraphicsSwapchain.hpp:16
Definition Window.hpp:29
Definition Array.hpp:8
int32_t int32
Definition Primitives.hpp:13
uint32_t uint32
Definition Primitives.hpp:12
Definition GraphicsAdapter.hpp:15
Definition GraphicsBufferDesc.hpp:90
Describes a graphics pipeline.
Definition GraphicsPipeline.hpp:11