Kodi Documentation 18.0
Kodi is an open source media player and entertainment hub.
CWinSystemX11 Class Referenceabstract

#include <WinSystemX11.h>

Inheritance diagram for CWinSystemX11:
CWinSystemBase CWinSystemX11GLContext

Public Member Functions

 CWinSystemX11 ()
 
 ~CWinSystemX11 () 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
 
void FinishWindowResize (int newWidth, int newHeight) override
 
bool SetFullScreen (bool fullScreen, RESOLUTION_INFO &res, bool blankOtherDisplays) override
 
void UpdateResolutions () override
 
void ShowOSMouse (bool show) override
 
void NotifyAppActiveChange (bool bActivated) override
 
void NotifyAppFocusChange (bool bGaining) override
 
bool Minimize () override
 
bool Restore () override
 
bool Hide () override
 
bool Show (bool raise=true) override
 
void Register (IDispResource *resource) override
 
void Unregister (IDispResource *resource) override
 
bool HasCalibration (const RESOLUTION_INFO &resInfo) override
 
bool UseLimitedColor () override
 
Display * GetDisplay ()
 
int GetScreen ()
 
void NotifyXRREvent ()
 
void GetConnectedOutputs (std::vector< std::string > *outputs)
 
bool IsCurrentOutput (std::string output)
 
void RecreateWindow ()
 
int GetCrtc ()
 
bool MessagePump () override
 
- Public Member Functions inherited from CWinSystemBase
 CWinSystemBase ()
 
virtual ~CWinSystemBase ()
 
virtual CRenderSystemBaseGetRenderSystem ()
 
virtual bool MoveWindow (int topLeft, int topRight)
 
virtual void FinishModeChange (RESOLUTION res)
 
virtual bool CenterWindow ()
 
virtual bool IsCreated ()
 
virtual bool HasCursor ()
 
virtual bool HasInertialGestures ()
 
virtual int NoOfBuffers ()
 
virtual float GetDisplayLatency ()
 
virtual float GetFrameLatencyAdjustment ()
 
virtual std::unique_ptr< CVideoSyncGetVideoSync (void *clock)
 
virtual void OnMove (int x, int y)
 
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 std::string GetClipboardText (void)
 
void RegisterRenderLoop (IRenderLoop *client)
 
void UnregisterRenderLoop (IRenderLoop *client)
 
void DriveRenderLoop ()
 
CGraphicContextGetGfxContext ()
 

Protected Member Functions

std::unique_ptr< KODI::WINDOWING::IOSScreenSaverGetOSScreenSaverImpl () override
 
virtual bool SetWindow (int width, int height, bool fullscreen, const std::string &output, int *winstate=NULL)=0
 
virtual XVisualInfo * GetVisual ()=0
 
void OnLostDevice ()
 
- 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

Window m_glWindow
 
Window m_mainWindow
 
int m_screen = 0
 
Display * m_dpy
 
Cursor m_invisibleCursor
 
Pixmap m_icon
 
bool m_bIsRotated
 
bool m_bWasFullScreenBeforeMinimize
 
bool m_minimized
 
bool m_bIgnoreNextFocusMessage
 
CCriticalSection m_resourceSection
 
std::vector< IDispResource * > m_resources
 
bool m_delayDispReset
 
XbmcThreads::EndTime m_dispResetTimer
 
std::string m_currentOutput
 
std::string m_userOutput
 
bool m_windowDirty
 
bool m_bIsInternalXrr
 
int m_MouseX
 
int m_MouseY
 
int m_crtc
 
CWinEventsX11m_winEventsX11
 
- 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
 

Additional Inherited Members

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

Constructor & Destructor Documentation

◆ CWinSystemX11()

CWinSystemX11::CWinSystemX11 ( )

◆ ~CWinSystemX11()

CWinSystemX11::~CWinSystemX11 ( )
overridedefault

Member Function Documentation

◆ CreateNewWindow()

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

Implements CWinSystemBase.

Reimplemented in CWinSystemX11GLContext.

◆ DestroyWindow()

bool CWinSystemX11::DestroyWindow ( )
overridevirtual

Reimplemented from CWinSystemBase.

Reimplemented in CWinSystemX11GLContext.

◆ DestroyWindowSystem()

bool CWinSystemX11::DestroyWindowSystem ( )
overridevirtual

Reimplemented from CWinSystemBase.

Reimplemented in CWinSystemX11GLContext.

◆ FinishWindowResize()

void CWinSystemX11::FinishWindowResize ( int  newWidth,
int  newHeight 
)
overridevirtual

Reimplemented from CWinSystemBase.

Reimplemented in CWinSystemX11GLContext.

◆ GetConnectedOutputs()

void CWinSystemX11::GetConnectedOutputs ( std::vector< std::string > *  outputs)

◆ GetCrtc()

int CWinSystemX11::GetCrtc ( )
inline

◆ GetDisplay()

Display * CWinSystemX11::GetDisplay ( )
inline

◆ GetOSScreenSaverImpl()

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

Reimplemented from CWinSystemBase.

◆ GetScreen()

int CWinSystemX11::GetScreen ( )
inline

◆ GetVisual()

virtual XVisualInfo * CWinSystemX11::GetVisual ( )
protectedpure virtual

Implemented in CWinSystemX11GLContext.

◆ HasCalibration()

bool CWinSystemX11::HasCalibration ( const RESOLUTION_INFO resInfo)
overridevirtual

Reimplemented from CWinSystemBase.

◆ Hide()

bool CWinSystemX11::Hide ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ InitWindowSystem()

bool CWinSystemX11::InitWindowSystem ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ IsCurrentOutput()

bool CWinSystemX11::IsCurrentOutput ( std::string  output)

◆ MessagePump()

bool CWinSystemX11::MessagePump ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ Minimize()

bool CWinSystemX11::Minimize ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ NotifyAppActiveChange()

void CWinSystemX11::NotifyAppActiveChange ( bool  bActivated)
overridevirtual

Reimplemented from CWinSystemBase.

◆ NotifyAppFocusChange()

void CWinSystemX11::NotifyAppFocusChange ( bool  bGaining)
overridevirtual

Reimplemented from CWinSystemBase.

◆ NotifyXRREvent()

void CWinSystemX11::NotifyXRREvent ( )

◆ OnLostDevice()

void CWinSystemX11::OnLostDevice ( )
protected

◆ RecreateWindow()

void CWinSystemX11::RecreateWindow ( )

◆ Register()

void CWinSystemX11::Register ( IDispResource resource)
overridevirtual

Implements CWinSystemBase.

◆ ResizeWindow()

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

Implements CWinSystemBase.

Reimplemented in CWinSystemX11GLContext.

◆ Restore()

bool CWinSystemX11::Restore ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ SetFullScreen()

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

Implements CWinSystemBase.

Reimplemented in CWinSystemX11GLContext.

◆ SetWindow()

bool CWinSystemX11::SetWindow ( int  width,
int  height,
bool  fullscreen,
const std::string &  output,
int *  winstate = NULL 
)
protectedpure virtual

Implemented in CWinSystemX11GLContext.

◆ Show()

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

Reimplemented from CWinSystemBase.

◆ ShowOSMouse()

void CWinSystemX11::ShowOSMouse ( bool  show)
overridevirtual

Reimplemented from CWinSystemBase.

◆ Unregister()

void CWinSystemX11::Unregister ( IDispResource resource)
overridevirtual

Implements CWinSystemBase.

◆ UpdateResolutions()

void CWinSystemX11::UpdateResolutions ( )
overridevirtual

Reimplemented from CWinSystemBase.

◆ UseLimitedColor()

bool CWinSystemX11::UseLimitedColor ( )
overridevirtual

Reimplemented from CWinSystemBase.

Member Data Documentation

◆ m_bIgnoreNextFocusMessage

bool CWinSystemX11::m_bIgnoreNextFocusMessage
protected

◆ m_bIsInternalXrr

bool CWinSystemX11::m_bIsInternalXrr
protected

◆ m_bIsRotated

bool CWinSystemX11::m_bIsRotated
protected

◆ m_bWasFullScreenBeforeMinimize

bool CWinSystemX11::m_bWasFullScreenBeforeMinimize
protected

◆ m_crtc

int CWinSystemX11::m_crtc
protected

◆ m_currentOutput

std::string CWinSystemX11::m_currentOutput
protected

◆ m_delayDispReset

bool CWinSystemX11::m_delayDispReset
protected

◆ m_dispResetTimer

XbmcThreads::EndTime CWinSystemX11::m_dispResetTimer
protected

◆ m_dpy

Display* CWinSystemX11::m_dpy
protected

◆ m_glWindow

Window CWinSystemX11::m_glWindow
protected

◆ m_icon

Pixmap CWinSystemX11::m_icon
protected

◆ m_invisibleCursor

Cursor CWinSystemX11::m_invisibleCursor
protected

◆ m_mainWindow

Window CWinSystemX11::m_mainWindow
protected

◆ m_minimized

bool CWinSystemX11::m_minimized
protected

◆ m_MouseX

int CWinSystemX11::m_MouseX
protected

◆ m_MouseY

int CWinSystemX11::m_MouseY
protected

◆ m_resources

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

◆ m_resourceSection

CCriticalSection CWinSystemX11::m_resourceSection
protected

◆ m_screen

int CWinSystemX11::m_screen = 0
protected

◆ m_userOutput

std::string CWinSystemX11::m_userOutput
protected

◆ m_windowDirty

bool CWinSystemX11::m_windowDirty
protected

◆ m_winEventsX11

CWinEventsX11* CWinSystemX11::m_winEventsX11
protected

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