Kodi Docs 20.0
Kodi is an open source media player and entertainment hub.
CWinSystemOSX Class Reference

#include <WinSystemOSXSDL.h>

Inheritance diagram for CWinSystemOSX:
CWinSystemBase ITimerCallback CWinSystemOSXGL

Public Member Functions

 CWinSystemOSX ()
 
 ~CWinSystemOSX () override
 
void OnTimeout () 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
 
void NotifyAppFocusChange (bool bGaining) override
 
void ShowOSMouse (bool show) override
 
bool Minimize () override
 
bool Restore () override
 
bool Hide () override
 
bool Show (bool raise=true) override
 
void OnMove (int x, int y) override
 
std::string GetClipboardText () override
 
void Register (IDispResource *resource) override
 
void Unregister (IDispResource *resource) override
 
std::unique_ptr< CVideoSyncGetVideoSync (void *clock) override
 
std::vector< std::string > GetConnectedOutputs () override
 
void WindowChangedScreen ()
 
void AnnounceOnLostDevice ()
 
void AnnounceOnResetDevice ()
 
void HandleOnResetDevice ()
 
void StartLostDeviceTimer ()
 
void StopLostDeviceTimer ()
 
voidGetCGLContextObj ()
 
voidGetNSOpenGLContext ()
 
bool MessagePump () override
 
- Public Member Functions inherited from CWinSystemBase
 CWinSystemBase ()
 
virtual ~CWinSystemBase ()
 
virtual CRenderSystemBaseGetRenderSystem ()
 
virtual const std::string GetName ()
 
virtual bool DisplayHardwareScalingEnabled ()
 
virtual void UpdateDisplayHardwareScaling (const RESOLUTION_INFO &resInfo)
 
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 NotifyAppActiveChange (bool bActivated)
 
virtual bool HasCursor ()
 
virtual bool HasInertialGestures ()
 
virtual bool UseLimitedColor ()
 
virtual int NoOfBuffers ()
 
virtual float GetDisplayLatency ()
 
virtual float GetFrameLatencyAdjustment ()
 
KODI::WINDOWING::COSScreenSaverManagerGetOSScreenSaver ()
 
unsigned int GetWidth ()
 
unsigned int GetHeight ()
 
virtual bool CanDoWindowed ()
 
bool IsFullScreen ()
 
void SetWindowResolution (int width, int height)
 
std::vector< RESOLUTION_WHRScreenResolutions (float refreshrate)
 
std::vector< REFRESHRATERefreshRates (int width, int height, uint32_t dwFlags)
 
REFRESHRATE DefaultRefreshRate (std::vector< REFRESHRATE > rates)
 
virtual bool HasCalibration (const RESOLUTION_INFO &resInfo)
 
void RegisterRenderLoop (IRenderLoop *client)
 
void UnregisterRenderLoop (IRenderLoop *client)
 
void DriveRenderLoop ()
 
CGraphicContextGetGfxContext ()
 
virtual voidGetHWContext ()
 
std::shared_ptr< CDPMSSupportGetDPMSManager ()
 
virtual bool SetHDR (const VideoPicture *videoPicture)
 
virtual bool IsHDRDisplay ()
 
virtual HDR_STATUS ToggleHDR ()
 
virtual HDR_STATUS GetOSHDRStatus ()
 
virtual CHDRCapabilities GetDisplayHDRCapabilities () const
 
virtual DEBUG_INFO_RENDER GetDebugInfo ()
 
- Public Member Functions inherited from ITimerCallback
virtual ~ITimerCallback ()=default
 

Protected Member Functions

std::unique_ptr< KODI::WINDOWING::IOSScreenSaverGetOSScreenSaverImpl () override
 
void HandlePossibleRefreshrateChange ()
 
void GetScreenResolution (int *w, int *h, double *fps, int screenIdx)
 
void EnableVSync (bool enable)
 
bool SwitchToVideoMode (int width, int height, double refreshrate)
 
void FillInVideoModes ()
 
bool FlushBuffer (void)
 
bool IsObscured (void)
 
void StartTextInput ()
 
void StopTextInput ()
 
- Protected Member Functions inherited from CWinSystemBase
void UpdateDesktopResolution (RESOLUTION_INFO &newRes, const std::string &output, int width, int height, float refreshRate, uint32_t dwFlags)
 

Protected Attributes

std::unique_ptr< CWinSystemOSXImplm_impl
 
SDL_Surfacem_SDLSurface
 
CWinEventsOSXm_osx_events
 
bool m_obscured
 
std::chrono::time_point< std::chrono::steady_clock > m_obscured_timecheck
 
bool m_movedToOtherScreen
 
int m_lastDisplayNr
 
double m_refreshRate
 
CCriticalSection m_resourceSection
 
std::vector< IDispResource * > m_resources
 
CTimer m_lostDeviceTimer
 
bool m_delayDispReset
 
XbmcThreads::EndTime m_dispResetTimer
 
int m_updateGLContext = 0
 
- 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
 

Additional Inherited Members

- Static Public Member Functions inherited from CWinSystemBase
static std::unique_ptr< CWinSystemBaseCreateWinSystem ()
 
- Static Public Attributes inherited from CWinSystemBase
static const char * SETTING_WINSYSTEM_IS_HDR_DISPLAY = "winsystem.ishdrdisplay"
 

Constructor & Destructor Documentation

◆ CWinSystemOSX()

CWinSystemOSX::CWinSystemOSX ( )

◆ ~CWinSystemOSX()

CWinSystemOSX::~CWinSystemOSX ( )
overridedefault

Member Function Documentation

◆ AnnounceOnLostDevice()

void CWinSystemOSX::AnnounceOnLostDevice ( )

◆ AnnounceOnResetDevice()

void CWinSystemOSX::AnnounceOnResetDevice ( )

◆ CreateNewWindow()

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

Implements CWinSystemBase.

◆ DestroyWindow()

bool CWinSystemOSX::DestroyWindow ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ DestroyWindowSystem()

bool CWinSystemOSX::DestroyWindowSystem ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ EnableVSync()

void CWinSystemOSX::EnableVSync ( bool  enable)
protected

◆ FillInVideoModes()

void CWinSystemOSX::FillInVideoModes ( )
protected

◆ FlushBuffer()

bool CWinSystemOSX::FlushBuffer ( void  )
protected

◆ GetCGLContextObj()

void * CWinSystemOSX::GetCGLContextObj ( )

◆ GetClipboardText()

std::string CWinSystemOSX::GetClipboardText ( void  )
overridevirtual

Reimplemented from CWinSystemBase.

◆ GetConnectedOutputs()

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

Reimplemented from CWinSystemBase.

◆ GetNSOpenGLContext()

NSOpenGLContext * CWinSystemOSX::GetNSOpenGLContext ( )

◆ GetOSScreenSaverImpl()

std::unique_ptr< IOSScreenSaver > CWinSystemOSX::GetOSScreenSaverImpl ( )
overrideprotectedvirtual

Reimplemented from CWinSystemBase.

◆ GetScreenResolution()

void CWinSystemOSX::GetScreenResolution ( int w,
int h,
double *  fps,
int  screenIdx 
)
protected

◆ GetVideoSync()

std::unique_ptr< CVideoSync > CWinSystemOSX::GetVideoSync ( void clock)
overridevirtual

Reimplemented from CWinSystemBase.

◆ HandleOnResetDevice()

void CWinSystemOSX::HandleOnResetDevice ( )

◆ HandlePossibleRefreshrateChange()

void CWinSystemOSX::HandlePossibleRefreshrateChange ( )
protected

◆ Hide()

bool CWinSystemOSX::Hide ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ InitWindowSystem()

bool CWinSystemOSX::InitWindowSystem ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ IsObscured()

bool CWinSystemOSX::IsObscured ( void  )
protected

◆ MessagePump()

bool CWinSystemOSX::MessagePump ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ Minimize()

bool CWinSystemOSX::Minimize ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ NotifyAppFocusChange()

void CWinSystemOSX::NotifyAppFocusChange ( bool  bGaining)
overridevirtual

Reimplemented from CWinSystemBase.

◆ OnMove()

void CWinSystemOSX::OnMove ( int  x,
int  y 
)
overridevirtual

Reimplemented from CWinSystemBase.

◆ OnTimeout()

void CWinSystemOSX::OnTimeout ( )
overridevirtual

Implements ITimerCallback.

◆ Register()

void CWinSystemOSX::Register ( IDispResource resource)
overridevirtual

Implements CWinSystemBase.

◆ ResizeWindow()

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

Implements CWinSystemBase.

Reimplemented in CWinSystemOSXGL.

◆ Restore()

bool CWinSystemOSX::Restore ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ SetFullScreen()

bool CWinSystemOSX::SetFullScreen ( bool  fullScreen,
RESOLUTION_INFO res,
bool  blankOtherDisplays 
)
overridevirtual

Implements CWinSystemBase.

Reimplemented in CWinSystemOSXGL.

◆ Show()

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

Reimplemented from CWinSystemBase.

◆ ShowOSMouse()

void CWinSystemOSX::ShowOSMouse ( bool  show)
overridevirtual

Reimplemented from CWinSystemBase.

◆ StartLostDeviceTimer()

void CWinSystemOSX::StartLostDeviceTimer ( )

◆ StartTextInput()

void CWinSystemOSX::StartTextInput ( )
protected

◆ StopLostDeviceTimer()

void CWinSystemOSX::StopLostDeviceTimer ( )

◆ StopTextInput()

void CWinSystemOSX::StopTextInput ( )
protected

◆ SwitchToVideoMode()

bool CWinSystemOSX::SwitchToVideoMode ( int  width,
int  height,
double  refreshrate 
)
protected

◆ Unregister()

void CWinSystemOSX::Unregister ( IDispResource resource)
overridevirtual

Implements CWinSystemBase.

◆ UpdateResolutions()

void CWinSystemOSX::UpdateResolutions ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ WindowChangedScreen()

void CWinSystemOSX::WindowChangedScreen ( )

Member Data Documentation

◆ m_delayDispReset

bool CWinSystemOSX::m_delayDispReset
protected

◆ m_dispResetTimer

XbmcThreads::EndTime CWinSystemOSX::m_dispResetTimer
protected

◆ m_impl

std::unique_ptr<CWinSystemOSXImpl> CWinSystemOSX::m_impl
protected

◆ m_lastDisplayNr

int CWinSystemOSX::m_lastDisplayNr
protected

◆ m_lostDeviceTimer

CTimer CWinSystemOSX::m_lostDeviceTimer
protected

◆ m_movedToOtherScreen

bool CWinSystemOSX::m_movedToOtherScreen
protected

◆ m_obscured

bool CWinSystemOSX::m_obscured
protected

◆ m_obscured_timecheck

std::chrono::time_point<std::chrono::steady_clock> CWinSystemOSX::m_obscured_timecheck
protected

◆ m_osx_events

CWinEventsOSX* CWinSystemOSX::m_osx_events
protected

◆ m_refreshRate

double CWinSystemOSX::m_refreshRate
protected

◆ m_resources

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

◆ m_resourceSection

CCriticalSection CWinSystemOSX::m_resourceSection
protected

◆ m_SDLSurface

SDL_Surface* CWinSystemOSX::m_SDLSurface
protected

◆ m_updateGLContext

int CWinSystemOSX::m_updateGLContext = 0
protected

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