CShaderProgram.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 
9 namespace ion
10 {
11  namespace Graphics
12  {
13  namespace GL
14  {
15 
17  {
18  public:
19 
23 
24  void Link();
25 
26 
27  uint Handle = 0;
28  bool Linked = false;
29 
30  map<string, pair<uint, uint>> Attributes;
31  map<string, uint> Uniforms;
32 
33  };
34  }
35  }
36 }
void SetPixelStage(SharedPointer< IPixelShader > PixelShader)
Definition: CShaderProgram.cpp:52
void SetVertexStage(SharedPointer< IVertexShader > VertexShader)
Definition: CShaderProgram.cpp:36
std::shared_ptr< T > SharedPointer
Definition: ionSmartPointer.h:22
Definition: IShaderProgram.h:43
void SetGeometryStage(SharedPointer< IGeometryShader > GeometryShader)
Definition: CShaderProgram.cpp:44
unsigned int uint
Definition: ionTypes.h:99
map< string, pair< uint, uint > > Attributes
Definition: CShaderProgram.h:30
uint Handle
Definition: CShaderProgram.h:27
Definition: CShaderProgram.h:16
Definition: CCatmullRomAdvancedSplineInterpolator.h:7
void Link()
Definition: CShaderProgram.cpp:60
map< string, uint > Uniforms
Definition: CShaderProgram.h:31
bool Linked
Definition: CShaderProgram.h:28