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

#include <RenderSystemGLES.h>

Inheritance diagram for CRenderSystemGLES:
CRenderSystemBase CWinSystemAndroidGLESContext CWinSystemIOS CWinSystemTVOS KODI::WINDOWING::GBM::CWinSystemGbmGLESContext KODI::WINDOWING::WAYLAND::CWinSystemWaylandEGLContextGLES KODI::WINDOWING::X11::CWinSystemX11GLESContext

Public Member Functions

 CRenderSystemGLES ()
 
 ~CRenderSystemGLES () override=default
 
bool InitRenderSystem () override
 
bool DestroyRenderSystem () override
 
bool ResetRenderSystem (int width, int height) override
 
bool BeginRender () override
 
bool EndRender () override
 
void PresentRender (bool rendered, bool videoLayer) override
 
void InvalidateColorBuffer () override
 
bool ClearBuffers (KODI::UTILS::COLOR::Color color) override
 
bool IsExtSupported (const char *extension) const override
 
void SetVSync (bool vsync)
 
void ResetVSync ()
 
void SetViewPort (const CRect &viewPort) override
 
void GetViewPort (CRect &viewPort) override
 
bool ScissorsCanEffectClipping () override
 
CRect ClipRectToScissorRect (const CRect &rect) override
 
void SetScissors (const CRect &rect) override
 
void ResetScissors () override
 
void SetDepthCulling (DepthCulling culling) override
 
void CaptureStateBlock () override
 
void ApplyStateBlock () override
 
void SetCameraPosition (const CPoint &camera, int screenWidth, int screenHeight, float stereoFactor=0.0f) override
 
bool SupportsStereo (RenderStereoMode mode) const override
 
void Project (float &x, float &y, float &z) override
 
std::string GetShaderPath (const std::string &filename) override
 
void InitialiseShaders ()
 
void ReleaseShaders ()
 
void EnableGUIShader (ShaderMethodGLES method)
 
void DisableGUIShader ()
 
GLint GUIShaderGetPos ()
 
GLint GUIShaderGetCol ()
 
GLint GUIShaderGetCoord0 ()
 
GLint GUIShaderGetCoord1 ()
 
GLint GUIShaderGetUniCol ()
 
GLint GUIShaderGetCoord0Matrix ()
 
GLint GUIShaderGetField ()
 
GLint GUIShaderGetStep ()
 
GLint GUIShaderGetContrast ()
 
GLint GUIShaderGetBrightness ()
 
GLint GUIShaderGetModel ()
 
GLint GUIShaderGetMatrix ()
 
GLint GUIShaderGetClip ()
 
GLint GUIShaderGetCoordStep ()
 
GLint GUIShaderGetDepth ()
 
- Public Member Functions inherited from CRenderSystemBase
 CRenderSystemBase ()
 
virtual ~CRenderSystemBase ()
 
virtual void RestoreViewPort ()
 
virtual void SetStereoMode (RenderStereoMode mode, RenderStereoView view)
 
void GetRenderVersion (unsigned int &major, unsigned int &minor) const
 
const std::string & GetRenderVendor () const
 
const std::string & GetRenderRenderer () const
 
const std::string & GetRenderVersionString () const
 
virtual bool SupportsNPOT (bool dxt) const
 
unsigned int GetMaxTextureSize () const
 
unsigned int GetMinDXTPitch () const
 
virtual void ShowSplash (const std::string &message)
 
virtual void OnAdvancedSettingsLoaded ()
 Call when the cached advanced settings values need to be refreshed. note: may execute on a different thread.
 
virtual bool GetEnabledFrontToBackRendering ()
 
virtual ClearFunction GetClearFunction ()
 
virtual bool GetShowSplashImage ()
 

Protected Member Functions

virtual void SetVSyncImpl (bool enable)=0
 
virtual void PresentRenderImpl (bool rendered)=0
 
void CalculateMaxTexturesize ()
 

Protected Attributes

bool m_bVsyncInit {false}
 
int m_width
 
int m_height
 
std::string m_RenderExtensions
 
std::map< ShaderMethodGLES, std::unique_ptr< CGLESShader > > m_pShader
 
ShaderMethodGLES m_method = ShaderMethodGLES::SM_DEFAULT
 
GLint m_viewPort [4]
 
- Protected Attributes inherited from CRenderSystemBase
bool m_bRenderCreated {false}
 
bool m_bVSync {true}
 
unsigned int m_maxTextureSize {2048}
 
unsigned int m_minDXTPitch {0}
 
std::string m_RenderRenderer
 
std::string m_RenderVendor
 
std::string m_RenderVersion
 
int m_RenderVersionMinor {0}
 
int m_RenderVersionMajor {0}
 
RenderStereoView m_stereoView {RenderStereoView::OFF}
 
RenderStereoMode m_stereoMode {RenderStereoMode::OFF}
 
bool m_limitedColorRange {false}
 
bool m_transferPQ {false}
 
std::unique_ptr< CGUIImagem_splashImage
 
std::unique_ptr< CGUITextLayoutm_splashMessageLayout
 
CCriticalSection m_settingsSection
 
std::optional< intm_settingsCallbackHandle
 
bool m_guiFrontToBackRendering {false}
 
ClearFunction m_guiGeometryClear {ClearFunction::FIXED_FUNCTION}
 
bool m_showSplashImage {true}
 

Constructor & Destructor Documentation

◆ CRenderSystemGLES()

CRenderSystemGLES::CRenderSystemGLES ( )

◆ ~CRenderSystemGLES()

CRenderSystemGLES::~CRenderSystemGLES ( )
overridedefault

Member Function Documentation

◆ ApplyStateBlock()

void CRenderSystemGLES::ApplyStateBlock ( )
overridevirtual

Implements CRenderSystemBase.

◆ BeginRender()

bool CRenderSystemGLES::BeginRender ( )
overridevirtual

Implements CRenderSystemBase.

Reimplemented in CWinSystemIOS, and CWinSystemTVOS.

◆ CalculateMaxTexturesize()

void CRenderSystemGLES::CalculateMaxTexturesize ( )
protected

◆ CaptureStateBlock()

void CRenderSystemGLES::CaptureStateBlock ( )
overridevirtual
Todo
  • NOTE: Only for Screensavers & Visualisations

Implements CRenderSystemBase.

◆ ClearBuffers()

bool CRenderSystemGLES::ClearBuffers ( KODI::UTILS::COLOR::Color color)
overridevirtual

Implements CRenderSystemBase.

◆ ClipRectToScissorRect()

CRect CRenderSystemGLES::ClipRectToScissorRect ( const CRect & rect)
overridevirtual

Reimplemented from CRenderSystemBase.

◆ DestroyRenderSystem()

bool CRenderSystemGLES::DestroyRenderSystem ( )
overridevirtual

Implements CRenderSystemBase.

◆ DisableGUIShader()

void CRenderSystemGLES::DisableGUIShader ( )

◆ EnableGUIShader()

void CRenderSystemGLES::EnableGUIShader ( ShaderMethodGLES method)

◆ EndRender()

bool CRenderSystemGLES::EndRender ( )
overridevirtual

Implements CRenderSystemBase.

Reimplemented in CWinSystemIOS, and CWinSystemTVOS.

◆ GetShaderPath()

std::string CRenderSystemGLES::GetShaderPath ( const std::string & filename)
overridevirtual

Reimplemented from CRenderSystemBase.

◆ GetViewPort()

void CRenderSystemGLES::GetViewPort ( CRect & viewPort)
overridevirtual

Implements CRenderSystemBase.

◆ GUIShaderGetBrightness()

GLint CRenderSystemGLES::GUIShaderGetBrightness ( )

◆ GUIShaderGetClip()

GLint CRenderSystemGLES::GUIShaderGetClip ( )

◆ GUIShaderGetCol()

GLint CRenderSystemGLES::GUIShaderGetCol ( )

◆ GUIShaderGetContrast()

GLint CRenderSystemGLES::GUIShaderGetContrast ( )

◆ GUIShaderGetCoord0()

GLint CRenderSystemGLES::GUIShaderGetCoord0 ( )

◆ GUIShaderGetCoord0Matrix()

GLint CRenderSystemGLES::GUIShaderGetCoord0Matrix ( )

◆ GUIShaderGetCoord1()

GLint CRenderSystemGLES::GUIShaderGetCoord1 ( )

◆ GUIShaderGetCoordStep()

GLint CRenderSystemGLES::GUIShaderGetCoordStep ( )

◆ GUIShaderGetDepth()

GLint CRenderSystemGLES::GUIShaderGetDepth ( )

◆ GUIShaderGetField()

GLint CRenderSystemGLES::GUIShaderGetField ( )

◆ GUIShaderGetMatrix()

GLint CRenderSystemGLES::GUIShaderGetMatrix ( )

◆ GUIShaderGetModel()

GLint CRenderSystemGLES::GUIShaderGetModel ( )

◆ GUIShaderGetPos()

GLint CRenderSystemGLES::GUIShaderGetPos ( )

◆ GUIShaderGetStep()

GLint CRenderSystemGLES::GUIShaderGetStep ( )

◆ GUIShaderGetUniCol()

GLint CRenderSystemGLES::GUIShaderGetUniCol ( )

◆ InitialiseShaders()

void CRenderSystemGLES::InitialiseShaders ( )

◆ InitRenderSystem()

bool CRenderSystemGLES::InitRenderSystem ( )
overridevirtual

Implements CRenderSystemBase.

◆ InvalidateColorBuffer()

void CRenderSystemGLES::InvalidateColorBuffer ( )
overridevirtual

Reimplemented from CRenderSystemBase.

◆ IsExtSupported()

bool CRenderSystemGLES::IsExtSupported ( const char * extension) const
overridevirtual

◆ PresentRender()

void CRenderSystemGLES::PresentRender ( bool rendered,
bool videoLayer )
overridevirtual

◆ PresentRenderImpl()

◆ Project()

void CRenderSystemGLES::Project ( float & x,
float & y,
float & z )
overridevirtual

Project (x,y,z) 3d scene coordinates to (x,y) 2d screen coordinates

Reimplemented from CRenderSystemBase.

◆ ReleaseShaders()

void CRenderSystemGLES::ReleaseShaders ( )

◆ ResetRenderSystem()

bool CRenderSystemGLES::ResetRenderSystem ( int width,
int height )
overridevirtual

Implements CRenderSystemBase.

◆ ResetScissors()

void CRenderSystemGLES::ResetScissors ( )
overridevirtual

Implements CRenderSystemBase.

◆ ResetVSync()

void CRenderSystemGLES::ResetVSync ( )
inline

◆ ScissorsCanEffectClipping()

bool CRenderSystemGLES::ScissorsCanEffectClipping ( )
overridevirtual

Reimplemented from CRenderSystemBase.

◆ SetCameraPosition()

void CRenderSystemGLES::SetCameraPosition ( const CPoint & camera,
int screenWidth,
int screenHeight,
float stereoFactor = 0.0f )
overridevirtual

Implements CRenderSystemBase.

◆ SetDepthCulling()

void CRenderSystemGLES::SetDepthCulling ( DepthCulling culling)
overridevirtual

Reimplemented from CRenderSystemBase.

◆ SetScissors()

void CRenderSystemGLES::SetScissors ( const CRect & rect)
overridevirtual

Implements CRenderSystemBase.

◆ SetViewPort()

void CRenderSystemGLES::SetViewPort ( const CRect & viewPort)
overridevirtual

Implements CRenderSystemBase.

◆ SetVSync()

void CRenderSystemGLES::SetVSync ( bool vsync)

◆ SetVSyncImpl()

◆ SupportsStereo()

bool CRenderSystemGLES::SupportsStereo ( RenderStereoMode mode) const
overridevirtual

Reimplemented from CRenderSystemBase.

Member Data Documentation

◆ m_bVsyncInit

bool CRenderSystemGLES::m_bVsyncInit {false}
protected

◆ m_height

int CRenderSystemGLES::m_height
protected

◆ m_method

ShaderMethodGLES CRenderSystemGLES::m_method = ShaderMethodGLES::SM_DEFAULT
protected

◆ m_pShader

std::map<ShaderMethodGLES, std::unique_ptr<CGLESShader> > CRenderSystemGLES::m_pShader
protected

◆ m_RenderExtensions

std::string CRenderSystemGLES::m_RenderExtensions
protected

◆ m_viewPort

GLint CRenderSystemGLES::m_viewPort[4]
protected

◆ m_width

int CRenderSystemGLES::m_width
protected

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