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

#include <RenderSystem.h>

Inheritance diagram for CRenderSystemBase:
CRenderSystemDX CRenderSystemGL CRenderSystemGLES CWinSystemWin10DX CWinSystemWin32DX CWinSystemOSXGL KODI::WINDOWING::GBM::CWinSystemGbmGLContext KODI::WINDOWING::WAYLAND::CWinSystemWaylandEGLContextGL KODI::WINDOWING::X11::CWinSystemX11GLContext CWinSystemAndroidGLESContext CWinSystemIOS CWinSystemTVOS KODI::WINDOWING::GBM::CWinSystemGbmGLESContext KODI::WINDOWING::WAYLAND::CWinSystemWaylandEGLContextGLES KODI::WINDOWING::X11::CWinSystemX11GLESContext

Public Member Functions

 CRenderSystemBase ()
 
virtual ~CRenderSystemBase ()
 
virtual bool InitRenderSystem ()=0
 
virtual bool DestroyRenderSystem ()=0
 
virtual bool ResetRenderSystem (int width, int height)=0
 
virtual bool BeginRender ()=0
 
virtual bool EndRender ()=0
 
virtual void PresentRender (bool rendered, bool videoLayer)=0
 
virtual void InvalidateColorBuffer ()
 
virtual bool ClearBuffers (KODI::UTILS::COLOR::Color color)=0
 
virtual bool IsExtSupported (const char *extension) const =0
 
virtual void SetViewPort (const CRect &viewPort)=0
 
virtual void GetViewPort (CRect &viewPort)=0
 
virtual void RestoreViewPort ()
 
virtual bool ScissorsCanEffectClipping ()
 
virtual CRect ClipRectToScissorRect (const CRect &rect)
 
virtual void SetScissors (const CRect &rect)=0
 
virtual void ResetScissors ()=0
 
virtual void SetDepthCulling (DepthCulling culling)
 
virtual void CaptureStateBlock ()=0
 
virtual void ApplyStateBlock ()=0
 
virtual void SetCameraPosition (const CPoint &camera, int screenWidth, int screenHeight, float stereoFactor=0.f)=0
 
virtual void SetStereoMode (RenderStereoMode mode, RenderStereoView view)
 
virtual void Project (float &x, float &y, float &z)
 
virtual std::string GetShaderPath (const std::string &filename)
 
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
 
virtual bool SupportsStereo (RenderStereoMode mode) 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 Attributes

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

◆ CRenderSystemBase()

CRenderSystemBase::CRenderSystemBase ( )

◆ ~CRenderSystemBase()

CRenderSystemBase::~CRenderSystemBase ( )
virtual

Member Function Documentation

◆ ApplyStateBlock()

virtual void CRenderSystemBase::ApplyStateBlock ( )
pure virtual

◆ BeginRender()

virtual bool CRenderSystemBase::BeginRender ( )
pure virtual

◆ CaptureStateBlock()

virtual void CRenderSystemBase::CaptureStateBlock ( )
pure virtual

◆ ClearBuffers()

virtual bool CRenderSystemBase::ClearBuffers ( KODI::UTILS::COLOR::Color color)
pure virtual

◆ ClipRectToScissorRect()

virtual CRect CRenderSystemBase::ClipRectToScissorRect ( const CRect & rect)
inlinevirtual

◆ DestroyRenderSystem()

virtual bool CRenderSystemBase::DestroyRenderSystem ( )
pure virtual

◆ EndRender()

virtual bool CRenderSystemBase::EndRender ( )
pure virtual

◆ GetClearFunction()

ClearFunction CRenderSystemBase::GetClearFunction ( )
virtual

◆ GetEnabledFrontToBackRendering()

bool CRenderSystemBase::GetEnabledFrontToBackRendering ( )
virtual

◆ GetMaxTextureSize()

unsigned int CRenderSystemBase::GetMaxTextureSize ( ) const
inline

◆ GetMinDXTPitch()

unsigned int CRenderSystemBase::GetMinDXTPitch ( ) const
inline

◆ GetRenderRenderer()

const std::string & CRenderSystemBase::GetRenderRenderer ( ) const
inline

◆ GetRenderVendor()

const std::string & CRenderSystemBase::GetRenderVendor ( ) const
inline

◆ GetRenderVersion()

void CRenderSystemBase::GetRenderVersion ( unsigned int & major,
unsigned int & minor ) const

◆ GetRenderVersionString()

const std::string & CRenderSystemBase::GetRenderVersionString ( ) const
inline

◆ GetShaderPath()

virtual std::string CRenderSystemBase::GetShaderPath ( const std::string & filename)
inlinevirtual

Reimplemented in CRenderSystemGL, and CRenderSystemGLES.

◆ GetShowSplashImage()

bool CRenderSystemBase::GetShowSplashImage ( )
virtual

◆ GetViewPort()

virtual void CRenderSystemBase::GetViewPort ( CRect & viewPort)
pure virtual

◆ InitRenderSystem()

virtual bool CRenderSystemBase::InitRenderSystem ( )
pure virtual

◆ InvalidateColorBuffer()

virtual void CRenderSystemBase::InvalidateColorBuffer ( )
inlinevirtual

◆ IsExtSupported()

virtual bool CRenderSystemBase::IsExtSupported ( const char * extension) const
pure virtual

◆ OnAdvancedSettingsLoaded()

void CRenderSystemBase::OnAdvancedSettingsLoaded ( )
virtual

Call when the cached advanced settings values need to be refreshed. note: may execute on a different thread.

◆ PresentRender()

virtual void CRenderSystemBase::PresentRender ( bool rendered,
bool videoLayer )
pure virtual

◆ Project()

virtual void CRenderSystemBase::Project ( float & x,
float & y,
float & z )
inlinevirtual

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

Reimplemented in CRenderSystemDX, CRenderSystemGL, and CRenderSystemGLES.

◆ ResetRenderSystem()

virtual bool CRenderSystemBase::ResetRenderSystem ( int width,
int height )
pure virtual

◆ ResetScissors()

virtual void CRenderSystemBase::ResetScissors ( )
pure virtual

◆ RestoreViewPort()

virtual void CRenderSystemBase::RestoreViewPort ( )
inlinevirtual

Reimplemented in CRenderSystemDX.

◆ ScissorsCanEffectClipping()

virtual bool CRenderSystemBase::ScissorsCanEffectClipping ( )
inlinevirtual

◆ SetCameraPosition()

virtual void CRenderSystemBase::SetCameraPosition ( const CPoint & camera,
int screenWidth,
int screenHeight,
float stereoFactor = 0.f )
pure virtual

◆ SetDepthCulling()

virtual void CRenderSystemBase::SetDepthCulling ( DepthCulling culling)
inlinevirtual

◆ SetScissors()

virtual void CRenderSystemBase::SetScissors ( const CRect & rect)
pure virtual

◆ SetStereoMode()

virtual void CRenderSystemBase::SetStereoMode ( RenderStereoMode mode,
RenderStereoView view )
inlinevirtual

Reimplemented in CRenderSystemDX, and CRenderSystemGL.

◆ SetViewPort()

virtual void CRenderSystemBase::SetViewPort ( const CRect & viewPort)
pure virtual

◆ ShowSplash()

void CRenderSystemBase::ShowSplash ( const std::string & message)
virtual

Reimplemented in CWinSystemWin10DX.

◆ SupportsNPOT()

bool CRenderSystemBase::SupportsNPOT ( bool dxt) const
virtual

Reimplemented in CRenderSystemDX, and CRenderSystemGL.

◆ SupportsStereo()

bool CRenderSystemBase::SupportsStereo ( RenderStereoMode mode) const
virtual

Member Data Documentation

◆ m_bRenderCreated

bool CRenderSystemBase::m_bRenderCreated {false}
protected

◆ m_bVSync

bool CRenderSystemBase::m_bVSync {true}
protected

◆ m_guiFrontToBackRendering

bool CRenderSystemBase::m_guiFrontToBackRendering {false}
protected

◆ m_guiGeometryClear

ClearFunction CRenderSystemBase::m_guiGeometryClear {ClearFunction::FIXED_FUNCTION}
protected

◆ m_limitedColorRange

bool CRenderSystemBase::m_limitedColorRange {false}
protected

◆ m_maxTextureSize

unsigned int CRenderSystemBase::m_maxTextureSize {2048}
protected

◆ m_minDXTPitch

unsigned int CRenderSystemBase::m_minDXTPitch {0}
protected

◆ m_RenderRenderer

std::string CRenderSystemBase::m_RenderRenderer
protected

◆ m_RenderVendor

std::string CRenderSystemBase::m_RenderVendor
protected

◆ m_RenderVersion

std::string CRenderSystemBase::m_RenderVersion
protected

◆ m_RenderVersionMajor

int CRenderSystemBase::m_RenderVersionMajor {0}
protected

◆ m_RenderVersionMinor

int CRenderSystemBase::m_RenderVersionMinor {0}
protected

◆ m_settingsCallbackHandle

std::optional<int> CRenderSystemBase::m_settingsCallbackHandle
protected

◆ m_settingsSection

CCriticalSection CRenderSystemBase::m_settingsSection
protected

◆ m_showSplashImage

bool CRenderSystemBase::m_showSplashImage {true}
protected

◆ m_splashImage

std::unique_ptr<CGUIImage> CRenderSystemBase::m_splashImage
protected

◆ m_splashMessageLayout

std::unique_ptr<CGUITextLayout> CRenderSystemBase::m_splashMessageLayout
protected

◆ m_stereoMode

RenderStereoMode CRenderSystemBase::m_stereoMode {RenderStereoMode::OFF}
protected

◆ m_stereoView

RenderStereoView CRenderSystemBase::m_stereoView {RenderStereoView::OFF}
protected

◆ m_transferPQ

bool CRenderSystemBase::m_transferPQ {false}
protected

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