Initial commit
This commit is contained in:
66
Include/ZRenderer/ZOpenGLShader.hpp
Normal file
66
Include/ZRenderer/ZOpenGLShader.hpp
Normal file
@@ -0,0 +1,66 @@
|
||||
/*
|
||||
ZOpenGLShader.hpp
|
||||
Author: Chris Ertel <crertel@762studios.com>,
|
||||
James Russell <jcrussell@762studios.com>
|
||||
Created: 04/20/2011
|
||||
|
||||
Purpose:
|
||||
|
||||
OpenGL implementation of the shader interface.
|
||||
|
||||
License:
|
||||
|
||||
TODO
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef _ZOPENGLSHADER_HPP
|
||||
#define _ZOPENGLSHADER_HPP
|
||||
|
||||
#include <ZRenderer/ZShaderBase.hpp>
|
||||
|
||||
#include <ZUtil/ZUtil.hpp>
|
||||
|
||||
#include <SST/SST_GLAPI.h>
|
||||
|
||||
//Forward Declarations
|
||||
class ZOpenGLRenderer;
|
||||
|
||||
/*
|
||||
OpenGL Shader Implementation.
|
||||
*/
|
||||
class ZOpenGLShader : public ZShaderBase
|
||||
{
|
||||
private:
|
||||
DISABLE_COPY_AND_ASSIGN(ZOpenGLShader);
|
||||
|
||||
protected:
|
||||
//The renderer that created us
|
||||
ZOpenGLRenderer* Renderer;
|
||||
|
||||
//Method used to compile the shader
|
||||
static void Compile_(ZThread* _thread, void* _shader);
|
||||
|
||||
public:
|
||||
//OpenGL Shader Handle
|
||||
GLuint GLHandle;
|
||||
|
||||
/*
|
||||
Constructor.
|
||||
|
||||
@param _renderer - the current renderer instance
|
||||
@param _type - the type of shader
|
||||
*/
|
||||
ZOpenGLShader(ZOpenGLRenderer* _renderer, ZShaderType _type);
|
||||
|
||||
/*
|
||||
Destructor.
|
||||
*/
|
||||
virtual ~ZOpenGLShader();
|
||||
|
||||
//Subclass Override
|
||||
virtual bool Compile();
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user