Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qwaylandbrcmeglwindow.h
Go to the documentation of this file.
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// Qt-Security score:significant reason:default
4
5#ifndef QWAYLANDBRCMEGLWINDOW_H
6#define QWAYLANDBRCMEGLWINDOW_H
7
8#include <QtWaylandClient/private/qwaylandwindow_p.h>
10
11#include <QMutex>
12
13#include <EGL/egl.h>
14
16
17namespace QtWaylandClient {
18
20
22{
24public:
27 WindowType windowType() const override;
28 void setGeometry(const QRect &rect) override;
29
30 QSurfaceFormat format() const override;
31
32 bool makeCurrent(EGLContext context);
33 void swapBuffers();
34
35private:
36 void createEglSurfaces();
37 void destroyEglSurfaces();
38
39 QWaylandBrcmEglIntegration *m_eglIntegration = nullptr;
40 struct wl_egl_window *m_waylandEglWindow = nullptr;
41
42 const QWaylandWindow *m_parentWindow = nullptr;
43
44 EGLint m_globalImages[3*5];
45 EGLSurface m_eglSurfaces[3];
46
47 QWaylandBrcmBuffer *m_buffers[3];
48 QSurfaceFormat m_format;
49
50 struct wl_event_queue *m_eventQueue = nullptr;
51
52 int m_current = 0;
53 int m_count = 0;
54};
55
56}
57
58QT_END_NAMESPACE
59
60#endif // QWAYLANDBRCMEGLWINDOW_H
void * nativeResourceForContext(NativeResource resource, QPlatformOpenGLContext *context) override
QOpenGLContext * createOpenGLContext(EGLContext context, EGLDisplay contextDisplay, QOpenGLContext *shareContext) const override
void * nativeResource(NativeResource resource) override
QPlatformOpenGLContext * createPlatformOpenGLContext(const QSurfaceFormat &glFormat, QPlatformOpenGLContext *share) const override
void initialize(QWaylandDisplay *waylandDisplay) override
void setGeometry(const QRect &rect) override
This function is called by Qt whenever a window is moved or resized using the QWindow API.
QSurfaceFormat format() const override
Returns the actual surface format of the window.
Combined button and popup list for selecting options.