8 #ifndef META_OCEAN_RENDERING_GLES_SHADER_H
9 #define META_OCEAN_RENDERING_GLES_SHADER_H
22 namespace GLESceneGraph
56 inline GLuint id()
const;
65 bool compile(
const GLenum type,
const std::string& code, std::string& message);
75 bool compile(
const GLenum type,
const std::vector<const GLchar*>& codes,
const std::vector<GLint>& lengths, std::string& message);
81 inline bool isNull()
const;
87 explicit inline operator bool()
const;
108 inline GLESShader::operator bool()
const
This template class implements a object reference with an internal reference counter.
Definition: base/ObjectRef.h:58
This class is the base class for all OpenGL ES shader container.
Definition: GLESShader.h:39
bool compile(const GLenum type, const std::string &code, std::string &message)
Compiles the shader using the given shader code.
GLuint id_
OpenGL ES shader id.
Definition: GLESShader.h:92
GLESShader()=default
Creates a new shader.
bool isNull() const
Returns whether this shader holds no valid code.
Definition: GLESShader.h:103
GLuint id() const
Returns the id of this OpenGL ES shader.
Definition: GLESShader.h:98
bool compile(const GLenum type, const std::vector< const GLchar * > &codes, const std::vector< GLint > &lengths, std::string &message)
Compiles the shader using the given shader code.
virtual ~GLESShader()
Destructs a vertex shader object.
Ocean::ObjectRef< GLESShader > GLESShaderRef
Definition of an object reference for shader containers.
Definition: GLESShader.h:26
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15