Kodi Documentation  18.0
Kodi is an open source media player and entertainment hub.
Shaders::YUV2RGBProgressiveShader Class Reference

#include <YUV2RGBShaderGLES.h>

Inheritance diagram for Shaders::YUV2RGBProgressiveShader:
Shaders::BaseYUV2RGBGLSLShader Shaders::BaseYUV2RGBGLSLShader Shaders::BaseYUV2RGBShader Shaders::CGLSLShaderProgram Shaders::CGLSLShaderProgram Shaders::BaseYUV2RGBShader Shaders::CGLSLShaderProgram Shaders::CGLSLShaderProgram Shaders::CShaderProgram Shaders::CShaderProgram Shaders::CShaderProgram Shaders::CShaderProgram Shaders::CShaderProgram Shaders::CShaderProgram

Public Member Functions

 YUV2RGBProgressiveShader (bool rect, EShaderFormat format, bool stretch, AVColorPrimaries dstPrimaries, AVColorPrimaries srcPrimaries, bool toneMap, std::shared_ptr< GLSLOutput > output)
 
 YUV2RGBProgressiveShader (unsigned flags=0, EShaderFormat format=SHADER_NONE)
 
- Public Member Functions inherited from Shaders::BaseYUV2RGBGLSLShader
 BaseYUV2RGBGLSLShader (bool rect, EShaderFormat format, bool stretch, AVColorPrimaries dst, AVColorPrimaries src, bool toneMap, std::shared_ptr< GLSLOutput > output)
 
virtual ~BaseYUV2RGBGLSLShader ()
 
void SetField (int field)
 
void SetWidth (int w)
 
void SetHeight (int h)
 
void SetColParams (AVColorSpace colSpace, int bits, bool limited, int textureBits)
 
void SetBlack (float black)
 
void SetContrast (float contrast)
 
void SetNonLinStretch (float stretch)
 
void SetDisplayMetadata (bool hasDisplayMetadata, AVMasteringDisplayMetadata displayMetadata, bool hasLightMetadata, AVContentLightMetadata lightMetadata)
 
void SetToneMapParam (float param)
 
void SetConvertFullColorRange (bool convertFullRange)
 
GLint GetVertexLoc ()
 
GLint GetYcoordLoc ()
 
GLint GetUcoordLoc ()
 
GLint GetVcoordLoc ()
 
void SetMatrices (const GLfloat *p, const GLfloat *m)
 
void SetAlpha (GLfloat alpha)
 
 BaseYUV2RGBGLSLShader (unsigned flags, EShaderFormat format)
 
 ~BaseYUV2RGBGLSLShader () override
 
void SetField (int field) override
 
void SetWidth (int w) override
 
void SetHeight (int h) override
 
void SetBlack (float black) override
 
void SetContrast (float contrast) override
 
void SetConvertFullColorRange (bool convertFullRange) override
 
GLint GetVertexLoc () override
 
GLint GetYcoordLoc () override
 
GLint GetUcoordLoc () override
 
GLint GetVcoordLoc () override
 
void SetMatrices (const GLfloat *p, const GLfloat *m) override
 
void SetAlpha (GLfloat alpha) override
 
- Public Member Functions inherited from Shaders::BaseYUV2RGBShader
 BaseYUV2RGBShader ()
 
 ~BaseYUV2RGBShader () override=default
 
- Public Member Functions inherited from Shaders::CShaderProgram
 CShaderProgram ()=default
 
virtual ~CShaderProgram ()
 
bool OK () const
 
CVertexShaderVertexShader ()
 
CPixelShaderPixelShader ()
 
virtual GLuint ProgramHandle ()
 
- Public Member Functions inherited from Shaders::CGLSLShaderProgram
 CGLSLShaderProgram ()
 
 CGLSLShaderProgram (const std::string &vert, const std::string &frag)
 
 ~CGLSLShaderProgram () override
 
bool Enable () override
 
void Disable () override
 
bool CompileAndLink () override
 

Additional Inherited Members

- Protected Member Functions inherited from Shaders::BaseYUV2RGBGLSLShader
void OnCompiledAndLinked () override
 
bool OnEnabled () override
 
void OnDisabled () override
 
void Free ()
 
void OnCompiledAndLinked () override
 
bool OnEnabled () override
 
void OnDisabled () override
 
void Free ()
 
- Protected Member Functions inherited from Shaders::CGLSLShaderProgram
void Free ()
 
- Protected Attributes inherited from Shaders::BaseYUV2RGBGLSLShader
bool m_convertFullRange
 
EShaderFormat m_format
 
int m_width
 
int m_height
 
int m_field
 
bool m_hasDisplayMetadata = false
 
AVMasteringDisplayMetadata m_displayMetadata
 
bool m_hasLightMetadata = false
 
AVContentLightMetadata m_lightMetadata
 
bool m_toneMapping = false
 
float m_toneMappingParam = 1.0
 
float m_black
 
float m_contrast
 
float m_stretch
 
const GLfloat * m_proj = nullptr
 
const GLfloat * m_model = nullptr
 
GLfloat m_alpha = 1.0f
 
std::string m_defines
 
std::shared_ptr< Shaders::GLSLOutputm_glslOutput
 
std::shared_ptr< CConvertMatrixm_pConvMatrix
 
GLint m_hYTex = -1
 
GLint m_hUTex = -1
 
GLint m_hVTex = -1
 
GLint m_hYuvMat = -1
 
GLint m_hStretch = -1
 
GLint m_hStep = -1
 
GLint m_hGammaSrc = -1
 
GLint m_hGammaDstInv = -1
 
GLint m_hPrimMat = -1
 
GLint m_hToneP1 = -1
 
GLint m_hCoefsDst = -1
 
GLint m_hVertex = -1
 
GLint m_hYcoord = -1
 
GLint m_hUcoord = -1
 
GLint m_hVcoord = -1
 
GLint m_hProj = -1
 
GLint m_hModel = -1
 
GLint m_hAlpha = -1
 
unsigned m_flags
 
GLint m_hMatrix
 
- Protected Attributes inherited from Shaders::CShaderProgram
CVertexShaderm_pVP = nullptr
 
CPixelShaderm_pFP = nullptr
 
GLuint m_shaderProgram = 0
 
bool m_ok = false
 
- Protected Attributes inherited from Shaders::CGLSLShaderProgram
GLint m_lastProgram
 
bool m_validated = false
 

Constructor & Destructor Documentation

§ YUV2RGBProgressiveShader() [1/2]

YUV2RGBProgressiveShader::YUV2RGBProgressiveShader ( bool  rect,
EShaderFormat  format,
bool  stretch,
AVColorPrimaries  dstPrimaries,
AVColorPrimaries  srcPrimaries,
bool  toneMap,
std::shared_ptr< GLSLOutput output 
)

§ YUV2RGBProgressiveShader() [2/2]

YUV2RGBProgressiveShader::YUV2RGBProgressiveShader ( unsigned  flags = 0,
EShaderFormat  format = SHADER_NONE 
)

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