summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/eglfs/deviceintegration/eglfs_openwfd/qeglfsopenwfdintegration.h
blob: c6ff282b5ca1a93d73fc89e6fbad8bd3ab3e07f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only

#ifndef QEGLFSOPENWFDINTEGRATION_H
#define QEGLFSOPENWFDINTEGRATION_H

#include "private/qeglfsdeviceintegration_p.h"
#define WFD_WFDEXT_PROTOTYPES
#include "wfd.h"
#include "wfdext2.h"

QT_BEGIN_NAMESPACE

class QEglFSOpenWFDIntegration : public QEglFSDeviceIntegration
{
public:
    void platformInit() override;
    void platformDestroy() override;
    QSize screenSize() const override;
    EGLNativeWindowType createNativeWindow(QPlatformWindow *window, const QSize &size, const QSurfaceFormat &format) override;
    void destroyNativeWindow(EGLNativeWindowType window) override;
    EGLNativeDisplayType platformDisplay() const override;
    virtual QSurfaceFormat surfaceFormatFor(const QSurfaceFormat &inputFormat) const;

private:
    QSize mScreenSize;
    EGLNativeDisplayType mNativeDisplay;
    WFDDevice mDevice;
    WFDPort mPort;
    WFDPipeline mPipeline;
};

QT_END_NAMESPACE

#endif