]> git.tdb.fi Git - libs/gl.git/blobdiff - source/shader.cpp
Don't expose the shader type enum
[libs/gl.git] / source / shader.cpp
index b0cf5a3ec63d3f6ed93c4727b955f5a187232ad3..0da1a6e9df448028cc9518e23c12207dbf751723 100644 (file)
@@ -9,12 +9,12 @@ using namespace std;
 namespace Msp {
 namespace GL {
 
-Shader::Shader(ShaderType t)
+Shader::Shader(GLenum t)
 {
        init(t);
 }
 
-Shader::Shader(ShaderType t, const string &src)
+Shader::Shader(GLenum t, const string &src)
 {
        init(t);
 
@@ -22,13 +22,13 @@ Shader::Shader(ShaderType t, const string &src)
        compile();
 }
 
-void Shader::init(ShaderType t)
+void Shader::init(GLenum t)
 {
        compiled = false;
 
-       if(t==FRAGMENT_SHADER)
+       if(t==GL_FRAGMENT_SHADER)
                static Require _req(ARB_fragment_shader);
-       else if(t==VERTEX_SHADER)
+       else if(t==GL_VERTEX_SHADER)
                static Require _req(ARB_vertex_shader);
 
        id = glCreateShader(t);
@@ -74,5 +74,23 @@ string Shader::get_info_log() const
        return log;
 }
 
+
+VertexShader::VertexShader():
+       Shader(GL_VERTEX_SHADER)
+{ }
+
+VertexShader::VertexShader(const string &src):
+       Shader(GL_VERTEX_SHADER, src)
+{ }
+
+
+FragmentShader::FragmentShader():
+       Shader(GL_FRAGMENT_SHADER)
+{ }
+
+FragmentShader::FragmentShader(const string &src):
+       Shader(GL_FRAGMENT_SHADER, src)
+{ }
+
 } // namespace GL
 } // namespace Msp