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
qqnxvulkaninstance.h
Go to the documentation of this file.
1// Copyright (C) 2026 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 QQNXVULKANINSTANCE_H
5#define QQNXVULKANINSTANCE_H
6
7#if defined(VULKAN_H_) && !defined(VK_USE_PLATFORM_SCREEN_QNX)
8#error "vulkan.h included without QNX Screen WSI"
9#endif
10
11#define VK_USE_PLATFORM_SCREEN_QNX
12
13#include <QtGui/private/qbasicvulkanplatforminstance_p.h>
14#include <QtCore/QLoggingCategory>
15
17
19
20class QQnxWindow;
21
23{
24public:
25 QQnxVulkanInstance(QVulkanInstance *instance);
27
29 bool supportsPresent(VkPhysicalDevice physicalDevice,
30 uint32_t queueFamilyIndex,
31 QWindow *window) override;
32 // presentQueued() is intentionally not overridden: the QNX Screen ICD calls
33 // screen_post_window() internally during vkQueuePresentKHR, so no explicit
34 // screen_flush_context() is needed (unlike the raster path).
35
37
38private:
39 QVulkanInstance *m_instance;
40 PFN_vkCreateScreenSurfaceQNX m_createSurface;
41 PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX m_getPhysDevScreenPresSupport;
42};
43
44QT_END_NAMESPACE
45
46#endif // QQNXVULKANINSTANCE_H
QQnxVulkanInstance(QVulkanInstance *instance)
void createOrAdoptInstance() override
bool supportsPresent(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, QWindow *window) override
VkSurfaceKHR createSurface(QQnxWindow *window)
The QQnxWindow is the base class of the various classes used as instances of QPlatformWindow in the Q...
Definition qqnxwindow.h:31
Combined button and popup list for selecting options.
QT_BEGIN_NAMESPACE Q_DECLARE_LOGGING_CATEGORY(lcQIORing)