KWin
Loading...
Searching...
No Matches
Public Member Functions | List of all members
KWin::EglGbmCursorLayer Class Reference

#include <drm_egl_cursor_layer.h>

Inheritance diagram for KWin::EglGbmCursorLayer:
KWin::DrmPipelineLayer KWin::DrmOutputLayer KWin::OutputLayer

Public Member Functions

 EglGbmCursorLayer (EglGbmBackend *eglBackend, DrmPipeline *pipeline)
 
std::optional< OutputLayerBeginFrameInfobeginFrame () override
 
bool endFrame (const QRegion &renderedRegion, const QRegion &damagedRegion) override
 
std::shared_ptr< DrmFramebuffercurrentBuffer () const override
 
QRegion currentDamage () const override
 
bool checkTestBuffer () override
 
void releaseBuffers () override
 
std::chrono::nanoseconds queryRenderTime () const override
 
std::optional< QSize > fixedSize () const override
 
- Public Member Functions inherited from KWin::DrmPipelineLayer
 DrmPipelineLayer (DrmPipeline *pipeline)
 
virtual bool hasDirectScanoutBuffer () const
 
- Public Member Functions inherited from KWin::DrmOutputLayer
virtual ~DrmOutputLayer ()
 
virtual std::shared_ptr< GLTexturetexture () const
 
- Public Member Functions inherited from KWin::OutputLayer
 OutputLayer (QObject *parent=nullptr)
 
qreal scale () const
 
void setScale (qreal scale)
 
QPointF hotspot () const
 
void setHotspot (const QPointF &hotspot)
 
QSizeF size () const
 
void setSize (const QSizeF &size)
 
QRegion repaints () const
 
void resetRepaints ()
 
void addRepaint (const QRegion &region)
 
bool needsRepaint () const
 
void setPosition (const QPointF &position)
 
QPointF position () const
 
void setEnabled (bool enable)
 
bool isEnabled () const
 
virtual bool scanout (SurfaceItem *surfaceItem)
 

Additional Inherited Members

- Protected Attributes inherited from KWin::DrmPipelineLayer
DrmPipeline *const m_pipeline
 

Detailed Description

Definition at line 26 of file drm_egl_cursor_layer.h.

Constructor & Destructor Documentation

◆ EglGbmCursorLayer()

KWin::EglGbmCursorLayer::EglGbmCursorLayer ( EglGbmBackend * eglBackend,
DrmPipeline * pipeline )

Definition at line 43 of file drm_egl_cursor_layer.cpp.

Member Function Documentation

◆ beginFrame()

std::optional< OutputLayerBeginFrameInfo > KWin::EglGbmCursorLayer::beginFrame ( )
overridevirtual

Implements KWin::OutputLayer.

Definition at line 49 of file drm_egl_cursor_layer.cpp.

◆ checkTestBuffer()

bool KWin::EglGbmCursorLayer::checkTestBuffer ( )
overridevirtual

Implements KWin::DrmPipelineLayer.

Definition at line 72 of file drm_egl_cursor_layer.cpp.

◆ currentBuffer()

std::shared_ptr< DrmFramebuffer > KWin::EglGbmCursorLayer::currentBuffer ( ) const
overridevirtual

Implements KWin::DrmPipelineLayer.

Definition at line 67 of file drm_egl_cursor_layer.cpp.

◆ currentDamage()

QRegion KWin::EglGbmCursorLayer::currentDamage ( ) const
overridevirtual

Reimplemented from KWin::DrmOutputLayer.

Definition at line 62 of file drm_egl_cursor_layer.cpp.

◆ endFrame()

bool KWin::EglGbmCursorLayer::endFrame ( const QRegion & renderedRegion,
const QRegion & damagedRegion )
overridevirtual

Implements KWin::OutputLayer.

Definition at line 57 of file drm_egl_cursor_layer.cpp.

◆ fixedSize()

std::optional< QSize > KWin::EglGbmCursorLayer::fixedSize ( ) const
overridevirtual

For most drm drivers, the buffer used for the cursor has to have a fixed size. If such a fixed size is required by the backend, this function should return it

Reimplemented from KWin::OutputLayer.

Definition at line 87 of file drm_egl_cursor_layer.cpp.

◆ queryRenderTime()

std::chrono::nanoseconds KWin::EglGbmCursorLayer::queryRenderTime ( ) const
overridevirtual

queries the render time of the last frame. If rendering isn't complete yet, this may block until it is

Implements KWin::OutputLayer.

Definition at line 82 of file drm_egl_cursor_layer.cpp.

◆ releaseBuffers()

void KWin::EglGbmCursorLayer::releaseBuffers ( )
overridevirtual

Implements KWin::DrmOutputLayer.

Definition at line 77 of file drm_egl_cursor_layer.cpp.


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