KWin
|
#include <outputlayer.h>
Public Member Functions | |
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) |
virtual std::optional< QSize > | fixedSize () const |
QRegion | repaints () const |
void | resetRepaints () |
void | addRepaint (const QRegion ®ion) |
bool | needsRepaint () const |
void | setPosition (const QPointF &position) |
QPointF | position () const |
void | setEnabled (bool enable) |
bool | isEnabled () const |
virtual std::optional< OutputLayerBeginFrameInfo > | beginFrame ()=0 |
virtual bool | endFrame (const QRegion &renderedRegion, const QRegion &damagedRegion)=0 |
virtual bool | scanout (SurfaceItem *surfaceItem) |
virtual std::chrono::nanoseconds | queryRenderTime () const =0 |
Definition at line 28 of file outputlayer.h.
|
explicit |
Definition at line 12 of file outputlayer.cpp.
void KWin::OutputLayer::addRepaint | ( | const QRegion & | region | ) |
Definition at line 57 of file outputlayer.cpp.
|
pure virtual |
Implemented in KWin::EglGbmCursorLayer, KWin::EglGbmLayer, KWin::DrmQPainterLayer, KWin::DrmCursorQPainterLayer, KWin::DrmVirtualQPainterLayer, KWin::VirtualEglGbmLayer, KWin::VirtualEglLayer, KWin::VirtualQPainterLayer, KWin::Wayland::WaylandEglPrimaryLayer, KWin::Wayland::WaylandEglCursorLayer, KWin::Wayland::WaylandQPainterPrimaryLayer, KWin::Wayland::WaylandQPainterCursorLayer, KWin::EglLayer, KWin::GlxLayer, KWin::X11WindowedEglPrimaryLayer, KWin::X11WindowedEglCursorLayer, KWin::X11WindowedQPainterPrimaryLayer, and KWin::X11WindowedQPainterCursorLayer.
|
pure virtual |
Implemented in KWin::EglGbmCursorLayer, KWin::EglGbmLayer, KWin::DrmQPainterLayer, KWin::DrmCursorQPainterLayer, KWin::DrmVirtualQPainterLayer, KWin::VirtualEglGbmLayer, KWin::VirtualEglLayer, KWin::VirtualQPainterLayer, KWin::Wayland::WaylandEglPrimaryLayer, KWin::Wayland::WaylandEglCursorLayer, KWin::Wayland::WaylandQPainterPrimaryLayer, KWin::Wayland::WaylandQPainterCursorLayer, KWin::EglLayer, KWin::GlxLayer, KWin::X11WindowedEglPrimaryLayer, KWin::X11WindowedEglCursorLayer, KWin::X11WindowedQPainterPrimaryLayer, and KWin::X11WindowedQPainterCursorLayer.
|
virtual |
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 in KWin::EglGbmCursorLayer.
Definition at line 47 of file outputlayer.cpp.
QPointF KWin::OutputLayer::hotspot | ( | ) | const |
Definition at line 27 of file outputlayer.cpp.
bool KWin::OutputLayer::isEnabled | ( | ) | const |
Definition at line 92 of file outputlayer.cpp.
bool KWin::OutputLayer::needsRepaint | ( | ) | const |
Definition at line 67 of file outputlayer.cpp.
QPointF KWin::OutputLayer::position | ( | ) | const |
Definition at line 82 of file outputlayer.cpp.
|
pure virtual |
queries the render time of the last frame. If rendering isn't complete yet, this may block until it is
Implemented in KWin::EglGbmCursorLayer, KWin::EglGbmLayer, KWin::DrmQPainterLayer, KWin::DrmCursorQPainterLayer, KWin::DrmVirtualQPainterLayer, KWin::VirtualEglGbmLayer, KWin::VirtualEglLayer, KWin::VirtualQPainterLayer, KWin::Wayland::WaylandEglPrimaryLayer, KWin::Wayland::WaylandEglCursorLayer, KWin::Wayland::WaylandQPainterPrimaryLayer, KWin::Wayland::WaylandQPainterCursorLayer, KWin::EglLayer, KWin::GlxLayer, KWin::X11WindowedEglPrimaryLayer, KWin::X11WindowedEglCursorLayer, KWin::X11WindowedQPainterPrimaryLayer, and KWin::X11WindowedQPainterCursorLayer.
QRegion KWin::OutputLayer::repaints | ( | ) | const |
Definition at line 52 of file outputlayer.cpp.
void KWin::OutputLayer::resetRepaints | ( | ) |
Definition at line 62 of file outputlayer.cpp.
qreal KWin::OutputLayer::scale | ( | ) | const |
Definition at line 17 of file outputlayer.cpp.
|
virtual |
Tries to import the newest buffer of the surface for direct scanout Returns true
if scanout succeeds, false
if rendering is necessary
Reimplemented in KWin::EglGbmLayer, KWin::VirtualEglGbmLayer, and KWin::Wayland::WaylandEglPrimaryLayer.
Definition at line 72 of file outputlayer.cpp.
void KWin::OutputLayer::setEnabled | ( | bool | enable | ) |
Enables or disables this layer. Note that disabling the primary layer will cause problems
Definition at line 87 of file outputlayer.cpp.
void KWin::OutputLayer::setHotspot | ( | const QPointF & | hotspot | ) |
Definition at line 32 of file outputlayer.cpp.
void KWin::OutputLayer::setPosition | ( | const QPointF & | position | ) |
Definition at line 77 of file outputlayer.cpp.
void KWin::OutputLayer::setScale | ( | qreal | scale | ) |
Definition at line 22 of file outputlayer.cpp.
void KWin::OutputLayer::setSize | ( | const QSizeF & | size | ) |
Definition at line 42 of file outputlayer.cpp.
QSizeF KWin::OutputLayer::size | ( | ) | const |
Definition at line 37 of file outputlayer.cpp.