Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QEglFSKmsGbmScreen Class Reference

#include <qeglfskmsgbmscreen_p.h>

Inheritance diagram for QEglFSKmsGbmScreen:
Collaboration diagram for QEglFSKmsGbmScreen:

Classes

struct  CloneDestination
struct  FrameBuffer

Public Member Functions

 QEglFSKmsGbmScreen (QEglFSKmsDevice *device, const QKmsOutput &output, bool headless)
 ~QEglFSKmsGbmScreen ()
QPlatformCursorcursor () const override
 Reimplement this function in subclass to return the cursor of the screen.
gbm_surface * createSurface (EGLConfig eglConfig)
void resetSurface ()
void initCloning (QPlatformScreen *screenThisScreenClones, const QList< QPlatformScreen * > &screensCloningThisScreen)
void waitForFlip () override
virtual void flip ()
virtual void updateFlipStatus ()
virtual uint32_t gbmFlags ()
Public Member Functions inherited from QEglFSKmsScreen
 QEglFSKmsScreen (QEglFSKmsDevice *device, const QKmsOutput &output, bool headless=false)
 ~QEglFSKmsScreen ()
void setVirtualPosition (const QPoint &pos)
QRect rawGeometry () const override
int depth () const override
 Reimplement in subclass to return current depth of the screen.
QImage::Format format () const override
 Reimplement in subclass to return the image format which corresponds to the screen format.
QSizeF physicalSize () const override
 Reimplement this function in subclass to return the physical size of the screen, in millimeters.
QDpi logicalDpi () const override
 Reimplement this function in subclass to return the logical horizontal and vertical dots per inch metrics of the screen.
QDpi logicalBaseDpi () const override
 Reimplement to return the base logical DPI for the platform.
Qt::ScreenOrientation nativeOrientation () const override
 Reimplement this function in subclass to return the native orientation of the screen, e.g.
Qt::ScreenOrientation orientation () const override
 Reimplement this function in subclass to return the current orientation of the screen, for example based on accelerometer data to determine the device orientation.
QString name () const override
QString manufacturer () const override
 Reimplement this function in subclass to return the manufacturer of this screen.
QString model () const override
 Reimplement this function in subclass to return the model of this screen.
QString serialNumber () const override
 Reimplement this function in subclass to return the serial number of this screen.
qreal refreshRate () const override
 Reimplement this function in subclass to return the vertical refresh rate of the screen, in Hz.
QList< QPlatformScreen * > virtualSiblings () const override
 Returns a list of all the platform screens that are part of the same virtual desktop.
void setVirtualSiblings (QList< QPlatformScreen * > sl)
void removeSibling (QPlatformScreen *screen)
QList< QPlatformScreen::Modemodes () const override
 Reimplement this function in subclass to return the list of modes for this screen.
int currentMode () const override
 Reimplement this function in subclass to return the index of the current mode from the modes list.
int preferredMode () const override
 Reimplement this function in subclass to return the preferred mode index from the modes list.
QEglFSKmsDevicedevice () const
void updateOutput (QKmsOutput output)
QKmsOutputoutput ()
void restoreMode ()
SubpixelAntialiasingType subpixelAntialiasingTypeHint () const override
 Returns a hint about this screen's subpixel layout structure.
QPlatformScreen::PowerState powerState () const override
 Returns the current power state.
void setPowerState (QPlatformScreen::PowerState state) override
 Sets the power state for this screen.
bool isCursorOutOfRange () const
void setCursorOutOfRange (bool b)
virtual void pageFlipped (unsigned int sequence, unsigned int tv_sec, unsigned int tv_usec)
Public Member Functions inherited from QEglFSScreen
 QEglFSScreen (EGLDisplay display)
 ~QEglFSScreen ()
QRect geometry () const override
 Reimplement in subclass to return the pixel geometry of the screen.
int depth () const override
 Reimplement in subclass to return current depth of the screen.
QImage::Format format () const override
 Reimplement in subclass to return the image format which corresponds to the screen format.
QSizeF physicalSize () const override
 Reimplement this function in subclass to return the physical size of the screen, in millimeters.
QDpi logicalDpi () const override
 Reimplement this function in subclass to return the logical horizontal and vertical dots per inch metrics of the screen.
QDpi logicalBaseDpi () const override
 Reimplement to return the base logical DPI for the platform.
Qt::ScreenOrientation nativeOrientation () const override
 Reimplement this function in subclass to return the native orientation of the screen, e.g.
Qt::ScreenOrientation orientation () const override
 Reimplement this function in subclass to return the current orientation of the screen, for example based on accelerometer data to determine the device orientation.
QPlatformCursorcursor () const override
 Reimplement this function in subclass to return the cursor of the screen.
qreal refreshRate () const override
 Reimplement this function in subclass to return the vertical refresh rate of the screen, in Hz.
QPixmap grabWindow (WId wid, int x, int y, int width, int height) const override
 This function is called when Qt needs to be able to grab the content of a window.
EGLSurface primarySurface () const
EGLDisplay display () const
void handleCursorMove (const QPoint &pos)
QWindowtopLevelAt (const QPoint &point) const override
 Return the given top level window for a given position.
Public Member Functions inherited from QPlatformScreen
 QPlatformScreen ()
virtual ~QPlatformScreen ()
virtual bool isPlaceholder () const
virtual QRect availableGeometry () const
 Reimplement in subclass to return the pixel geometry of the available space This normally is the desktop screen minus the task manager, global menubar etc.
virtual QColorSpace colorSpace () const
virtual qreal devicePixelRatio () const
 Reimplement this function in subclass to return the device pixel ratio for the screen.
QWindowList windows () const
 Return all windows residing on this screen.
const QPlatformScreenscreenForPosition (const QPoint &point) const
 Find the sibling screen corresponding to globalPos.
QScreenscreen () const

Protected Member Functions

void flipFinished ()
void ensureModeSet (uint32_t fb)
void cloneDestFlipFinished (QEglFSKmsGbmScreen *cloneDestScreen)
void waitForFlipWithEventReader (QEglFSKmsGbmScreen *screen)
FrameBufferframebufferForBufferObject (gbm_bo *bo)
Protected Member Functions inherited from QPlatformScreen
void resizeMaximizedWindows ()
 Convenience method to resize all the maximized and fullscreen windows of this platform screen.

Static Protected Member Functions

static void nonThreadedPageFlipHandler (int fd, unsigned int sequence, unsigned int tv_sec, unsigned int tv_usec, void *user_data)
static void bufferDestroyedHandler (gbm_bo *bo, void *data)

Protected Attributes

gbm_surface * m_gbm_surface
gbm_bo * m_gbm_bo_current
gbm_bo * m_gbm_bo_next
bool m_flipPending
QMutex m_flipMutex
QWaitCondition m_flipCond
QScopedPointer< QEglFSKmsGbmCursorm_cursor
QEglFSKmsGbmScreenm_cloneSource
QList< CloneDestinationm_cloneDests
bool needsNewModeSetForNextFb = false
Protected Attributes inherited from QEglFSKmsScreen
QEglFSKmsDevicem_device
QKmsOutput m_output
QEdidParser m_edid
QPoint m_pos
bool m_cursorOutOfRange
QList< QPlatformScreen * > m_siblings
PowerState m_powerState
QEglFSKmsInterruptHandlerm_interruptHandler
bool m_headless
Protected Attributes inherited from QPlatformScreen
QScopedPointer< QPlatformScreenPrivated_ptr

Static Protected Attributes

static QMutex s_nonThreadedFlipMutex
Static Protected Attributes inherited from QEglFSKmsScreen
static QSet< QEglFSKmsScreen * > s_screens

Additional Inherited Members

Public Types inherited from QPlatformScreen
enum  SubpixelAntialiasingType {
  Subpixel_None , Subpixel_RGB , Subpixel_BGR , Subpixel_VRGB ,
  Subpixel_VBGR
}
enum  PowerState { PowerStateOn , PowerStateStandby , PowerStateSuspend , PowerStateOff }
Static Public Member Functions inherited from QEglFSKmsScreen
static bool isScreenKnown (QEglFSKmsScreen *s)
Static Public Member Functions inherited from QPlatformScreen
static QPlatformScreenplatformScreenForWindow (const QWindow *window)
static int angleBetween (Qt::ScreenOrientation a, Qt::ScreenOrientation b)
static QTransform transformBetween (Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &target)
static QRect mapBetween (Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &rect)
static QDpi overrideDpi (const QDpi &in)

Detailed Description

Definition at line 30 of file qeglfskmsgbmscreen_p.h.

Constructor & Destructor Documentation

◆ QEglFSKmsGbmScreen()

QEglFSKmsGbmScreen::QEglFSKmsGbmScreen ( QEglFSKmsDevice * device,
const QKmsOutput & output,
bool headless )

Definition at line 81 of file qeglfskmsgbmscreen.cpp.

◆ ~QEglFSKmsGbmScreen()

QEglFSKmsGbmScreen::~QEglFSKmsGbmScreen ( )

Definition at line 92 of file qeglfskmsgbmscreen.cpp.

Member Function Documentation

◆ bufferDestroyedHandler()

void QEglFSKmsGbmScreen::bufferDestroyedHandler ( gbm_bo * bo,
void * data )
staticprotected

Definition at line 37 of file qeglfskmsgbmscreen.cpp.

◆ cloneDestFlipFinished()

void QEglFSKmsGbmScreen::cloneDestFlipFinished ( QEglFSKmsGbmScreen * cloneDestScreen)
protected

Definition at line 518 of file qeglfskmsgbmscreen.cpp.

◆ createSurface()

gbm_surface * QEglFSKmsGbmScreen::createSurface ( EGLConfig eglConfig)

Definition at line 137 of file qeglfskmsgbmscreen.cpp.

◆ cursor()

QPlatformCursor * QEglFSKmsGbmScreen::cursor ( ) const
overridevirtual

Reimplement this function in subclass to return the cursor of the screen.

The default implementation returns \nullptr.

Reimplemented from QPlatformScreen.

Definition at line 117 of file qeglfskmsgbmscreen.cpp.

◆ ensureModeSet()

void QEglFSKmsGbmScreen::ensureModeSet ( uint32_t fb)
protected

Definition at line 239 of file qeglfskmsgbmscreen.cpp.

◆ flip()

void QEglFSKmsGbmScreen::flip ( )
virtual

Definition at line 397 of file qeglfskmsgbmscreen.cpp.

◆ flipFinished()

void QEglFSKmsGbmScreen::flipFinished ( )
protected

Definition at line 507 of file qeglfskmsgbmscreen.cpp.

◆ framebufferForBufferObject()

QEglFSKmsGbmScreen::FrameBuffer * QEglFSKmsGbmScreen::framebufferForBufferObject ( gbm_bo * bo)
protected

Definition at line 49 of file qeglfskmsgbmscreen.cpp.

◆ gbmFlags()

virtual uint32_t QEglFSKmsGbmScreen::gbmFlags ( )
inlinevirtual

Definition at line 49 of file qeglfskmsgbmscreen_p.h.

◆ initCloning()

void QEglFSKmsGbmScreen::initCloning ( QPlatformScreen * screenThisScreenClones,
const QList< QPlatformScreen * > & screensCloningThisScreen )

Definition at line 214 of file qeglfskmsgbmscreen.cpp.

◆ nonThreadedPageFlipHandler()

void QEglFSKmsGbmScreen::nonThreadedPageFlipHandler ( int fd,
unsigned int sequence,
unsigned int tv_sec,
unsigned int tv_usec,
void * user_data )
staticprotected

Definition at line 285 of file qeglfskmsgbmscreen.cpp.

◆ resetSurface()

void QEglFSKmsGbmScreen::resetSurface ( )

Definition at line 197 of file qeglfskmsgbmscreen.cpp.

◆ updateFlipStatus()

void QEglFSKmsGbmScreen::updateFlipStatus ( )
virtual

Definition at line 529 of file qeglfskmsgbmscreen.cpp.

◆ waitForFlip()

void QEglFSKmsGbmScreen::waitForFlip ( )
overridevirtual

Reimplemented from QEglFSKmsScreen.

Definition at line 325 of file qeglfskmsgbmscreen.cpp.

◆ waitForFlipWithEventReader()

void QEglFSKmsGbmScreen::waitForFlipWithEventReader ( QEglFSKmsGbmScreen * screen)
protected

Definition at line 301 of file qeglfskmsgbmscreen.cpp.

Member Data Documentation

◆ m_cloneDests

QList<CloneDestination> QEglFSKmsGbmScreen::m_cloneDests
protected

Definition at line 85 of file qeglfskmsgbmscreen_p.h.

◆ m_cloneSource

QEglFSKmsGbmScreen* QEglFSKmsGbmScreen::m_cloneSource
protected

Definition at line 80 of file qeglfskmsgbmscreen_p.h.

◆ m_cursor

QScopedPointer<QEglFSKmsGbmCursor> QEglFSKmsGbmScreen::m_cursor
protected

Definition at line 72 of file qeglfskmsgbmscreen_p.h.

◆ m_flipCond

QWaitCondition QEglFSKmsGbmScreen::m_flipCond
protected

Definition at line 69 of file qeglfskmsgbmscreen_p.h.

◆ m_flipMutex

QMutex QEglFSKmsGbmScreen::m_flipMutex
protected

Definition at line 68 of file qeglfskmsgbmscreen_p.h.

◆ m_flipPending

bool QEglFSKmsGbmScreen::m_flipPending
protected

Definition at line 66 of file qeglfskmsgbmscreen_p.h.

◆ m_gbm_bo_current

gbm_bo* QEglFSKmsGbmScreen::m_gbm_bo_current
protected

Definition at line 64 of file qeglfskmsgbmscreen_p.h.

◆ m_gbm_bo_next

gbm_bo* QEglFSKmsGbmScreen::m_gbm_bo_next
protected

Definition at line 65 of file qeglfskmsgbmscreen_p.h.

◆ m_gbm_surface

gbm_surface* QEglFSKmsGbmScreen::m_gbm_surface
protected

Definition at line 62 of file qeglfskmsgbmscreen_p.h.

◆ needsNewModeSetForNextFb

bool QEglFSKmsGbmScreen::needsNewModeSetForNextFb = false
protected

Definition at line 87 of file qeglfskmsgbmscreen_p.h.

◆ s_nonThreadedFlipMutex

QT_BEGIN_NAMESPACE QMutex QEglFSKmsGbmScreen::s_nonThreadedFlipMutex
staticprotected

Definition at line 70 of file qeglfskmsgbmscreen_p.h.


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