MythTV  master
Public Member Functions | Private Member Functions | Private Attributes | List of all members
MythDisplayOSX Class Reference

#include <mythdisplayosx.h>

Inheritance diagram for MythDisplayOSX:
Inheritance graph
[legend]
Collaboration diagram for MythDisplayOSX:
Collaboration graph
[legend]

Public Member Functions

 MythDisplayOSX ()
 
 ~MythDisplayOSX () override
 
void UpdateCurrentMode (void) override
 Retrieve screen details. More...
 
bool VideoModesAvailable (void) override
 
bool UsingVideoModes (void) override
 
const MythDisplayModesGetVideoModes (void) override
 
bool SwitchToVideoMode (QSize Size, double DesiredRate) override
 
- Public Member Functions inherited from MythDisplay
virtual bool IsPlanar ()
 
QStringList GetDescription ()
 
QRect GetScreenBounds ()
 
QScreen * GetCurrentScreen ()
 Return a pointer to the screen to use. More...
 
double GetPixelAspectRatio ()
 
QSize GetGUIResolution ()
 
bool NextModeIsLarger (QSize Size)
 Check whether the next mode is larger in size than the current mode. More...
 
void SwitchToDesktop ()
 Return the screen to the original desktop video mode. More...
 
bool SwitchToGUI (bool Wait=false)
 Switches to the GUI resolution. More...
 
bool SwitchToVideo (QSize Size, double Rate=0.0)
 Switches to the resolution and refresh rate defined in the database for the specified video resolution and frame rate. More...
 
QSize GetResolution ()
 
QSize GetPhysicalSize ()
 
double GetRefreshRate () const
 
std::chrono::microseconds GetRefreshInterval (std::chrono::microseconds Fallback) const
 
double GetAspectRatio (QString &Source, bool IgnoreModeOverride=false)
 Returns current screen aspect ratio. More...
 
double EstimateVirtualAspectRatio ()
 Estimate the overall display aspect ratio for multi screen setups. More...
 
MythEDIDGetEDID ()
 
MythDisplayRates GetRefreshRates (QSize Size)
 
MythHDRPtr GetHDRState ()
 

Private Member Functions

void ClearModes (void)
 

Private Attributes

QMap< uint64_t, CGDisplayModeRef > m_modeMap { }
 

Additional Inherited Members

- Public Slots inherited from MythDisplay
virtual void ScreenChanged (QScreen *qScreen)
 The actual screen in use has changed. We must use it. More...
 
static void PrimaryScreenChanged (QScreen *qScreen)
 
void ScreenAdded (QScreen *qScreen)
 
void ScreenRemoved (QScreen *qScreen)
 
void PhysicalDPIChanged (qreal DPI)
 
static void GeometryChanged (QRect Geometry)
 
- Signals inherited from MythDisplay
void CurrentScreenChanged (QScreen *qScreen)
 
void ScreenCountChanged (int Screens)
 
void CurrentDPIChanged (qreal DPI)
 
- Static Public Member Functions inherited from MythDisplay
static void ConfigureQtGUI (int SwapInterval, const MythCommandLineParser &CmdLine)
 Shared static initialistaion code for all MythTV GUI applications. More...
 
static bool SpanAllScreens ()
 Return true if the MythTV windows should span all screens. More...
 
static QString GetExtraScreenInfo (QScreen *qScreen)
 
static int GetScreenCount ()
 
- Protected Member Functions inherited from MythDisplay
 MythDisplay ()
 
 ~MythDisplay () override
 
void DebugModes () const
 
void SetWidget (QWidget *MainWindow)
 Set the QWidget and QWindow in use. More...
 
void Initialise ()
 
void InitScreenBounds ()
 Get screen size from Qt while respecting the user's multiscreen settings. More...
 
void WaitForScreenChange ()
 
void WaitForNewScreen ()
 
void InitHDR ()
 
- Static Protected Member Functions inherited from MythDisplay
static MythDisplayCreate (MythMainWindow *MainWindow)
 Create a MythDisplay object appropriate for the current platform. More...
 
static QScreen * GetDesiredScreen ()
 
static void DebugScreen (QScreen *qScreen, const QString &Message)
 
- Protected Attributes inherited from MythDisplay
bool m_waitForModeChanges { true }
 
bool m_modeComplete { false }
 
double m_refreshRate { 0.0 }
 
double m_aspectRatioOverride { 0.0 }
 
QSize m_resolution { 0, 0 }
 
QSize m_physicalSize { 0, 0 }
 
MythEDID m_edid { }
 
QWidget * m_widget { nullptr }
 
QWindow * m_window { nullptr }
 
QScreen * m_screen { nullptr }
 
MythDisplayModes m_videoModes { }
 
MythHDRPtr m_hdrState { nullptr }
 
MythVRRPtr m_vrrState { nullptr }
 

Detailed Description

Definition at line 10 of file mythdisplayosx.h.

Constructor & Destructor Documentation

◆ MythDisplayOSX()

MythDisplayOSX::MythDisplayOSX ( )

Definition at line 10 of file mythdisplayosx.cpp.

◆ ~MythDisplayOSX()

MythDisplayOSX::~MythDisplayOSX ( )
override

Definition at line 16 of file mythdisplayosx.cpp.

Member Function Documentation

◆ UpdateCurrentMode()

void MythDisplayOSX::UpdateCurrentMode ( void  )
overridevirtual

Retrieve screen details.

This is the final fallback when no other platform specifics are available It is usually accurate apart from the refresh rate - which is often rounded down.

Reimplemented from MythDisplay.

Definition at line 21 of file mythdisplayosx.cpp.

◆ VideoModesAvailable()

bool MythDisplayOSX::VideoModesAvailable ( void  )
inlineoverridevirtual

Reimplemented from MythDisplay.

Definition at line 18 of file mythdisplayosx.h.

◆ UsingVideoModes()

bool MythDisplayOSX::UsingVideoModes ( void  )
overridevirtual

Reimplemented from MythDisplay.

Definition at line 60 of file mythdisplayosx.cpp.

◆ GetVideoModes()

const MythDisplayModes & MythDisplayOSX::GetVideoModes ( void  )
overridevirtual

Reimplemented from MythDisplay.

Definition at line 67 of file mythdisplayosx.cpp.

◆ SwitchToVideoMode()

bool MythDisplayOSX::SwitchToVideoMode ( QSize  Size,
double  DesiredRate 
)
overridevirtual

Reimplemented from MythDisplay.

Definition at line 119 of file mythdisplayosx.cpp.

◆ ClearModes()

void MythDisplayOSX::ClearModes ( void  )
private

Definition at line 155 of file mythdisplayosx.cpp.

Referenced by GetVideoModes(), and ~MythDisplayOSX().

Member Data Documentation

◆ m_modeMap

QMap<uint64_t, CGDisplayModeRef> MythDisplayOSX::m_modeMap { }
private

Definition at line 25 of file mythdisplayosx.h.

Referenced by ClearModes(), GetVideoModes(), and SwitchToVideoMode().


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