70 const std::string& aFragmentShaderLabel)
void releaseComputeSourceMemory()
Release the memory held by the compute shader.
void releaseFragmentSourceMemory()
Release the memory held by the fragment shader.
unsigned int m_shader_program_id
ID of the shader program.
int m_vertex_source_number_of_lines
Number of line of the vertex shader.
void setLabel(const std::string &aComputeShaderLabel)
Set the compute shader label. This is useful for debugging.
bool isValid() const
Accessor on the validity status of the shader.
char ** m_fragment_source
Source code of the fragment shader.
std::string m_vertex_shader_label
Label of the vertex shader.
char ** m_vertex_source
Source code of the vertex shader.
int m_fragment_source_number_of_lines
Number of line of the fragment shader.
int m_compute_source_number_of_lines
Number of line of the vertex shader.
std::string m_compute_shader_label
Label of the compute shader.
unsigned int getProgramHandle() const
Accessor on the shader program handle.
char ** m_compute_source
Source code of the vertex shader.
void releaseSourceMemory(int &aLineNumber, char **&aShaderSource)
Release the memory held by the vertex shader or the fragment shader.
std::string m_fragment_shader_label
Label of the fragment shader.
void setLabels(const std::string &aVertexShaderLabel, const std::string &aFragmentShaderLabel)
Set the vertex and fragment shader labels. This is useful for debugging.
void releaseVertexSourceMemory()
Release the memory held by the vertex shader.