Sleeping Wombat GUI  0.100
swGUI
IGraphicAPIInitializer.h
Go to the documentation of this file.
1 #pragma once
2 
13 
14 #include <string>
15 
16 
17 
35 {
39  bool FullScreen;
45 
46 // ================================ //
47 //
49  {
51  }
52 
54  {
55  WindowWidth = 1024;
56  WindowHeight = 768;
57  FullScreen = false;
58  NumBuffers = 1;
59  SamplesCount = 1;
60  SamplesQuality = 0;
63  }
64 };
65 
70 {
74  bool CreateSwapChain; // You can create SwapChain and main render target later.
75 
76 // ================================ //
77 //
79  {
81  }
82 
84  {
85  SingleThreaded = true;
86  UseDebugLayer = false;
87  CreateSwapChain = true;
88  }
89 };
90 
98 {
99 private:
100 protected:
101 public:
102  virtual ~IGraphicAPIInitializer() = default;
103 
104  virtual IRenderer* CreateRenderer ( RendererUsage usage ) = 0;
105  virtual SwapChain* CreateSwapChain ( SwapChainInitData& swapChainData ) = 0;
106  virtual bool InitAPI ( GraphicAPIInitData& initData ) = 0;
107  virtual void ReleaseAPI () = 0;
108  virtual void* GetRenderTargetHandle ( RenderTargetObject* renderTarget ) = 0;
109 
110  // Future
111  // virtual std::wstring GetErrorString() = 0;
112 };
GraphicAPIInitData()
Definition: IGraphicAPIInitializer.h:78
virtual SwapChain * CreateSwapChain(SwapChainInitData &swapChainData)=0
uint16_t uint16
Definition: TypesDefinitions.h:29
DepthStencilFormat DepthStencilFormat
Definition: IGraphicAPIInitializer.h:43
void * WindowHandler
Definition: SwapChain.h:6
DepthStencilFormat
Typy dostępne dla bufora głębokości.
Definition: GraphicAPIConstants.h:141
ResourceFormat BackBufferFormat
Definition: IGraphicAPIInitializer.h:44
Interfejs klasy do inicjowania API graficznego.
Definition: IGraphicAPIInitializer.h:97
bool SingleThreaded
Definition: IGraphicAPIInitializer.h:72
bool FullScreen
Definition: IGraphicAPIInitializer.h:39
ResourceFormat
Specyfikuje format tekstury bądź innego zasobu.
Definition: GraphicAPIConstants.h:153
virtual void * GetRenderTargetHandle(RenderTargetObject *renderTarget)=0
void DefaultSettings()
Definition: IGraphicAPIInitializer.h:53
SwapChainInitData SwapChain
Definition: IGraphicAPIInitializer.h:71
Klasa interfejsu renderera.
Definition: IRenderer.h:29
virtual void ReleaseAPI()=0
virtual IRenderer * CreateRenderer(RendererUsage usage)=0
Plik zawiera definicje podstawowych typów zmiennych.
RendererUsage
Sposób użycia renderera.
Definition: IRenderer.h:18
uint8 SamplesQuality
Definition: IGraphicAPIInitializer.h:41
void DefaultSettings()
Definition: IGraphicAPIInitializer.h:83
uint8_t uint8
Definition: TypesDefinitions.h:27
virtual ~IGraphicAPIInitializer()=default
uint16 WindowHeight
Definition: IGraphicAPIInitializer.h:37
bool UseDebugLayer
Definition: IGraphicAPIInitializer.h:73
SwapChainInitData()
Definition: IGraphicAPIInitializer.h:48
Klasa dla render targetów.Klasa umożliwia pobranie jednej z tekstur składowych i udostępnienie dla sh...
Definition: MeshResources.h:301
Przechowuje informacje potrzebne do SwapChaina. Parametr dla funkcji IGraphicAPIInitializer::CreateSw...
Definition: IGraphicAPIInitializer.h:34
Przechowuje informacje potrzebne do inicjalizacji API graficznego. Parametr dla funkcji IGraphicAPIIn...
Definition: IGraphicAPIInitializer.h:69
uint8 SamplesCount
Definition: IGraphicAPIInitializer.h:40
Definition: SwapChain.h:33
bool CreateSwapChain
Definition: IGraphicAPIInitializer.h:74
uint8 NumBuffers
Definition: IGraphicAPIInitializer.h:42
WindowHandler WindowHandle
Definition: IGraphicAPIInitializer.h:38
virtual bool InitAPI(GraphicAPIInitData &initData)=0
uint16 WindowWidth
Definition: IGraphicAPIInitializer.h:36