VolViz
A volume visualization tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
VolViz::Private_::GL::Shader Class Reference

RAII wrapper for OpenGL shader objects. More...

#include <ShaderProgram.h>

+ Collaboration diagram for VolViz::Private_::GL::Shader:

Public Member Functions

 Shader (GLenum type, std::string const &source)
 
 ~Shader ()
 
 Shader (Shader const &)=delete
 
 Shader (Shader &&rhs) noexcept
 
Shaderoperator= (Shader &&rhs) noexcept
 

Private Member Functions

void compile () const
 

Private Attributes

GLuint shader_
 

Friends

class ShaderProgram
 

Detailed Description

RAII wrapper for OpenGL shader objects.

Constructor & Destructor Documentation

VolViz::Private_::GL::Shader::Shader ( GLenum  type,
std::string const &  source 
)
VolViz::Private_::GL::Shader::~Shader ( )
inline
VolViz::Private_::GL::Shader::Shader ( Shader const &  )
delete
VolViz::Private_::GL::Shader::Shader ( Shader &&  rhs)
inlinenoexcept

Member Function Documentation

void VolViz::Private_::GL::Shader::compile ( ) const
private
Shader& VolViz::Private_::GL::Shader::operator= ( Shader &&  rhs)
inlinenoexcept

Friends And Related Function Documentation

friend class ShaderProgram
friend

Member Data Documentation

GLuint VolViz::Private_::GL::Shader::shader_
private

The documentation for this class was generated from the following files: