Faro Engine 0.0.0.b519570 (main)
Loading...
Searching...
No Matches
GraphicsAdapter.hpp
Go to the documentation of this file.
1#pragma once
4#include <GraphicsBuffer.hpp>
5#include <GraphicsFence.hpp>
10#include <GraphicsSemaphore.hpp>
11
12namespace Faro
13{
25
27 {
28 public:
29 virtual void Init(GraphicsAdapterDesc&) = 0;
30 virtual void Destroy() = 0;
31
33
35
36 template<class T>
38 {
39 T* bufferContainer = MemoryManager::New<T>();
40 bufferContainer->Init(this, createDesc);
41 return bufferContainer;
42 }
43
45 {
46 return CreateBufferContainer<GraphicsBufferContainer>(createDesc);
47 }
48
49 virtual GraphicsFence* CreateFence() = 0;
50
52
54
56 };
57}
Definition GraphicsAdapter.hpp:27
virtual GraphicsFence * CreateFence()=0
virtual void Init(GraphicsAdapterDesc &)=0
virtual GraphicsSemaphore * CreateSyncPoint()
Definition GraphicsAdapter.cpp:5
T * CreateBufferContainer(GraphicsBufferCreateDesc createDesc)
Definition GraphicsAdapter.hpp:37
virtual GraphicsCommandList * CreateCommandList()=0
virtual GraphicsPipeline * CreatePipeline(GraphicsPipelineDesc desc)=0
virtual GraphicsSwapchain * CreateSwapchain(Window *window)=0
virtual void Destroy()=0
GraphicsBufferContainer * CreateBufferContainer(GraphicsBufferCreateDesc createDesc)
Definition GraphicsAdapter.hpp:44
virtual GraphicsBuffer * CreateBuffer(GraphicsBufferCreateDesc createDesc)=0
Definition GraphicsBufferContainer.hpp:7
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 String.hpp:12
Definition Window.hpp:29
Definition Array.hpp:8
uint64_t uint64
Definition Primitives.hpp:15
Definition GraphicsAdapter.hpp:15
String name
Definition GraphicsAdapter.hpp:16
void * payload
Definition GraphicsAdapter.hpp:23
uint64 vramTotal
Definition GraphicsAdapter.hpp:21
uint64 vramDedicated
Definition GraphicsAdapter.hpp:19
String manufacturer
Definition GraphicsAdapter.hpp:17
uint64 vramShared
Definition GraphicsAdapter.hpp:20
Definition GraphicsBufferDesc.hpp:90
Describes a graphics pipeline.
Definition GraphicsPipeline.hpp:11