CGraphicsContext.h
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include <ionCore.h>
5 #include <ionMath.h>
6 #include <ionGraphics.h>
7 
8 #include "CShaderProgram.h"
9 #include "CVertexBuffer.h"
10 #include "CIndexBuffer.h"
11 
12 
13 namespace ion
14 {
15  namespace Graphics
16  {
17  namespace GL
18  {
19 
21  {
22 
23  public:
24 
26 
28 
31 
33  void DrawInstanced(SharedPointer<IPipelineState> State, uint const InstanceCount);
34 
35  CWindow * Window = nullptr;
36 
37  protected:
38 
39  void InternalBindUniform(uint const Handle, SharedPointer<IUniform const> const Uniform);
40 
43 
44  };
45 
46  }
47  }
48 }
void InternalDrawTeardown(SharedPointer< IPipelineState > State)
Definition: CGraphicsContext.cpp:254
CGraphicsContext(CWindow *Window)
Definition: CGraphicsContext.cpp:26
std::shared_ptr< T > SharedPointer
Definition: ionSmartPointer.h:22
CWindow * Window
Definition: CGraphicsContext.h:35
void InternalDrawSetup(SharedPointer< IPipelineState > State)
Definition: CGraphicsContext.cpp:174
Definition: IGraphicsContext.h:16
void DrawInstanced(SharedPointer< IPipelineState > State, uint const InstanceCount)
Definition: CGraphicsContext.cpp:60
unsigned int uint
Definition: ionTypes.h:99
Definition: CCatmullRomAdvancedSplineInterpolator.h:7
void InternalBindUniform(uint const Handle, SharedPointer< IUniform const > const Uniform)
Definition: CGraphicsContext.cpp:69
Definition: CWindow.h:17
SharedPointer< IFrameBuffer > CreateFrameBuffer()
Definition: CGraphicsContext.cpp:31
SharedPointer< IRenderTarget > GetBackBuffer()
Definition: CGraphicsContext.cpp:21
void Draw(SharedPointer< IPipelineState > State)
Definition: CGraphicsContext.cpp:44
Definition: CGraphicsContext.h:20
SharedPointer< IPipelineState > CreatePipelineState()
Definition: CGraphicsContext.cpp:36