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 (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 (DEPTH_CULLING 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 (RENDER_STEREO_MODE mode, RENDER_STEREO_VIEW 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 (RENDER_STEREO_MODE mode) const
 
unsigned int GetMaxTextureSize () const
 
unsigned int GetMinDXTPitch () const
 
virtual void ShowSplash (const std::string &message)
 

Protected Attributes

bool m_bRenderCreated
 
bool m_bVSync
 
unsigned int m_maxTextureSize
 
unsigned int m_minDXTPitch
 
std::string m_RenderRenderer
 
std::string m_RenderVendor
 
std::string m_RenderVersion
 
int m_RenderVersionMinor
 
int m_RenderVersionMajor
 
RENDER_STEREO_VIEW m_stereoView = RENDER_STEREO_VIEW_OFF
 
RENDER_STEREO_MODE m_stereoMode = RENDER_STEREO_MODE_OFF
 
bool m_limitedColorRange = false
 
bool m_transferPQ {false}
 
std::unique_ptr< CGUIImagem_splashImage
 
std::unique_ptr< CGUITextLayoutm_splashMessageLayout
 

Constructor & Destructor Documentation

◆ CRenderSystemBase()

CRenderSystemBase::CRenderSystemBase ( )

◆ ~CRenderSystemBase()

CRenderSystemBase::~CRenderSystemBase ( )
virtualdefault

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 ( 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

◆ 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.

◆ GetViewPort()

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

◆ InitRenderSystem()

virtual bool CRenderSystemBase::InitRenderSystem ( )
pure virtual

◆ InvalidateColorBuffer()

virtual void CRenderSystemBase::InvalidateColorBuffer ( )
inlinevirtual

Reimplemented in CRenderSystemGL, and CRenderSystemGLES.

◆ IsExtSupported()

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

◆ 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 ( DEPTH_CULLING culling)
inlinevirtual

Reimplemented in CRenderSystemGL, and CRenderSystemGLES.

◆ SetScissors()

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

◆ SetStereoMode()

virtual void CRenderSystemBase::SetStereoMode ( RENDER_STEREO_MODE mode,
RENDER_STEREO_VIEW 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 ( RENDER_STEREO_MODE mode) const
virtual

Member Data Documentation

◆ m_bRenderCreated

bool CRenderSystemBase::m_bRenderCreated
protected

◆ m_bVSync

bool CRenderSystemBase::m_bVSync
protected

◆ m_limitedColorRange

bool CRenderSystemBase::m_limitedColorRange = false
protected

◆ m_maxTextureSize

unsigned int CRenderSystemBase::m_maxTextureSize
protected

◆ m_minDXTPitch

unsigned int CRenderSystemBase::m_minDXTPitch
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
protected

◆ m_RenderVersionMinor

int CRenderSystemBase::m_RenderVersionMinor
protected

◆ m_splashImage

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

◆ m_splashMessageLayout

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

◆ m_stereoMode

RENDER_STEREO_MODE CRenderSystemBase::m_stereoMode = RENDER_STEREO_MODE_OFF
protected

◆ m_stereoView

RENDER_STEREO_VIEW CRenderSystemBase::m_stereoView = RENDER_STEREO_VIEW_OFF
protected

◆ m_transferPQ

bool CRenderSystemBase::m_transferPQ {false}
protected

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