![]() |
Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
#include <qrhimetal_p.h>
Classes | |
struct | TessDrawArgs |
Static Public Member Functions | |
static bool | probe (QRhiMetalInitParams *params) |
static QRhiSwapChainProxyData | updateSwapChainProxyData (QWindow *window) |
![]() | |
static QRhiImplementation * | newInstance (QRhi::Implementation impl, QRhiInitParams *params, QRhiNativeHandles *importDevice) |
static const QRhiShaderResourceBinding::Data * | shaderResourceBindingData (const QRhiShaderResourceBinding &binding) |
static QRhiShaderResourceBinding::Data * | shaderResourceBindingData (QRhiShaderResourceBinding &binding) |
static bool | sortedBindingLessThan (const QRhiShaderResourceBinding &a, const QRhiShaderResourceBinding &b) |
Public Attributes | ||
QRhi::Flags | rhiFlags | |
bool | importedDevice = false | |
bool | importedCmdQueue = false | |
QMetalSwapChain * | currentSwapChain = nullptr | |
QSet< QMetalSwapChain * > | swapchains | |
QRhiMetalNativeHandles | nativeHandlesStruct | |
QRhiDriverInfo | driverInfoStruct | |
quint32 | osMajor = 0 | |
quint32 | osMinor = 0 | |
struct { | ||
int maxTextureSize = 4096 | ||
bool baseVertexAndInstance = true | ||
QVector< int > supportedSampleCounts | ||
bool isAppleGPU = false | ||
int maxThreadGroupSize = 512 | ||
bool multiView = false | ||
bool shadingRateMap = false | ||
} | caps | |
QRhiMetalData * | d = nullptr | |
![]() | ||
QRhi * | q | |
bool | debugMarkers = false | |
int | currentFrameSlot = 0 | |
bool | inFrame = false | |
QRhiAdapter * | requestedRhiAdapter = nullptr | |
Static Public Attributes | |
static const int | SUPPORTED_STAGES = 5 |
![]() | |
static const int | MAX_SHADER_CACHE_ENTRIES = 128 |
Definition at line 341 of file qrhimetal_p.h.
QRhiMetal::QRhiMetal | ( | QRhiMetalInitParams * | params, |
QRhiMetalNativeHandles * | importDevice = nullptr ) |
Definition at line 481 of file qrhimetal.mm.
References QRhiMetalData::QRhiMetalData(), d, importedCmdQueue, and importedDevice.
QRhiMetal::~QRhiMetal | ( | ) |
Definition at line 501 of file qrhimetal.mm.
References d.
void QRhiMetal::adjustForMultiViewDraw | ( | quint32 * | instanceCount, |
QRhiCommandBuffer * | cb ) |
Definition at line 2207 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 3170 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2359 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2376 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2530 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 3012 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 728 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 555 of file qrhimetal.mm.
References d, and importedDevice.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 703 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1120 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1115 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1083 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1097 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1125 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1104 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 698 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1090 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1109 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2319 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2332 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2344 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 663 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 3214 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2240 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2269 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 922 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 3185 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2364 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2429 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2551 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 3156 of file qrhimetal.mm.
void QRhiMetal::enqueueResourceUpdates | ( | QRhiCommandBuffer * | cb, |
QRhiResourceUpdateBatch * | resourceUpdates ) |
Definition at line 2788 of file qrhimetal.mm.
void QRhiMetal::enqueueShaderResourceBindings | ( | QMetalShaderResourceBindings * | srbD, |
QMetalCommandBuffer * | cbD, | ||
int | dynamicOffsetCount, | ||
const QRhiCommandBuffer::DynamicOffset * | dynamicOffsets, | ||
bool | offsetOnlyChange, | ||
const QShader::NativeResourceBindingMap * | nativeResourceBindingMaps[SUPPORTED_STAGES] ) |
Definition at line 1285 of file qrhimetal.mm.
void QRhiMetal::enqueueSubresUpload | ( | QMetalTexture * | texD, |
void * | mp, | ||
void * | blitEncPtr, | ||
int | layer, | ||
int | level, | ||
const QRhiTextureSubresourceUploadDescription & | subresDesc, | ||
qsizetype * | curOfs ) |
Definition at line 2661 of file qrhimetal.mm.
void QRhiMetal::executeBufferHostWritesForCurrentFrame | ( | QMetalBuffer * | bufD | ) |
Definition at line 3000 of file qrhimetal.mm.
void QRhiMetal::executeBufferHostWritesForSlot | ( | QMetalBuffer * | bufD, |
int | slot ) |
Definition at line 2977 of file qrhimetal.mm.
Definition at line 3249 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2570 of file qrhimetal.mm.
Definition at line 3292 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 723 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 953 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 775 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 742 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 713 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 718 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2370 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 934 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 917 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 2354 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 968 of file qrhimetal.mm.
|
static |
Definition at line 512 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 945 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 878 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 3005 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1929 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 3197 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1499 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1021 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 940 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1908 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1529 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1946 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1938 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1802 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 1861 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 927 of file qrhimetal.mm.
qsizetype QRhiMetal::subresUploadByteSize | ( | const QRhiTextureSubresourceUploadDescription & | subresDesc | ) | const |
Definition at line 2651 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Implements QRhiImplementation.
Definition at line 692 of file qrhimetal.mm.
void QRhiMetal::tessellatedDraw | ( | const TessDrawArgs & | args | ) |
Definition at line 2020 of file qrhimetal.mm.
|
overridevirtual |
Implements QRhiImplementation.
Definition at line 708 of file qrhimetal.mm.
|
static |
Definition at line 6330 of file qrhimetal.mm.
bool QRhiMetal::baseVertexAndInstance = true |
Definition at line 519 of file qrhimetal_p.h.
struct { ... } QRhiMetal::caps |
QMetalSwapChain* QRhiMetal::currentSwapChain = nullptr |
Definition at line 510 of file qrhimetal_p.h.
QRhiMetalData* QRhiMetal::d = nullptr |
Definition at line 527 of file qrhimetal_p.h.
Referenced by QRhiMetal(), ~QRhiMetal(), and create().
QRhiDriverInfo QRhiMetal::driverInfoStruct |
Definition at line 513 of file qrhimetal_p.h.
bool QRhiMetal::importedCmdQueue = false |
Definition at line 509 of file qrhimetal_p.h.
Referenced by QRhiMetal().
bool QRhiMetal::importedDevice = false |
Definition at line 508 of file qrhimetal_p.h.
Referenced by QRhiMetal(), and create().
bool QRhiMetal::isAppleGPU = false |
Definition at line 521 of file qrhimetal_p.h.
int QRhiMetal::maxTextureSize = 4096 |
Definition at line 518 of file qrhimetal_p.h.
int QRhiMetal::maxThreadGroupSize = 512 |
Definition at line 522 of file qrhimetal_p.h.
bool QRhiMetal::multiView = false |
Definition at line 523 of file qrhimetal_p.h.
QRhiMetalNativeHandles QRhiMetal::nativeHandlesStruct |
Definition at line 512 of file qrhimetal_p.h.
quint32 QRhiMetal::osMajor = 0 |
Definition at line 514 of file qrhimetal_p.h.
quint32 QRhiMetal::osMinor = 0 |
Definition at line 515 of file qrhimetal_p.h.
QRhi::Flags QRhiMetal::rhiFlags |
Definition at line 507 of file qrhimetal_p.h.
bool QRhiMetal::shadingRateMap = false |
Definition at line 524 of file qrhimetal_p.h.
|
static |
Definition at line 471 of file qrhimetal_p.h.
QVector< int > QRhiMetal::supportedSampleCounts |
Definition at line 520 of file qrhimetal_p.h.
QSet<QMetalSwapChain *> QRhiMetal::swapchains |
Definition at line 511 of file qrhimetal_p.h.