You.i Engine
YiGraphicsComponentsD3D11.h
Go to the documentation of this file.
1 // © You i Labs Inc. 2000-2017. All rights reserved.
2 #ifndef _YI_GRAPHICS_COMPONENTS_DIRECT3D11_H_
3 #define _YI_GRAPHICS_COMPONENTS_DIRECT3D11_H_
4 
5 #include "YiGraphics.h"
6 #include "YiGraphicsComponents.h"
7 
17 {
18 #if defined(YI_UWP)
19  typedef IDXGISwapChain1 D3D11SwapChain;
20 #else
21  typedef IDXGISwapChain D3D11SwapChain;
22 #endif
23 
24 public:
26  {
27  m_driverType = D3D_DRIVER_TYPE_NULL;
28  m_featureLevel = D3D_FEATURE_LEVEL_11_0;
29  m_pd3dDevice = NULL;
30  m_pImmediateContext = NULL;
31  m_pSwapChain = NULL;
32  m_pRenderTargetView = NULL;
33  m_pDepthStencil = NULL;
34  m_pDepthStencilView = NULL;
35  m_pWindow = NULL;
36  }
38 
39  D3D_DRIVER_TYPE &GetDriverType(){return m_driverType;}
40  void SetDriverType(D3D_DRIVER_TYPE value){m_driverType = value;}
41  D3D_FEATURE_LEVEL &GetFeatureLevel(){return m_featureLevel;}
42  void SetFeatureLevel(D3D_FEATURE_LEVEL value){m_featureLevel = value;}
43  ID3D11Device *&GetD3DDevice(){return m_pd3dDevice;}
44  void SetD3DDevice(ID3D11Device *value){m_pd3dDevice = value;}
45  ID3D11DeviceContext *&GetImmediateContext(){return m_pImmediateContext;}
46  void SetImmediateContext(ID3D11DeviceContext *value){m_pImmediateContext = value;}
47  D3D11SwapChain *&GetSwapChain(){return m_pSwapChain;}
48  void SetSwapChain(D3D11SwapChain *value){m_pSwapChain = value;}
49  ID3D11RenderTargetView *&GetRenderTargetView(){return m_pRenderTargetView;}
50  void SetRenderTargetView(ID3D11RenderTargetView *value){m_pRenderTargetView = value;}
51  ID3D11Texture2D *&GetDepthStencil(){return m_pDepthStencil;}
52  void SetDepthStencil(ID3D11Texture2D *value){m_pDepthStencil = value;}
53  ID3D11DepthStencilView *&GetDepthStencilView(){return m_pDepthStencilView;}
54  void SetDepthStencilView(ID3D11DepthStencilView *value){m_pDepthStencilView = value;}
55  HWND &GetWindow(){return m_pWindow;}
56  void SetWindow(HWND value){m_pWindow = value;}
57 
58 private:
59  D3D_DRIVER_TYPE m_driverType;
60  D3D_FEATURE_LEVEL m_featureLevel;
61  ID3D11Device *m_pd3dDevice;
62  ID3D11DeviceContext *m_pImmediateContext;
63  D3D11SwapChain *m_pSwapChain;
64  ID3D11RenderTargetView *m_pRenderTargetView;
65  ID3D11Texture2D *m_pDepthStencil;
66  ID3D11DepthStencilView *m_pDepthStencilView;
67  HWND m_pWindow;
68 };
69 
72 #endif // _YI_GRAPHICS_COMPONENTS_DIRECT3D11_H_
void SetD3DDevice(ID3D11Device *value)
Definition: YiGraphicsComponentsD3D11.h:44
Definition: YiGraphicsComponents.h:20
D3D_DRIVER_TYPE & GetDriverType()
Definition: YiGraphicsComponentsD3D11.h:39
D3D_FEATURE_LEVEL & GetFeatureLevel()
Definition: YiGraphicsComponentsD3D11.h:41
ID3D11Texture2D *& GetDepthStencil()
Definition: YiGraphicsComponentsD3D11.h:51
HWND & GetWindow()
Definition: YiGraphicsComponentsD3D11.h:55
void SetRenderTargetView(ID3D11RenderTargetView *value)
Definition: YiGraphicsComponentsD3D11.h:50
ID3D11DepthStencilView *& GetDepthStencilView()
Definition: YiGraphicsComponentsD3D11.h:53
void SetDepthStencil(ID3D11Texture2D *value)
Definition: YiGraphicsComponentsD3D11.h:52
ID3D11Device *& GetD3DDevice()
Definition: YiGraphicsComponentsD3D11.h:43
ID3D11RenderTargetView *& GetRenderTargetView()
Definition: YiGraphicsComponentsD3D11.h:49
CYIGraphicsComponentsD3D11()
Definition: YiGraphicsComponentsD3D11.h:25
void SetDriverType(D3D_DRIVER_TYPE value)
Definition: YiGraphicsComponentsD3D11.h:40
void SetImmediateContext(ID3D11DeviceContext *value)
Definition: YiGraphicsComponentsD3D11.h:46
void SetSwapChain(D3D11SwapChain *value)
Definition: YiGraphicsComponentsD3D11.h:48
void SetFeatureLevel(D3D_FEATURE_LEVEL value)
Definition: YiGraphicsComponentsD3D11.h:42
~CYIGraphicsComponentsD3D11()
Definition: YiGraphicsComponentsD3D11.h:37
D3D11SwapChain *& GetSwapChain()
Definition: YiGraphicsComponentsD3D11.h:47
void SetWindow(HWND value)
Definition: YiGraphicsComponentsD3D11.h:56
Definition: YiGraphicsComponentsD3D11.h:16
ID3D11DeviceContext *& GetImmediateContext()
Definition: YiGraphicsComponentsD3D11.h:45
void SetDepthStencilView(ID3D11DepthStencilView *value)
Definition: YiGraphicsComponentsD3D11.h:54