1 #ifndef BLANK_SHADER_HPP_
2 #define BLANK_SHADER_HPP_
13 explicit Shader(GLenum type);
17 Shader &operator =(Shader &&);
19 Shader(const Shader &) = delete;
20 Shader &operator =(const Shader &) = delete;
22 void Source(const GLchar *src);
24 bool Compiled() const;
25 void Log(std::ostream &) const;
27 void AttachToProgram(GLuint id) const;
41 Program(const Program &) = delete;
42 Program &operator =(const Program &) = delete;
44 void Attach(Shader &);
47 void Log(std::ostream &) const;
49 GLint UniformLocation(const GLchar *name) const;
51 void Use() const { glUseProgram(handle); }