Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
qrhi.cpp File Reference
#include "qrhi_p.h"
#include <qmath.h>
#include <QLoggingCategory>
#include "qrhinull_p.h"
#include "qrhigles2_p.h"
#include <memory>
+ Include dependency graph for qrhi.cpp:

Go to the source code of this file.

Functions

QDebug operator<< (QDebug dbg, const QRhiDepthStencilClearValue &v)
 
QDebug operator<< (QDebug dbg, const QRhiViewport &v)
 
QDebug operator<< (QDebug dbg, const QRhiScissor &s)
 
QDebug operator<< (QDebug dbg, const QRhiVertexInputBinding &b)
 
QDebug operator<< (QDebug dbg, const QRhiVertexInputAttribute &a)
 
QDebug operator<< (QDebug dbg, const QRhiVertexInputLayout &v)
 
QDebug operator<< (QDebug dbg, const QRhiShaderStage &s)
 
QDebug operator<< (QDebug dbg, const QRhiShaderResourceBinding &b)
 
QDebug operator<< (QDebug dbg, const QRhiShaderResourceBindings &srb)
 
QDebug operator<< (QDebug dbg, const QRhiSwapChainHdrInfo &info)
 
static const char * resourceTypeStr (const QRhiResource *res)
 
static const char * deviceTypeStr (QRhiDriverInfo::DeviceType type)
 \variable QRhiDriverInfo::deviceName
 
QDebug operator<< (QDebug dbg, const QRhiDriverInfo &info)
 
QDebug operator<< (QDebug dbg, const QRhiStats &info)
 \variable QRhiStats::totalPipelineCreationTime
 
static QRhiPassResourceTracker::BufferStage earlierStage (QRhiPassResourceTracker::BufferStage a, QRhiPassResourceTracker::BufferStage b)
 
static QRhiPassResourceTracker::TextureStage earlierStage (QRhiPassResourceTracker::TextureStage a, QRhiPassResourceTracker::TextureStage b)
 
static bool isImageLoadStore (QRhiPassResourceTracker::TextureAccess access)
 

Variables

static Q_CONSTINIT QBasicAtomicInteger< QRhiGlobalObjectIdGenerator::Typecounter = Q_BASIC_ATOMIC_INITIALIZER(0)
 

Function Documentation

◆ deviceTypeStr()

static const char * deviceTypeStr ( QRhiDriverInfo::DeviceType  type)
inlinestatic

\variable QRhiDriverInfo::deviceName

See also
QRhi::driverInfo()

\variable QRhiDriverInfo::deviceId

See also
QRhi::driverInfo()

\variable QRhiDriverInfo::vendorId

See also
QRhi::driverInfo()

\variable QRhiDriverInfo::deviceType

See also
QRhi::driverInfo(), QRhiDriverInfo::DeviceType

Definition at line 8385 of file qrhi.cpp.

References QRhiDriverInfo::CpuDevice, QRhiDriverInfo::DiscreteDevice, QRhiDriverInfo::ExternalDevice, QRhiDriverInfo::IntegratedDevice, QRhiDriverInfo::UnknownDevice, and QRhiDriverInfo::VirtualDevice.

Referenced by operator<<().

+ Here is the caller graph for this function:

◆ earlierStage() [1/2]

Definition at line 10554 of file qrhi.cpp.

References qMin().

Referenced by QRhiPassResourceTracker::registerBuffer(), and QRhiPassResourceTracker::registerTexture().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ earlierStage() [2/2]

Definition at line 10586 of file qrhi.cpp.

References qMin().

+ Here is the call graph for this function:

◆ isImageLoadStore()

static bool isImageLoadStore ( QRhiPassResourceTracker::TextureAccess  access)
inlinestatic

Definition at line 10592 of file qrhi.cpp.

References QRhiPassResourceTracker::TexStorageLoad, QRhiPassResourceTracker::TexStorageLoadStore, and QRhiPassResourceTracker::TexStorageStore.

Referenced by QRhiPassResourceTracker::registerTexture().

+ Here is the caller graph for this function:

◆ operator<<() [1/12]

QDebug operator<< ( QDebug  dbg,
const QRhiDepthStencilClearValue v 
)

Definition at line 1182 of file qrhi.cpp.

◆ operator<<() [2/12]

QDebug operator<< ( QDebug  dbg,
const QRhiDriverInfo info 
)

Definition at line 8404 of file qrhi.cpp.

References deviceTypeStr(), Qt::hex(), and info.

+ Here is the call graph for this function:

◆ operator<<() [3/12]

QDebug operator<< ( QDebug  dbg,
const QRhiScissor s 
)

Definition at line 1395 of file qrhi.cpp.

◆ operator<<() [4/12]

◆ operator<<() [5/12]

QDebug operator<< ( QDebug  dbg,
const QRhiShaderResourceBindings srb 
)

Definition at line 6123 of file qrhi.cpp.

◆ operator<<() [6/12]

QDebug operator<< ( QDebug  dbg,
const QRhiShaderStage s 
)

Definition at line 2147 of file qrhi.cpp.

◆ operator<<() [7/12]

QDebug operator<< ( QDebug  dbg,
const QRhiStats info 
)

\variable QRhiStats::totalPipelineCreationTime

The total time in milliseconds spent in graphics and compute pipeline creation, which usually involves shader compilation or cache lookups, and potentially expensive processing.

Note
The value should not be compared between different backends since the concept of "pipelines" and what exactly happens under the hood during, for instance, a call to QRhiGraphicsPipeline::create(), differ greatly between graphics APIs and their implementations.
See also
QRhi::statistics()

\variable QRhiStats::blockCount

Statistic reported from the Vulkan or D3D12 memory allocator.

See also
QRhi::statistics()

\variable QRhiStats::allocCount

Statistic reported from the Vulkan or D3D12 memory allocator.

See also
QRhi::statistics()

\variable QRhiStats::usedBytes

Statistic reported from the Vulkan or D3D12 memory allocator.

See also
QRhi::statistics()

\variable QRhiStats::unusedBytes

Statistic reported from the Vulkan or D3D12 memory allocator.

See also
QRhi::statistics()

\variable QRhiStats::totalUsageBytes

Valid only with D3D12 currently. Matches IDXGIAdapter3::QueryVideoMemoryInfo().

See also
QRhi::statistics()

Definition at line 9968 of file qrhi.cpp.

References info.

◆ operator<<() [8/12]

QDebug operator<< ( QDebug  dbg,
const QRhiSwapChainHdrInfo info 
)

◆ operator<<() [9/12]

QDebug operator<< ( QDebug  dbg,
const QRhiVertexInputAttribute a 
)

Definition at line 1775 of file qrhi.cpp.

◆ operator<<() [10/12]

QDebug operator<< ( QDebug  dbg,
const QRhiVertexInputBinding b 
)

Definition at line 1547 of file qrhi.cpp.

◆ operator<<() [11/12]

QDebug operator<< ( QDebug  dbg,
const QRhiVertexInputLayout v 
)

Definition at line 2000 of file qrhi.cpp.

◆ operator<<() [12/12]

QDebug operator<< ( QDebug  dbg,
const QRhiViewport v 
)

Definition at line 1302 of file qrhi.cpp.

◆ resourceTypeStr()

static const char * resourceTypeStr ( const QRhiResource res)
static

Variable Documentation

◆ counter