1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QEGLFSEMULATORINTEGRATION_H
5#define QEGLFSEMULATORINTEGRATION_H
6
7#include "private/qeglfsdeviceintegration_p.h"
8
9#include <QtCore/QLoggingCategory>
10#include <QtCore/QFunctionPointer>
11
12typedef QByteArray (EGLAPIENTRYP PFNQGSGETDISPLAYSPROC) ();
13typedef void (EGLAPIENTRYP PFNQGSSETDISPLAYPROC) (uint screen);
14
15QT_BEGIN_NAMESPACE
16
17Q_DECLARE_LOGGING_CATEGORY(qLcEglfsEmuDebug)
18
19class QEglFSEmulatorIntegration : public QEglFSDeviceIntegration
20{
21public:
22 QEglFSEmulatorIntegration();
23
24 void platformInit() override;
25 void platformDestroy() override;
26 bool usesDefaultScreen() override;
27 void screenInit() override;
28 bool hasCapability(QPlatformIntegration::Capability cap) const override;
29
30 PFNQGSGETDISPLAYSPROC getDisplays;
31 PFNQGSSETDISPLAYPROC setDisplay;
32
33 EGLNativeWindowType createNativeWindow(QPlatformWindow *platformWindow, const QSize &size, const QSurfaceFormat &format) override;
34};
35
36QT_END_NAMESPACE
37
38#endif // QEGLFSEMULATORINTEGRATION_H
39

source code of qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_emu/qeglfsemulatorintegration.h