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

#include <WinSystemIOS.h>

Inheritance diagram for CWinSystemIOS:
CWinSystemBase CRenderSystemGLES CRenderSystemBase

Public Member Functions

 CWinSystemIOS ()
 
 ~CWinSystemIOS () override
 
int GetDisplayIndexFromSettings ()
 
CRenderSystemBaseGetRenderSystem () override
 
bool InitWindowSystem () override
 
bool DestroyWindowSystem () override
 
bool CreateNewWindow (const std::string &name, bool fullScreen, RESOLUTION_INFO &res) override
 
bool DestroyWindow () override
 
bool ResizeWindow (int newWidth, int newHeight, int newLeft, int newTop) override
 
bool SetFullScreen (bool fullScreen, RESOLUTION_INFO &res, bool blankOtherDisplays) override
 
void UpdateResolutions () override
 
bool CanDoWindowed () override
 
void ShowOSMouse (bool show) override
 
bool HasCursor () override
 
void NotifyAppActiveChange (bool bActivated) override
 
bool Minimize () override
 
bool Restore () override
 
bool Hide () override
 
bool Show (bool raise=true) override
 
bool IsExtSupported (const char *extension) const override
 
bool BeginRender () override
 
bool EndRender () override
 
void Register (IDispResource *resource) override
 
void Unregister (IDispResource *resource) override
 
std::unique_ptr< CVideoSyncGetVideoSync (CVideoReferenceClock *clock) override
 
std::vector< std::string > GetConnectedOutputs () override
 
bool InitDisplayLink (CVideoSyncIos *syncImpl)
 
void DeinitDisplayLink (void)
 
void OnAppFocusChange (bool focus)
 
bool IsBackgrounded () const
 
CVEAGLContext GetEAGLContextObj ()
 
void MoveToTouchscreen ()
 
bool MessagePump () override
 
- Public Member Functions inherited from CWinSystemBase
 CWinSystemBase ()
 
virtual ~CWinSystemBase ()
 
virtual const std::string GetName ()
 
virtual bool DisplayHardwareScalingEnabled ()
 
virtual void UpdateDisplayHardwareScaling (const RESOLUTION_INFO &resInfo)
 
virtual void SetDirtyRegions (const CDirtyRegionList &dirtyRegionsList)
 
virtual int GetBufferAge ()
 
virtual bool MoveWindow (int topLeft, int topRight)
 
virtual void FinishModeChange (RESOLUTION res)
 
virtual void FinishWindowResize (int newWidth, int newHeight)
 
virtual bool CenterWindow ()
 
virtual bool IsCreated ()
 
virtual void NotifyAppFocusChange (bool bGaining)
 
virtual bool HasInertialGestures ()
 
virtual bool UseLimitedColor ()
 
virtual int NoOfBuffers ()
 
virtual void ForceFullScreen (const RESOLUTION_INFO &resInfo)
 Forces the window to fullscreen provided the window resolution.
 
virtual float GetDisplayLatency ()
 Get average display latency.
 
virtual float GetFrameLatencyAdjustment ()
 Get time that should be subtracted from the display latency for this frame in milliseconds.
 
virtual void OnMove (int x, int y)
 
virtual unsigned int GetScreenId (const std::string &screen)
 Get the screen ID provided the screen name.
 
virtual void MoveToScreen (unsigned int screenIdx)
 Window was requested to move to the given screen.
 
virtual void OnChangeScreen (unsigned int screenIdx)
 Used to signal the windowing system about the change of the current screen.
 
KODI::WINDOWING::COSScreenSaverManagerGetOSScreenSaver ()
 Get OS screen saver inhibit implementation if available.
 
unsigned int GetWidth ()
 
unsigned int GetHeight ()
 
bool IsFullScreen ()
 
virtual bool SupportsScreenMove ()
 Check if the windowing system supports moving windows across screens.
 
void SetWindowResolution (int width, int height)
 
std::vector< RESOLUTION_WHRScreenResolutions (float refreshrate)
 
std::vector< REFRESHRATERefreshRates (int width, int height, uint32_t dwFlags)
 
REFRESHRATE DefaultRefreshRate (const std::vector< REFRESHRATE > &rates)
 
virtual bool HasCalibration (const RESOLUTION_INFO &resInfo)
 
virtual std::string GetClipboardText (void)
 
void RegisterRenderLoop (IRenderLoop *client)
 
void UnregisterRenderLoop (IRenderLoop *client)
 
void DriveRenderLoop ()
 
virtual CGraphicContextGetGfxContext () const
 
virtual voidGetHWContext ()
 Get OS specific hardware context.
 
std::shared_ptr< CDPMSSupportGetDPMSManager ()
 
virtual bool SetHDR (const VideoPicture *videoPicture)
 Set the HDR metadata. Passing nullptr as the parameter should disable HDR.
 
virtual bool IsHDRDisplay ()
 
virtual HDR_STATUS ToggleHDR ()
 
virtual HDR_STATUS GetOSHDRStatus ()
 
virtual CHDRCapabilities GetDisplayHDRCapabilities () const
 
virtual float GetGuiSdrPeakLuminance () const
 
virtual bool HasSystemSdrPeakLuminance ()
 
virtual bool SupportsVideoSuperResolution ()
 System supports Video Super Resolution HW upscaler i.e.: "NVIDIA RTX Video Super Resolution" or "Intel Video Super Resolution".
 
virtual DEBUG_INFO_RENDER GetDebugInfo ()
 Gets debug info from video renderer for use in "Debug Info OSD" (Alt + O)
 
bool IsHDRDisplaySettingEnabled ()
 Return true when HDR display is available and enabled in settings.
 
bool IsVideoSuperResolutionSettingEnabled ()
 Return true when "Video Super Resolution" is supported and enabled in settings.
 
bool IsHighPrecisionProcessingSettingEnabled ()
 Return true when setting "High Precision Processing" is enabled.
 
std::pair< bool, intGetDitherSettings ()
 Get dither settings.
 
virtual bool BindTextureUploadContext ()
 Binds a shared context to the current thread, in order to upload textures asynchronously.
 
virtual bool UnbindTextureUploadContext ()
 Unbinds the shared context.
 
virtual bool HasContext ()
 Checks if a graphics context is already bound to the current thread.
 
- Public Member Functions inherited from CRenderSystemGLES
 CRenderSystemGLES ()
 
 ~CRenderSystemGLES () override=default
 
bool InitRenderSystem () override
 
bool DestroyRenderSystem () override
 
bool ResetRenderSystem (int width, int height) override
 
void PresentRender (bool rendered, bool videoLayer) override
 
void InvalidateColorBuffer () override
 
bool ClearBuffers (KODI::UTILS::COLOR::Color color) 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 (DEPTH_CULLING culling) override
 
void CaptureStateBlock () override
 
void ApplyStateBlock () override
 
void SetCameraPosition (const CPoint &camera, int screenWidth, int screenHeight, float stereoFactor=0.0f) override
 
bool SupportsStereo (RENDER_STEREO_MODE 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 (RENDER_STEREO_MODE mode, RENDER_STEREO_VIEW 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)
 

Static Public Member Functions

static void Register ()
 
static std::unique_ptr< CWinSystemBaseCreateWinSystem ()
 
- Static Public Member Functions inherited from CWinSystemBase
static std::unique_ptr< CWinSystemBaseCreateWinSystem ()
 

Protected Member Functions

void PresentRenderImpl (bool rendered) override
 
void SetVSyncImpl (bool enable) override
 
- Protected Member Functions inherited from CWinSystemBase
void UpdateDesktopResolution (RESOLUTION_INFO &newRes, const std::string &output, int width, int height, float refreshRate, uint32_t dwFlags)
 
void UpdateDesktopResolution (RESOLUTION_INFO &newRes, const std::string &output, int width, int height, int screenWidth, int screenHeight, float refreshRate, uint32_t dwFlags)
 
virtual std::unique_ptr< KODI::WINDOWING::IOSScreenSaverGetOSScreenSaverImpl ()
 
- Protected Member Functions inherited from CRenderSystemGLES
void CalculateMaxTexturesize ()
 

Protected Attributes

voidm_glView
 
voidm_WorkingContext
 
bool m_bWasFullScreenBeforeMinimize
 
std::string m_eglext
 
CCriticalSection m_resourceSection
 
std::vector< IDispResource * > m_resources
 
bool m_bIsBackgrounded
 
- Protected Attributes inherited from CWinSystemBase
int m_nWidth = 0
 
int m_nHeight = 0
 
int m_nTop = 0
 
int m_nLeft = 0
 
bool m_bWindowCreated = false
 
bool m_bFullScreen = false
 
bool m_bBlankOtherDisplay = false
 
float m_fRefreshRate = 0.0f
 
std::unique_ptr< KODI::WINDOWING::COSScreenSaverManagerm_screenSaverManager
 
CCriticalSection m_renderLoopSection
 
std::vector< IRenderLoop * > m_renderLoopClients
 
std::unique_ptr< IWinEventsm_winEvents
 
std::unique_ptr< CGraphicContextm_gfxContext
 
std::shared_ptr< CDPMSSupportm_dpms
 
- Protected Attributes inherited from CRenderSystemGLES
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
 
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
 

Additional Inherited Members

- Static Public Attributes inherited from CWinSystemBase
static const char * SETTING_WINSYSTEM_IS_HDR_DISPLAY = "winsystem.ishdrdisplay"
 

Constructor & Destructor Documentation

◆ CWinSystemIOS()

CWinSystemIOS::CWinSystemIOS ( )

◆ ~CWinSystemIOS()

CWinSystemIOS::~CWinSystemIOS ( )
override

Member Function Documentation

◆ BeginRender()

bool CWinSystemIOS::BeginRender ( )
overridevirtual

Reimplemented from CRenderSystemGLES.

◆ CanDoWindowed()

bool CWinSystemIOS::CanDoWindowed ( )
inlineoverridevirtual

Reimplemented from CWinSystemBase.

◆ CreateNewWindow()

bool CWinSystemIOS::CreateNewWindow ( const std::string & name,
bool fullScreen,
RESOLUTION_INFO & res )
overridevirtual

Implements CWinSystemBase.

◆ CreateWinSystem()

std::unique_ptr< CWinSystemBase > CWinSystemIOS::CreateWinSystem ( )
static

◆ DeinitDisplayLink()

void CWinSystemIOS::DeinitDisplayLink ( void )

◆ DestroyWindow()

bool CWinSystemIOS::DestroyWindow ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ DestroyWindowSystem()

bool CWinSystemIOS::DestroyWindowSystem ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ EndRender()

bool CWinSystemIOS::EndRender ( )
overridevirtual

Reimplemented from CRenderSystemGLES.

◆ GetConnectedOutputs()

std::vector< std::string > CWinSystemIOS::GetConnectedOutputs ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ GetDisplayIndexFromSettings()

int CWinSystemIOS::GetDisplayIndexFromSettings ( )

◆ GetEAGLContextObj()

CVEAGLContext CWinSystemIOS::GetEAGLContextObj ( )

◆ GetRenderSystem()

CRenderSystemBase * CWinSystemIOS::GetRenderSystem ( )
inlineoverridevirtual

Reimplemented from CWinSystemBase.

◆ GetVideoSync()

std::unique_ptr< CVideoSync > CWinSystemIOS::GetVideoSync ( CVideoReferenceClock * clock)
overridevirtual

Reimplemented from CWinSystemBase.

◆ HasCursor()

bool CWinSystemIOS::HasCursor ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ Hide()

bool CWinSystemIOS::Hide ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ InitDisplayLink()

bool CWinSystemIOS::InitDisplayLink ( CVideoSyncIos * syncImpl)

◆ InitWindowSystem()

bool CWinSystemIOS::InitWindowSystem ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ IsBackgrounded()

bool CWinSystemIOS::IsBackgrounded ( ) const
inline

◆ IsExtSupported()

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

Reimplemented from CRenderSystemGLES.

◆ MessagePump()

bool CWinSystemIOS::MessagePump ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ Minimize()

bool CWinSystemIOS::Minimize ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ MoveToTouchscreen()

void CWinSystemIOS::MoveToTouchscreen ( )

◆ NotifyAppActiveChange()

void CWinSystemIOS::NotifyAppActiveChange ( bool bActivated)
overridevirtual

Reimplemented from CWinSystemBase.

◆ OnAppFocusChange()

void CWinSystemIOS::OnAppFocusChange ( bool focus)

◆ PresentRenderImpl()

void CWinSystemIOS::PresentRenderImpl ( bool rendered)
overrideprotectedvirtual

Implements CRenderSystemGLES.

◆ Register() [1/2]

void CWinSystemIOS::Register ( )
static

◆ Register() [2/2]

void CWinSystemIOS::Register ( IDispResource * resource)
overridevirtual

Implements CWinSystemBase.

◆ ResizeWindow()

bool CWinSystemIOS::ResizeWindow ( int newWidth,
int newHeight,
int newLeft,
int newTop )
overridevirtual

Implements CWinSystemBase.

◆ Restore()

bool CWinSystemIOS::Restore ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ SetFullScreen()

bool CWinSystemIOS::SetFullScreen ( bool fullScreen,
RESOLUTION_INFO & res,
bool blankOtherDisplays )
overridevirtual

Implements CWinSystemBase.

◆ SetVSyncImpl()

void CWinSystemIOS::SetVSyncImpl ( bool enable)
inlineoverrideprotectedvirtual

Implements CRenderSystemGLES.

◆ Show()

bool CWinSystemIOS::Show ( bool raise = true)
overridevirtual

Reimplemented from CWinSystemBase.

◆ ShowOSMouse()

void CWinSystemIOS::ShowOSMouse ( bool show)
inlineoverridevirtual

Reimplemented from CWinSystemBase.

◆ Unregister()

void CWinSystemIOS::Unregister ( IDispResource * resource)
overridevirtual

Implements CWinSystemBase.

◆ UpdateResolutions()

void CWinSystemIOS::UpdateResolutions ( )
overridevirtual

Reimplemented from CWinSystemBase.

Member Data Documentation

◆ m_bIsBackgrounded

bool CWinSystemIOS::m_bIsBackgrounded
protected

◆ m_bWasFullScreenBeforeMinimize

bool CWinSystemIOS::m_bWasFullScreenBeforeMinimize
protected

◆ m_eglext

std::string CWinSystemIOS::m_eglext
protected

◆ m_glView

void* CWinSystemIOS::m_glView
protected

◆ m_resources

std::vector<IDispResource*> CWinSystemIOS::m_resources
protected

◆ m_resourceSection

CCriticalSection CWinSystemIOS::m_resourceSection
protected

◆ m_WorkingContext

void* CWinSystemIOS::m_WorkingContext
protected

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