KWin
Loading...
Searching...
No Matches
src
backends
drm
drm_dmabuf_feedback.h
Go to the documentation of this file.
1
/*
2
KWin - the KDE window manager
3
This file is part of the KDE project.
4
5
SPDX-FileCopyrightText: 2022 Xaver Hugl <xaver.hugl@gmail.com>
6
7
SPDX-License-Identifier: GPL-2.0-or-later
8
*/
9
#pragma once
10
11
#include <QList>
12
#include <QMap>
13
#include <QPointer>
14
15
namespace
KWin
16
{
17
18
class
EglGbmBackend;
19
class
DrmGpu;
20
class
SurfaceInterface;
21
22
class
DmabufFeedback
23
{
24
public
:
25
DmabufFeedback
(
DrmGpu
*gpu,
EglGbmBackend
*eglBackend);
26
27
void
renderingSurface
();
28
void
scanoutSuccessful
(
SurfaceInterface
*surface);
29
void
scanoutFailed
(
SurfaceInterface
*surface,
const
QMap<uint32_t, QList<uint64_t>> &formats);
30
31
private
:
32
QPointer<SurfaceInterface> m_surface;
33
QMap<uint32_t, QList<uint64_t>> m_attemptedFormats;
34
bool
m_attemptedThisFrame =
false
;
35
36
DrmGpu
*
const
m_gpu;
37
EglGbmBackend
*
const
m_eglBackend;
38
};
39
40
}
KWin::DmabufFeedback
Definition
drm_dmabuf_feedback.h:23
KWin::DmabufFeedback::scanoutFailed
void scanoutFailed(SurfaceInterface *surface, const QMap< uint32_t, QList< uint64_t > > &formats)
Definition
drm_dmabuf_feedback.cpp:46
KWin::DmabufFeedback::DmabufFeedback
DmabufFeedback(DrmGpu *gpu, EglGbmBackend *eglBackend)
Definition
drm_dmabuf_feedback.cpp:18
KWin::DmabufFeedback::renderingSurface
void renderingSurface()
Definition
drm_dmabuf_feedback.cpp:24
KWin::DmabufFeedback::scanoutSuccessful
void scanoutSuccessful(SurfaceInterface *surface)
Definition
drm_dmabuf_feedback.cpp:35
KWin::DrmGpu
Definition
drm_gpu.h:62
KWin::EglGbmBackend
OpenGL Backend using Egl on a GBM surface.
Definition
drm_egl_backend.h:39
KWin::SurfaceInterface
Resource representing a wl_surface.
Definition
surface.h:80
KWin
Definition
activation_test.cpp:20
Generated on Sat Feb 17 2024 01:42:09 for KWin by
1.10.0