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 QXCBNATIVEINTERFACEHANDLER_H
5#define QXCBNATIVEINTERFACEHANDLER_H
6
7#include <QtCore/QByteArray>
8#include <QtGui/qpa/qplatformnativeinterface.h>
9
10#include "qxcbexport.h"
11
12QT_BEGIN_NAMESPACE
13
14class QXcbNativeInterface;
15class Q_XCB_EXPORT QXcbNativeInterfaceHandler
16{
17public:
18 QXcbNativeInterfaceHandler(QXcbNativeInterface *nativeInterface);
19 virtual ~QXcbNativeInterfaceHandler();
20
21 virtual QPlatformNativeInterface::NativeResourceForIntegrationFunction nativeResourceFunctionForIntegration(const QByteArray &resource) const;
22 virtual QPlatformNativeInterface::NativeResourceForContextFunction nativeResourceFunctionForContext(const QByteArray &resource) const;
23 virtual QPlatformNativeInterface::NativeResourceForScreenFunction nativeResourceFunctionForScreen(const QByteArray &resource) const;
24 virtual QPlatformNativeInterface::NativeResourceForWindowFunction nativeResourceFunctionForWindow(const QByteArray &resource) const;
25 virtual QPlatformNativeInterface::NativeResourceForBackingStoreFunction nativeResourceFunctionForBackingStore(const QByteArray &resource) const;
26
27 virtual QFunctionPointer platformFunction(const QByteArray &function) const;
28protected:
29 QXcbNativeInterface *m_native_interface;
30};
31
32QT_END_NAMESPACE
33
34#endif //QXCBNATIVEINTERFACEHANDLER_H
35

source code of qtbase/src/plugins/platforms/xcb/gl_integrations/qxcbnativeinterfacehandler.h