KWin
Loading...
Searching...
No Matches
Public Slots | Signals | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
KWin::OutputBackend Class Referenceabstract

#include <outputbackend.h>

Inheritance diagram for KWin::OutputBackend:
KWin::DrmBackend KWin::VirtualBackend KWin::Wayland::WaylandBackend KWin::X11StandaloneBackend KWin::X11WindowedBackend

Public Slots

virtual void sceneInitialized ()
 

Signals

void outputsQueried ()
 
void outputAdded (Output *output)
 
void outputRemoved (Output *output)
 

Public Member Functions

 ~OutputBackend () override
 
virtual bool initialize ()=0
 
virtual std::unique_ptr< InputBackendcreateInputBackend ()
 
virtual std::unique_ptr< OpenGLBackendcreateOpenGLBackend ()
 
virtual std::unique_ptr< QPainterBackendcreateQPainterBackend ()
 
virtual EglDisplaysceneEglDisplayObject () const =0
 
::EGLContext sceneEglGlobalShareContext () const
 
void setSceneEglGlobalShareContext (::EGLContext context)
 
virtual QList< CompositingTypesupportedCompositors () const =0
 
virtual Outputs outputs () const =0
 
OutputfindOutput (const QString &name) const
 
virtual QString supportInformation () const
 
virtual OutputcreateVirtualOutput (const QString &name, const QSize &size, qreal scale)
 
virtual void removeVirtualOutput (Output *output)
 
virtual bool applyOutputChanges (const OutputConfiguration &config)
 
virtual Sessionsession () const
 

Protected Member Functions

 OutputBackend (QObject *parent=nullptr)
 

Protected Attributes

::EGLContext m_globalShareContext = EGL_NO_CONTEXT
 

Detailed Description

Definition at line 44 of file outputbackend.h.

Constructor & Destructor Documentation

◆ ~OutputBackend()

KWin::OutputBackend::~OutputBackend ( )
override

Definition at line 27 of file outputbackend.cpp.

◆ OutputBackend()

KWin::OutputBackend::OutputBackend ( QObject * parent = nullptr)
explicitprotected

Definition at line 22 of file outputbackend.cpp.

Member Function Documentation

◆ applyOutputChanges()

bool KWin::OutputBackend::applyOutputChanges ( const OutputConfiguration & config)
virtual

Applies the output changes. Default implementation only sets values common between platforms

Reimplemented in KWin::DrmBackend.

Definition at line 46 of file outputbackend.cpp.

◆ createInputBackend()

std::unique_ptr< InputBackend > KWin::OutputBackend::createInputBackend ( )
virtual

◆ createOpenGLBackend()

std::unique_ptr< OpenGLBackend > KWin::OutputBackend::createOpenGLBackend ( )
virtual

◆ createQPainterBackend()

std::unique_ptr< QPainterBackend > KWin::OutputBackend::createQPainterBackend ( )
virtual

◆ createVirtualOutput()

Output * KWin::OutputBackend::createVirtualOutput ( const QString & name,
const QSize & size,
qreal scale )
virtual

Definition at line 80 of file outputbackend.cpp.

◆ findOutput()

Output * KWin::OutputBackend::findOutput ( const QString & name) const

Definition at line 69 of file outputbackend.cpp.

◆ initialize()

virtual bool KWin::OutputBackend::initialize ( )
pure virtual

◆ outputAdded

void KWin::OutputBackend::outputAdded ( Output * output)
signal

This signal is emitted when an output has been connected. The output is not ready for compositing yet.

◆ outputRemoved

void KWin::OutputBackend::outputRemoved ( Output * output)
signal

This signal is emitted when an output has been disconnected.

◆ outputs()

virtual Outputs KWin::OutputBackend::outputs ( ) const
pure virtual

◆ outputsQueried

void KWin::OutputBackend::outputsQueried ( )
signal

◆ removeVirtualOutput()

void KWin::OutputBackend::removeVirtualOutput ( Output * output)
virtual

Reimplemented in KWin::DrmBackend, and KWin::Wayland::WaylandBackend.

Definition at line 85 of file outputbackend.cpp.

◆ sceneEglDisplayObject()

virtual EglDisplay * KWin::OutputBackend::sceneEglDisplayObject ( ) const
pure virtual

◆ sceneEglGlobalShareContext()

EGLContext KWin::OutputBackend::sceneEglGlobalShareContext ( ) const

Returns the compositor-wide shared EGL context. This function may return EGL_NO_CONTEXT if the underlying rendering backend does not use EGL.

Note that the returned context should never be made current. Instead, create a context that shares with this one and make the new context current.

Definition at line 95 of file outputbackend.cpp.

◆ sceneInitialized

virtual void KWin::OutputBackend::sceneInitialized ( )
inlinevirtualslot

Definition at line 100 of file outputbackend.h.

◆ session()

Session * KWin::OutputBackend::session ( ) const
virtual

Reimplemented in KWin::DrmBackend.

Definition at line 105 of file outputbackend.cpp.

◆ setSceneEglGlobalShareContext()

void KWin::OutputBackend::setSceneEglGlobalShareContext ( ::EGLContext context)

Sets the global share context to context. This function is intended to be called only by rendering backends.

Definition at line 100 of file outputbackend.cpp.

◆ supportedCompositors()

virtual QList< CompositingType > KWin::OutputBackend::supportedCompositors ( ) const
pure virtual

The CompositingTypes supported by the Platform. The first item should be the most preferred one.

Since
5.11

Implemented in KWin::DrmBackend, KWin::VirtualBackend, KWin::Wayland::WaylandBackend, KWin::X11StandaloneBackend, and KWin::X11WindowedBackend.

◆ supportInformation()

QString KWin::OutputBackend::supportInformation ( ) const
virtual

A string of information to include in kwin debug output It should not be translated.

The base implementation prints the name.

Since
5.12

Reimplemented in KWin::DrmBackend.

Definition at line 90 of file outputbackend.cpp.

Member Data Documentation

◆ m_globalShareContext

::EGLContext KWin::OutputBackend::m_globalShareContext = EGL_NO_CONTEXT
protected

Definition at line 117 of file outputbackend.h.


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