4#ifndef QSGTEXTURE_PLATFORM_H
5#define QSGTEXTURE_PLATFORM_H
7#include <QtCore/qnativeinterface.h>
8#include <QtQuick/qquickwindow.h>
11#include <QtGui/qopengl.h>
15#include <QtGui/qvulkaninstance.h>
18#if QT_CONFIG(metal) || defined(Q_QDOC)
19# if defined(__OBJC__) || defined(Q_QDOC)
21# define QT_OBJC_PROTOCOL(protocol) id<protocol>
23 typedef struct objc_object *
id;
24# define QT_OBJC_PROTOCOL(protocol) id
32#if QT_CONFIG(opengl) || defined(Q_QDOC)
33struct Q_QUICK_EXPORT QSGOpenGLTexture
36 virtual GLuint nativeTexture()
const = 0;
40 QQuickWindow::CreateTextureOptions options = {});
44 QQuickWindow::CreateTextureOptions options = {});
48#if defined(Q_OS_WIN) || defined(Q_QDOC)
49struct Q_QUICK_EXPORT QSGD3D11Texture
52 virtual void *nativeTexture()
const = 0;
56 QQuickWindow::CreateTextureOptions options = {});
58struct Q_QUICK_EXPORT QSGD3D12Texture
61 virtual void *nativeTexture()
const = 0;
62 virtual int nativeResourceState()
const = 0;
67 QQuickWindow::CreateTextureOptions options = {});
71#if QT_CONFIG(metal) || defined(Q_QDOC)
72struct Q_QUICK_EXPORT QSGMetalTexture
75 virtual QT_OBJC_PROTOCOL(MTLTexture) nativeTexture()
const = 0;
79 QQuickWindow::CreateTextureOptions options = {});
83#if QT_CONFIG(vulkan) || defined(Q_QDOC)
84struct Q_QUICK_EXPORT QSGVulkanTexture
87 virtual VkImage nativeImage()
const = 0;
88 virtual VkImageLayout nativeImageLayout()
const = 0;
93 QQuickWindow::CreateTextureOptions options = {});
\qmltype Window \instantiates QQuickWindow \inqmlmodule QtQuick
T fromNative(const T &value, qreal scaleFactor, QPoint origin=QPoint(0, 0))
Combined button and popup list for selecting options.
#define QT_DECLARE_NATIVE_INTERFACE(...)
GLenum GLuint GLintptr GLsizeiptr size
[1]