Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
Shaders::CShaderProgram Class Referenceabstract

#include <Shader.h>

Inheritance diagram for Shaders::CShaderProgram:
Shaders::CGLSLShaderProgram CGLESShader CGLShader Shaders::GL::BaseVideoFilterShader Shaders::GL::BaseYUV2RGBGLSLShader Shaders::GLES::BaseVideoFilterShader Shaders::GLES::BaseYUV2RGBGLSLShader Shaders::GL::ConvolutionFilterShader Shaders::GL::DefaultFilterShader Shaders::GL::StretchFilterShader Shaders::GL::YUV2RGBFilterShader4 Shaders::GL::YUV2RGBProgressiveShader Shaders::GLES::ConvolutionFilterShader Shaders::GLES::DefaultFilterShader Shaders::GLES::YUV2RGBBobShader Shaders::GLES::YUV2RGBFilterShader Shaders::GLES::YUV2RGBProgressiveShader

Public Member Functions

 CShaderProgram ()=default
 
virtual ~CShaderProgram ()
 
virtual bool Enable ()=0
 
virtual void Disable ()=0
 
bool OK () const
 
CVertexShaderVertexShader ()
 
CPixelShaderPixelShader ()
 
virtual bool CompileAndLink ()=0
 
virtual void OnCompiledAndLinked ()
 
virtual bool OnEnabled ()
 
virtual void OnDisabled ()
 
virtual GLuint ProgramHandle ()
 

Protected Attributes

CVertexShaderm_pVP = nullptr
 
CPixelShaderm_pFP = nullptr
 
GLuint m_shaderProgram = 0
 
bool m_ok = false
 

Constructor & Destructor Documentation

◆ CShaderProgram()

Shaders::CShaderProgram::CShaderProgram ( )
default

◆ ~CShaderProgram()

virtual Shaders::CShaderProgram::~CShaderProgram ( )
inlinevirtual

Member Function Documentation

◆ CompileAndLink()

virtual bool Shaders::CShaderProgram::CompileAndLink ( )
pure virtual

Implemented in Shaders::CGLSLShaderProgram.

◆ Disable()

virtual void Shaders::CShaderProgram::Disable ( )
pure virtual

Implemented in Shaders::CGLSLShaderProgram.

◆ Enable()

virtual bool Shaders::CShaderProgram::Enable ( )
pure virtual

Implemented in Shaders::CGLSLShaderProgram.

◆ OK()

bool Shaders::CShaderProgram::OK ( ) const
inline

◆ OnCompiledAndLinked()

◆ OnDisabled()

◆ OnEnabled()

◆ PixelShader()

CPixelShader * Shaders::CShaderProgram::PixelShader ( )
inline

◆ ProgramHandle()

virtual GLuint Shaders::CShaderProgram::ProgramHandle ( )
inlinevirtual

◆ VertexShader()

CVertexShader * Shaders::CShaderProgram::VertexShader ( )
inline

Member Data Documentation

◆ m_ok

bool Shaders::CShaderProgram::m_ok = false
protected

◆ m_pFP

CPixelShader* Shaders::CShaderProgram::m_pFP = nullptr
protected

◆ m_pVP

CVertexShader* Shaders::CShaderProgram::m_pVP = nullptr
protected

◆ m_shaderProgram

GLuint Shaders::CShaderProgram::m_shaderProgram = 0
protected

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