Ocular Engine
D3D11GeometryShader.hpp
1 
17 #pragma once
18 #ifndef __H__OCULAR_D3D11_GRAPHICS_GEOMETRY_SHADER__H__
19 #define __H__OCULAR_D3D11_GRAPHICS_GEOMETRY_SHADER__H__
20 
21 #include "Graphics/Shader/GeometryShader.hpp"
22 #include <d3d11.h>
23 
24 //------------------------------------------------------------------------------------------
25 
30 namespace Ocular
31 {
36  namespace Graphics
37  {
42  {
43  public:
44 
45  D3D11GeometryShader(ID3D11DeviceContext* context);
47 
48  virtual void unload() override;
49  virtual void bind() override;
50  virtual void unbind() override;
51 
60  void setD3DShader(ID3D11GeometryShader* shader);
61 
65  ID3D11GeometryShader* getD3DShader();
66 
75  void setD3DBlob(ID3DBlob* blob);
76 
80  ID3DBlob* getD3DBlob();
81 
82  protected:
83 
84  ID3D11DeviceContext* m_D3DDeviceContext;
85  ID3D11GeometryShader* m_D3DShader;
86  ID3DBlob* m_D3DBlob;
87 
88  private:
89  };
90  }
94 }
99 //------------------------------------------------------------------------------------------
100 
101 #endif
virtual void unbind() override
Definition: D3D11GeometryShader.cpp:75
void setD3DShader(ID3D11GeometryShader *shader)
Definition: D3D11GeometryShader.cpp:85
virtual void unload() override
Definition: D3D11GeometryShader.cpp:48
ID3D11GeometryShader * getD3DShader()
Definition: D3D11GeometryShader.cpp:95
virtual void bind() override
Definition: D3D11GeometryShader.cpp:65
Note: Once this library is made dynamic, this will no longer be needed.
Definition: Common.hpp:70
void setD3DBlob(ID3DBlob *blob)
Definition: D3D11GeometryShader.cpp:100
ID3DBlob * getD3DBlob()
Definition: D3D11GeometryShader.cpp:110
Definition: D3D11GeometryShader.hpp:41
Definition: GeometryShader.hpp:40