diff options
author | Jorgen Lind <jorgen.lind@digia.com> | 2014-01-14 12:26:42 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-01-15 15:11:35 +0100 |
commit | 87b33ff1081558433ac0d0ce6d055de5d09e3303 (patch) | |
tree | c6c4a981a8d67ee0e5b56365f613beb20405755c /src | |
parent | a848e7fe3c69b3eede115fbfe21e9024514bb226 (diff) |
Fixup the brcm-egl hardware integrations
Change-Id: I2a25c7d0b5019c30f31cba1f608a8731be6b1f10
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Diffstat (limited to 'src')
13 files changed, 50 insertions, 35 deletions
diff --git a/src/hardwareintegration/client/brcm-egl/brcm-egl.pri b/src/hardwareintegration/client/brcm-egl/brcm-egl.pri index 542c1c717..cb7a0e224 100644 --- a/src/hardwareintegration/client/brcm-egl/brcm-egl.pri +++ b/src/hardwareintegration/client/brcm-egl/brcm-egl.pri @@ -1,5 +1,11 @@ INCLUDEPATH += $$PWD -LIBS += -lEGL + +for(p, QMAKE_LIBDIR_EGL) { + exists($$p):LIBS += -L$$p +} + +LIBS += $$QMAKE_LIBS_EGL +INCLUDEPATH += $$QMAKE_INCDIR_EGL SOURCES += $$PWD/qwaylandbrcmeglintegration.cpp \ $$PWD/qwaylandbrcmglcontext.cpp \ @@ -10,4 +16,4 @@ HEADERS += $$PWD/qwaylandbrcmeglintegration.h \ $$PWD/qwaylandbrcmeglwindow.h CONFIG += wayland-scanner -WAYLANDCLIENTSOURCES += ../../../extensions/brcm.xml +WAYLANDCLIENTSOURCES += $$PWD/../../../extensions/brcm.xml diff --git a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglintegration.cpp b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglintegration.cpp index 197f4d2ce..f1e14c10c 100644 --- a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglintegration.cpp +++ b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglintegration.cpp @@ -41,7 +41,7 @@ #include "qwaylandbrcmeglintegration.h" -#include "qwaylandglintegration.h" +#include <QtWaylandClient/private/qwaylandclientbufferintegration_p.h> #include "qwaylandbrcmeglwindow.h" #include "qwaylandbrcmglcontext.h" @@ -52,11 +52,10 @@ QT_BEGIN_NAMESPACE -QWaylandBrcmEglIntegration::QWaylandBrcmEglIntegration(QWaylandDisplay *waylandDisplay) - : m_waylandDisplay(waylandDisplay->wl_display()) +QWaylandBrcmEglIntegration::QWaylandBrcmEglIntegration() + : m_waylandDisplay(0) { qDebug() << "Using Brcm-EGL"; - waylandDisplay->addRegistryListener(wlDisplayHandleGlobal, this); } void QWaylandBrcmEglIntegration::wlDisplayHandleGlobal(void *data, struct wl_registry *registry, uint32_t id, const QString &interface, uint32_t version) @@ -78,8 +77,10 @@ QWaylandBrcmEglIntegration::~QWaylandBrcmEglIntegration() eglTerminate(m_eglDisplay); } -void QWaylandBrcmEglIntegration::initialize() +void QWaylandBrcmEglIntegration::initialize(QWaylandDisplay *waylandDisplay) { + m_waylandDisplay = waylandDisplay->wl_display(); + waylandDisplay->addRegistryListener(wlDisplayHandleGlobal, this); EGLint major,minor; m_eglDisplay = eglGetDisplay((EGLNativeDisplayType)EGL_DEFAULT_DISPLAY); if (m_eglDisplay == NULL) { diff --git a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglintegration.h b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglintegration.h index f1100d8de..471f3a03c 100644 --- a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglintegration.h +++ b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglintegration.h @@ -42,7 +42,7 @@ #ifndef QWAYLANDBRCMEGLINTEGRATION_H #define QWAYLANDBRCMEGLINTEGRATION_H -#include "qwaylandglintegration.h" +#include <QtWaylandClient/private/qwaylandclientbufferintegration_p.h> #include <EGL/egl.h> #include <EGL/eglext.h> @@ -59,13 +59,13 @@ class QWindow; struct qt_brcm; -class QWaylandBrcmEglIntegration : public QWaylandGLIntegration +class QWaylandBrcmEglIntegration : public QWaylandClientBufferIntegration { public: - QWaylandBrcmEglIntegration(QWaylandDisplay *waylandDisplay); + QWaylandBrcmEglIntegration(); ~QWaylandBrcmEglIntegration(); - void initialize(); + void initialize(QWaylandDisplay *waylandDisplay); bool supportsThreadedOpenGL() const { return true; } diff --git a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglwindow.cpp b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglwindow.cpp index b538d32c8..3ca72a772 100644 --- a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglwindow.cpp +++ b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglwindow.cpp @@ -41,8 +41,8 @@ #include "qwaylandbrcmeglwindow.h" -#include "qwaylandbuffer.h" -#include "qwaylandscreen.h" +#include <QtWaylandClient/private/qwaylandbuffer_p.h> +#include <QtWaylandClient/private/qwaylandscreen_p.h> #include "qwaylandbrcmglcontext.h" #include <QtPlatformSupport/private/qeglconvenience_p.h> @@ -127,12 +127,12 @@ private: QWaylandBrcmEglWindow::QWaylandBrcmEglWindow(QWindow *window) : QWaylandWindow(window) - , m_eglIntegration(static_cast<QWaylandBrcmEglIntegration *>(mDisplay->eglIntegration())) + , m_eglIntegration(static_cast<QWaylandBrcmEglIntegration *>(mDisplay->clientBufferIntegration())) , m_eglConfig(0) , m_format(window->format()) + , m_eventQueue(wl_display_create_queue(mDisplay->wl_display())) , m_current(0) , m_count(0) - , m_eventQueue(wl_display_create_queue(mDisplay->wl_display())) { } diff --git a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglwindow.h b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglwindow.h index 73413c6ba..bc8f12d1f 100644 --- a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglwindow.h +++ b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmeglwindow.h @@ -42,7 +42,7 @@ #ifndef QWAYLANDBRCMEGLWINDOW_H #define QWAYLANDBRCMEGLWINDOW_H -#include "qwaylandwindow.h" +#include <QtWaylandClient/private/qwaylandwindow_p.h> #include "qwaylandbrcmeglintegration.h" #include <QMutex> diff --git a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.cpp b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.cpp index dfb86e54c..85b7b49f0 100644 --- a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.cpp +++ b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.cpp @@ -41,8 +41,8 @@ #include "qwaylandbrcmglcontext.h" -#include "qwaylanddisplay.h" -#include "qwaylandwindow.h" +#include <QtWaylandClient/private/qwaylanddisplay_p.h> +#include <QtWaylandClient/private/qwaylandwindow_p.h> #include "qwaylandbrcmeglwindow.h" #include <QtPlatformSupport/private/qeglconvenience_p.h> diff --git a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.h b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.h index 7beef166b..a66c0a601 100644 --- a/src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.h +++ b/src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.h @@ -42,7 +42,7 @@ #ifndef QWAYLANDBRCMGLCONTEXT_H #define QWAYLANDBRCMGLCONTEXT_H -#include "qwaylanddisplay.h" +#include <QtWaylandClient/private/qwaylanddisplay_p.h> #include <qpa/qplatformopenglcontext.h> diff --git a/src/hardwareintegration/compositor/brcm-egl/brcm-egl.pri b/src/hardwareintegration/compositor/brcm-egl/brcm-egl.pri index c04b4abc9..b77956df4 100644 --- a/src/hardwareintegration/compositor/brcm-egl/brcm-egl.pri +++ b/src/hardwareintegration/compositor/brcm-egl/brcm-egl.pri @@ -4,16 +4,23 @@ load(qt_plugin) QT = compositor compositor-private core-private gui-private INCLUDEPATH = $$PWD -LIBS += -lwayland-server -lEGL +LIBS += -lwayland-server + +for(p, QMAKE_LIBDIR_EGL) { + exists($$p):LIBS += -L$$p +} + +LIBS += $$QMAKE_LIBS_EGL +INCLUDEPATH += $$QMAKE_INCDIR_EGL SOURCES += \ - brcmeglintegration.cpp \ - brcmbuffer.cpp + $$PWD/brcmeglintegration.cpp \ + $$PWD/brcmbuffer.cpp HEADERS += \ - brcmeglintegration.h \ - brcmbuffer.h + $$PWD/brcmeglintegration.h \ + $$PWD/brcmbuffer.h CONFIG += wayland-scanner WAYLANDSERVERSOURCES += $$PWD/../../../extensions/brcm.xml diff --git a/src/hardwareintegration/compositor/brcm-egl/brcmbuffer.h b/src/hardwareintegration/compositor/brcm-egl/brcmbuffer.h index 6ec5868f9..785ec2160 100644 --- a/src/hardwareintegration/compositor/brcm-egl/brcmbuffer.h +++ b/src/hardwareintegration/compositor/brcm-egl/brcmbuffer.h @@ -42,7 +42,7 @@ #define BRCMBUFFER_H #include <QtCompositor/private/qwlcompositor_p.h> -#include <qwayland-server-wayland.h> +#include <QtCompositor/private/qwayland-server-wayland.h> #include <QtCore/QSize> #include <QtCore/QVector> diff --git a/src/hardwareintegration/compositor/brcm-egl/brcmeglintegration.h b/src/hardwareintegration/compositor/brcm-egl/brcmeglintegration.h index f6486ed4b..25c5ab71e 100644 --- a/src/hardwareintegration/compositor/brcm-egl/brcmeglintegration.h +++ b/src/hardwareintegration/compositor/brcm-egl/brcmeglintegration.h @@ -58,7 +58,7 @@ public: void initializeHardware(QtWayland::Display *waylandDisplay) Q_DECL_OVERRIDE; - void udpateTextureFromBuffer(struct ::wl_resource *buffer) Q_DECL_OVERRIDE; + void bindTextureToBuffer(struct ::wl_resource *buffer) Q_DECL_OVERRIDE; bool isYInverted(struct ::wl_resource *) const Q_DECL_OVERRIDE; QSize bufferSize(struct ::wl_resource *buffer) const Q_DECL_OVERRIDE; diff --git a/src/plugins/hardwareintegration/client/brcm-egl/main.cpp b/src/plugins/hardwareintegration/client/brcm-egl/main.cpp index b7f376555..d1bef5e8c 100644 --- a/src/plugins/hardwareintegration/client/brcm-egl/main.cpp +++ b/src/plugins/hardwareintegration/client/brcm-egl/main.cpp @@ -39,8 +39,8 @@ ** ****************************************************************************/ -#include <QtWaylandClient/qwaylandclientbufferintegrationplugin.h> -#include "qwaylandbrcmeglclientbufferintegration.h" +#include <QtWaylandClient/private/qwaylandclientbufferintegrationplugin_p.h> +#include "qwaylandbrcmeglintegration.h" QT_BEGIN_NAMESPACE @@ -60,11 +60,11 @@ QStringList QWaylandBrcmEglClientBufferPlugin::keys() const return list; } -QWaylandEglClientBufferIntegration *QWaylandBrcmEglClientBufferPlugin::create(const QString& system, const QStringList& paramList) +QWaylandClientBufferIntegration *QWaylandBrcmEglClientBufferPlugin::create(const QString& system, const QStringList& paramList) { Q_UNUSED(paramList); if (system.toLower() == "brcm") - return new QWaylandBrcmEglClientBufferIntegration(); + return new QWaylandBrcmEglIntegration(); return 0; } diff --git a/src/plugins/hardwareintegration/compositor/brcm-egl/brcm-egl.pro b/src/plugins/hardwareintegration/compositor/brcm-egl/brcm-egl.pro index 56dc27402..dd3886c47 100644 --- a/src/plugins/hardwareintegration/compositor/brcm-egl/brcm-egl.pro +++ b/src/plugins/hardwareintegration/compositor/brcm-egl/brcm-egl.pro @@ -10,4 +10,4 @@ LIBS += -lEGL SOURCES += \ main.cpp -include($PWD/../../../../hardwareintegration/compositor/brcm-egl/brcm-egl.pri) +include(../../../../hardwareintegration/compositor/brcm-egl/brcm-egl.pri) diff --git a/src/plugins/platforms/qwayland-brcm-egl/qwaylandbrcmeglplatformintegration.h b/src/plugins/platforms/qwayland-brcm-egl/qwaylandbrcmeglplatformintegration.h index 7dbe82fee..8260a2671 100644 --- a/src/plugins/platforms/qwayland-brcm-egl/qwaylandbrcmeglplatformintegration.h +++ b/src/plugins/platforms/qwayland-brcm-egl/qwaylandbrcmeglplatformintegration.h @@ -42,7 +42,7 @@ #ifndef QWAYLANDBRCMEGLPLATFORMINTEGRATION_H #define QWAYLANDBRCMEGLPLATFORMINTEGRATION_H -#include <QtWaylandClient/qwaylandintegration.h> +#include <QtWaylandClient/private/qwaylandintegration_p.h> #include "qwaylandbrcmeglintegration.h" QT_BEGIN_NAMESPACE @@ -52,16 +52,17 @@ class QWaylandBrcmEglPlatformIntegration : public QWaylandIntegration public: QWaylandBrcmEglPlatformIntegration() : QWaylandIntegration() - , m_gl_integration(new QWaylandBrcmEglIntegration(display()) + , m_gl_integration(new QWaylandBrcmEglIntegration()) { + m_gl_integration->initialize(display()); } - QWaylandGLIntegration *glIntegration() const Q_DECL_OVERRIDE + QWaylandClientBufferIntegration *clientBufferIntegration() const Q_DECL_OVERRIDE { return m_gl_integration; } private: - QWaylandGLIntegration *m_gl_integration; + QWaylandClientBufferIntegration *m_gl_integration; }; QT_END_NAMESPACE |