xbmc
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Shaders::GL::BaseYUV2RGBGLSLShader Class Reference
Inheritance diagram for Shaders::GL::BaseYUV2RGBGLSLShader:
Inheritance graph
[legend]
Collaboration diagram for Shaders::GL::BaseYUV2RGBGLSLShader:
Collaboration graph
[legend]

Public Member Functions

 BaseYUV2RGBGLSLShader (bool rect, EShaderFormat format, bool stretch, AVColorPrimaries dst, AVColorPrimaries src, bool toneMap, ETONEMAPMETHOD toneMapMethod, std::shared_ptr< GLSLOutput > output)
 
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, const AVMasteringDisplayMetadata &displayMetadata, bool hasLightMetadata, AVContentLightMetadata lightMetadata)
 
void SetToneMapParam (ETONEMAPMETHOD method, float param)
 
float GetLuminanceValue () const
 
void SetConvertFullColorRange (bool convertFullRange)
 
GLint GetVertexLoc ()
 
GLint GetYcoordLoc ()
 
GLint GetUcoordLoc ()
 
GLint GetVcoordLoc ()
 
void SetMatrices (const GLfloat *p, const GLfloat *m)
 
void SetAlpha (GLfloat alpha)
 
- Public Member Functions inherited from Shaders::CGLSLShaderProgram
 CGLSLShaderProgram (const std::string &vert, const std::string &frag)
 
bool Enable () override
 
void Disable () override
 
bool CompileAndLink () override
 
- Public Member Functions inherited from Shaders::CShaderProgram
bool OK () const
 
CVertexShaderVertexShader ()
 
CPixelShaderPixelShader ()
 
virtual GLuint ProgramHandle ()
 

Protected Member Functions

void OnCompiledAndLinked () override
 
bool OnEnabled () override
 
void OnDisabled () override
 
void Free ()
 
- Protected Member Functions inherited from Shaders::CGLSLShaderProgram
void Free ()
 

Protected Attributes

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
 
ETONEMAPMETHOD m_toneMappingMethod = VS_TONEMAPMETHOD_REINHARD
 
float m_toneMappingParam = 1.0
 
bool m_colorConversion {false}
 
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
 
CConvertMatrix m_convMatrix
 
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_hLuminance = -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
 
- Protected Attributes inherited from Shaders::CGLSLShaderProgram
GLint m_lastProgram
 
bool m_validated = false
 
- Protected Attributes inherited from Shaders::CShaderProgram
CVertexShaderm_pVP = nullptr
 
CPixelShaderm_pFP = nullptr
 
GLuint m_shaderProgram = 0
 
bool m_ok = false
 

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