xbmc
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
KODI::WINDOWING::GBM::CWinSystemGbm Class Reference
Inheritance diagram for KODI::WINDOWING::GBM::CWinSystemGbm:
Inheritance graph
[legend]
Collaboration diagram for KODI::WINDOWING::GBM::CWinSystemGbm:
Collaboration graph
[legend]

Public Member Functions

const std::string GetName () override
 
bool InitWindowSystem () override
 
bool DestroyWindowSystem () override
 
bool ResizeWindow (int newWidth, int newHeight, int newLeft, int newTop) override
 
bool SetFullScreen (bool fullScreen, RESOLUTION_INFO &res, bool blankOtherDisplays) override
 
bool DisplayHardwareScalingEnabled () override
 
void UpdateDisplayHardwareScaling (const RESOLUTION_INFO &resInfo) override
 
void FlipPage (bool rendered, bool videoLayer)
 
bool CanDoWindowed () override
 
void UpdateResolutions () override
 
bool UseLimitedColor () override
 
bool Hide () override
 
bool Show (bool raise=true) override
 
void Register (IDispResource *resource) override
 
void Unregister (IDispResource *resource) override
 
bool SetHDR (const VideoPicture *videoPicture) override
 Set the HDR metadata. More...
 
bool IsHDRDisplay () override
 
std::shared_ptr< CVideoLayerBridgeGetVideoLayerBridge () const
 
void RegisterVideoLayerBridge (std::shared_ptr< CVideoLayerBridge > bridge)
 
CGBMUtils::CGBMDeviceGetGBMDevice () const
 
std::shared_ptr< CDRMUtilsGetDrm () const
 
std::vector< std::string > GetConnectedOutputs () override
 
- Public Member Functions inherited from CWinSystemBase
virtual CRenderSystemBaseGetRenderSystem ()
 
virtual bool CreateNewWindow (const std::string &name, bool fullScreen, RESOLUTION_INFO &res)=0
 
virtual bool DestroyWindow ()
 
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 void NotifyAppActiveChange (bool bActivated)
 
virtual void ShowOSMouse (bool show)
 
virtual bool HasCursor ()
 
virtual bool HasInertialGestures ()
 
virtual int NoOfBuffers ()
 
virtual float GetDisplayLatency ()
 Get average display latency. More...
 
virtual float GetFrameLatencyAdjustment ()
 Get time that should be subtracted from the display latency for this frame in milliseconds. More...
 
virtual bool Minimize ()
 
virtual bool Restore ()
 
virtual void OnMove (int x, int y)
 
KODI::WINDOWING::COSScreenSaverManagerGetOSScreenSaver ()
 Get OS screen saver inhibit implementation if available. More...
 
unsigned int GetWidth ()
 
unsigned int GetHeight ()
 
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)
 
virtual std::string GetClipboardText (void)
 
void RegisterRenderLoop (IRenderLoop *client)
 
void UnregisterRenderLoop (IRenderLoop *client)
 
void DriveRenderLoop ()
 
virtual bool MessagePump ()
 
CGraphicContextGetGfxContext ()
 
virtual void * GetHWContext ()
 Get OS specific hardware context. More...
 
std::shared_ptr< CDPMSSupportGetDPMSManager ()
 
virtual HDR_STATUS ToggleHDR ()
 
virtual HDR_STATUS GetOSHDRStatus ()
 
virtual CHDRCapabilities GetDisplayHDRCapabilities () const
 
virtual DEBUG_INFO_RENDER GetDebugInfo ()
 

Protected Member Functions

void OnLostDevice ()
 
std::unique_ptr< CVideoSyncGetVideoSync (void *clock) 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)
 
virtual std::unique_ptr< KODI::WINDOWING::IOSScreenSaverGetOSScreenSaverImpl ()
 

Protected Attributes

std::shared_ptr< CDRMUtilsm_DRM
 
std::unique_ptr< CGBMUtilsm_GBM
 
std::shared_ptr< CVideoLayerBridgem_videoLayerBridge
 
CCriticalSection m_resourceSection
 
std::vector< IDispResource * > m_resources
 
bool m_dispReset = false
 
XbmcThreads::EndTime m_dispResetTimer
 
std::unique_ptr< CLibInputHandlerm_libinput
 
- 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"
 

Member Function Documentation

◆ IsHDRDisplay()

bool CWinSystemGbm::IsHDRDisplay ( )
overridevirtual
Todo:
: improve detection (edid?)

Reimplemented from CWinSystemBase.

◆ SetHDR()

bool CWinSystemGbm::SetHDR ( const VideoPicture videoPicture)
overridevirtual

Set the HDR metadata.

Passing nullptr as the parameter should disable HDR.

Reimplemented from CWinSystemBase.

◆ UpdateDisplayHardwareScaling()

void CWinSystemGbm::UpdateDisplayHardwareScaling ( const RESOLUTION_INFO resInfo)
overridevirtual
Todo:
The PR that made the res struct constant was abandoned due to drama.

Reimplemented from CWinSystemBase.


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