QRhiDriverInfo Struct

Describes the physical device, adapter, or graphics API implementation that is used by an initialized QRhi. More...

Header: #include <rhi/qrhi.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::GuiPrivate)
qmake: QT += gui-private
Since: Qt 6.6

Public Types

enum DeviceType { UnknownDevice, IntegratedDevice, DiscreteDevice, ExternalDevice, VirtualDevice, CpuDevice }

Public Variables

quint64 deviceId
QByteArray deviceName
QRhiDriverInfo::DeviceType deviceType
quint64 vendorId

Detailed Description

Graphics APIs offer different levels and kinds of information. The only value that is available across all APIs is the deviceName, which is a freetext description of the physical device, adapter, or is a combination of the strings reported for GL_VENDOR + GL_RENDERER + GL_VERSION. The deviceId is always 0 for OpenGL. vendorId is always 0 for OpenGL and Metal. deviceType is always UnknownDevice for OpenGL and Direct 3D.

Note: This is a RHI API with limited compatibility guarantees, see QRhi for details.

Member Type Documentation

enum QRhiDriverInfo::DeviceType

Specifies the graphics device's type, when the information is available.

In practice this is only applicable with Vulkan and Metal. With Direct 3D 11 and 12, using an adapter with the software flag set leads to the value CpuDevice. Otherwise, and with OpenGL, the value is always UnknownDevice.

ConstantValue
QRhiDriverInfo::UnknownDevice0
QRhiDriverInfo::IntegratedDevice1
QRhiDriverInfo::DiscreteDevice2
QRhiDriverInfo::ExternalDevice3
QRhiDriverInfo::VirtualDevice4
QRhiDriverInfo::CpuDevice5

Member Variable Documentation

quint64 QRhiDriverInfo::deviceId

See also QRhi::driverInfo().

QByteArray QRhiDriverInfo::deviceName

See also QRhi::driverInfo().

QRhiDriverInfo::DeviceType QRhiDriverInfo::deviceType

See also QRhi::driverInfo() and QRhiDriverInfo::DeviceType.

quint64 QRhiDriverInfo::vendorId

See also QRhi::driverInfo().

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.