1// Copyright (C) 2015 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
2// Copyright (C) 2016 The Qt Company Ltd.
3// Copyright (C) 2016 Pelagicore AG
4// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
5
6#ifndef QEGLFSKMSGBMINTEGRATION_H
7#define QEGLFSKMSGBMINTEGRATION_H
8
9//
10// W A R N I N G
11// -------------
12//
13// This file is not part of the Qt API. It exists purely as an
14// implementation detail. This header file may change from version to
15// version without notice, or even be removed.
16//
17// We mean it.
18//
19
20#include <private/qeglfskmsintegration_p.h>
21#include <QtCore/QMap>
22#include <QtCore/QVariant>
23
24QT_BEGIN_NAMESPACE
25
26class QEglFSKmsDevice;
27
28class Q_EGLFS_EXPORT QEglFSKmsGbmIntegration : public QEglFSKmsIntegration
29{
30public:
31 QEglFSKmsGbmIntegration();
32
33 EGLDisplay createDisplay(EGLNativeDisplayType nativeDisplay) override;
34 EGLNativeWindowType createNativeOffscreenWindow(const QSurfaceFormat &format) override;
35 void destroyNativeWindow(EGLNativeWindowType window) override;
36
37 QPlatformCursor *createCursor(QPlatformScreen *screen) const override;
38 void presentBuffer(QPlatformSurface *surface) override;
39 QEglFSWindow *createWindow(QWindow *window) const override;
40
41protected:
42 QKmsDevice *createDevice() override;
43
44private:
45};
46
47QT_END_NAMESPACE
48
49#endif // QEGLFSKMSGBMINTEGRATION_H
50

source code of qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration_p.h