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
QRhiImplementation Class Referenceabstract

#include <qrhi_p.h>

Inheritance diagram for QRhiImplementation:
Collaboration diagram for QRhiImplementation:

Public Member Functions

virtual ~QRhiImplementation ()
virtual bool create (QRhi::Flags flags)=0
virtual void destroy ()=0
virtual QRhi::AdapterList enumerateAdaptersBeforeCreate (QRhiNativeHandles *nativeHandles) const
virtual QRhiGraphicsPipelinecreateGraphicsPipeline ()=0
virtual QRhiComputePipelinecreateComputePipeline ()=0
virtual QRhiShaderResourceBindingscreateShaderResourceBindings ()=0
virtual QRhiBuffercreateBuffer (QRhiBuffer::Type type, QRhiBuffer::UsageFlags usage, quint32 size)=0
virtual QRhiRenderBuffercreateRenderBuffer (QRhiRenderBuffer::Type type, const QSize &pixelSize, int sampleCount, QRhiRenderBuffer::Flags flags, QRhiTexture::Format backingFormatHint)=0
virtual QRhiTexturecreateTexture (QRhiTexture::Format format, const QSize &pixelSize, int depth, int arraySize, int sampleCount, QRhiTexture::Flags flags)=0
virtual QRhiSamplercreateSampler (QRhiSampler::Filter magFilter, QRhiSampler::Filter minFilter, QRhiSampler::Filter mipmapMode, QRhiSampler::AddressMode u, QRhiSampler::AddressMode v, QRhiSampler::AddressMode w)=0
virtual QRhiTextureRenderTargetcreateTextureRenderTarget (const QRhiTextureRenderTargetDescription &desc, QRhiTextureRenderTarget::Flags flags)=0
virtual QRhiShadingRateMapcreateShadingRateMap ()=0
virtual QRhiSwapChaincreateSwapChain ()=0
virtual QRhi::FrameOpResult beginFrame (QRhiSwapChain *swapChain, QRhi::BeginFrameFlags flags)=0
virtual QRhi::FrameOpResult endFrame (QRhiSwapChain *swapChain, QRhi::EndFrameFlags flags)=0
virtual QRhi::FrameOpResult beginOffscreenFrame (QRhiCommandBuffer **cb, QRhi::BeginFrameFlags flags)=0
virtual QRhi::FrameOpResult endOffscreenFrame (QRhi::EndFrameFlags flags)=0
virtual QRhi::FrameOpResult finish ()=0
virtual void resourceUpdate (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates)=0
virtual void beginPass (QRhiCommandBuffer *cb, QRhiRenderTarget *rt, const QColor &colorClearValue, const QRhiDepthStencilClearValue &depthStencilClearValue, QRhiResourceUpdateBatch *resourceUpdates, QRhiCommandBuffer::BeginPassFlags flags)=0
virtual void endPass (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates)=0
virtual void setGraphicsPipeline (QRhiCommandBuffer *cb, QRhiGraphicsPipeline *ps)=0
virtual void setShaderResources (QRhiCommandBuffer *cb, QRhiShaderResourceBindings *srb, int dynamicOffsetCount, const QRhiCommandBuffer::DynamicOffset *dynamicOffsets)=0
virtual void setVertexInput (QRhiCommandBuffer *cb, int startBinding, int bindingCount, const QRhiCommandBuffer::VertexInput *bindings, QRhiBuffer *indexBuf, quint32 indexOffset, QRhiCommandBuffer::IndexFormat indexFormat)=0
virtual void setViewport (QRhiCommandBuffer *cb, const QRhiViewport &viewport)=0
virtual void setScissor (QRhiCommandBuffer *cb, const QRhiScissor &scissor)=0
virtual void setBlendConstants (QRhiCommandBuffer *cb, const QColor &c)=0
virtual void setStencilRef (QRhiCommandBuffer *cb, quint32 refValue)=0
virtual void setShadingRate (QRhiCommandBuffer *cb, const QSize &coarsePixelSize)=0
virtual void draw (QRhiCommandBuffer *cb, quint32 vertexCount, quint32 instanceCount, quint32 firstVertex, quint32 firstInstance)=0
virtual void drawIndexed (QRhiCommandBuffer *cb, quint32 indexCount, quint32 instanceCount, quint32 firstIndex, qint32 vertexOffset, quint32 firstInstance)=0
virtual void debugMarkBegin (QRhiCommandBuffer *cb, const QByteArray &name)=0
virtual void debugMarkEnd (QRhiCommandBuffer *cb)=0
virtual void debugMarkMsg (QRhiCommandBuffer *cb, const QByteArray &msg)=0
virtual void beginComputePass (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates, QRhiCommandBuffer::BeginPassFlags flags)=0
virtual void endComputePass (QRhiCommandBuffer *cb, QRhiResourceUpdateBatch *resourceUpdates)=0
virtual void setComputePipeline (QRhiCommandBuffer *cb, QRhiComputePipeline *ps)=0
virtual void dispatch (QRhiCommandBuffer *cb, int x, int y, int z)=0
virtual const QRhiNativeHandlesnativeHandles (QRhiCommandBuffer *cb)=0
virtual void beginExternal (QRhiCommandBuffer *cb)=0
virtual void endExternal (QRhiCommandBuffer *cb)=0
virtual double lastCompletedGpuTime (QRhiCommandBuffer *cb)=0
virtual QList< int > supportedSampleCounts () const =0
virtual int ubufAlignment () const =0
virtual QList< QSizesupportedShadingRates (int sampleCount) const =0
virtual bool isYUpInFramebuffer () const =0
virtual bool isYUpInNDC () const =0
virtual bool isClipDepthZeroToOne () const =0
virtual QMatrix4x4 clipSpaceCorrMatrix () const =0
virtual bool isTextureFormatSupported (QRhiTexture::Format format, QRhiTexture::Flags flags) const =0
virtual bool isFeatureSupported (QRhi::Feature feature) const =0
virtual int resourceLimit (QRhi::ResourceLimit limit) const =0
virtual const QRhiNativeHandlesnativeHandles ()=0
virtual QRhiDriverInfo driverInfo () const =0
virtual QRhiStats statistics ()=0
virtual bool makeThreadLocalNativeContextCurrent ()=0
virtual void setQueueSubmitParams (QRhiNativeHandles *params)=0
virtual void releaseCachedResources ()=0
virtual bool isDeviceLost () const =0
virtual QByteArray pipelineCacheData ()=0
virtual void setPipelineCacheData (const QByteArray &data)=0
void prepareForCreate (QRhi *rhi, QRhi::Implementation impl, QRhi::Flags flags, QRhiAdapter *adapter)
bool isCompressedFormat (QRhiTexture::Format format) const
void compressedFormatInfo (QRhiTexture::Format format, const QSize &size, quint32 *bpl, quint32 *byteSize, QSize *blockDim) const
void textureFormatInfo (QRhiTexture::Format format, const QSize &size, quint32 *bpl, quint32 *byteSize, quint32 *bytesPerPixel) const
bool isStencilSupportingFormat (QRhiTexture::Format format) const
void registerResource (QRhiResource *res, bool ownsNativeResources=true)
void unregisterResource (QRhiResource *res)
void addDeleteLater (QRhiResource *res)
void addCleanupCallback (const QRhi::CleanupCallback &callback)
void addCleanupCallback (const void *key, const QRhi::CleanupCallback &callback)
void removeCleanupCallback (const void *key)
bool sanityCheckGraphicsPipeline (QRhiGraphicsPipeline *ps)
bool sanityCheckShaderResourceBindings (QRhiShaderResourceBindings *srb)
void updateLayoutDesc (QRhiShaderResourceBindings *srb)
quint32 pipelineCacheRhiId () const
void pipelineCreationStart ()
void pipelineCreationEnd ()
qint64 totalPipelineCreationTime () const
QRhiVertexInputAttribute::Format shaderDescVariableFormatToVertexInputFormat (QShaderDescription::VariableType type) const
quint32 byteSizePerVertexForVertexInputFormat (QRhiVertexInputAttribute::Format format) const
int effectiveSampleCount (int sampleCount) const
void runCleanup ()

Static Public Member Functions

static QRhiImplementationnewInstance (QRhi::Implementation impl, QRhiInitParams *params, QRhiNativeHandles *importDevice)
static const QRhiShaderResourceBinding::DatashaderResourceBindingData (const QRhiShaderResourceBinding &binding)
static QRhiShaderResourceBinding::DatashaderResourceBindingData (QRhiShaderResourceBinding &binding)
static bool sortedBindingLessThan (const QRhiShaderResourceBinding &a, const QRhiShaderResourceBinding &b)

Public Attributes

QRhiq
bool debugMarkers = false
int currentFrameSlot = 0
bool inFrame = false
QRhiAdapterrequestedRhiAdapter = nullptr

Static Public Attributes

static const int MAX_SHADER_CACHE_ENTRIES = 128

Friends

class QRhi
class QRhiResourceUpdateBatchPrivate
class QRhiBufferData

Detailed Description

Definition at line 35 of file qrhi_p.h.

Constructor & Destructor Documentation

◆ ~QRhiImplementation()

QRhiImplementation::~QRhiImplementation ( )
virtual

Definition at line 8390 of file qrhi.cpp.

Member Function Documentation

◆ addCleanupCallback() [1/2]

void QRhiImplementation::addCleanupCallback ( const QRhi::CleanupCallback & callback)
inline

Definition at line 186 of file qrhi_p.h.

◆ addCleanupCallback() [2/2]

void QRhiImplementation::addCleanupCallback ( const void * key,
const QRhi::CleanupCallback & callback )
inline

Definition at line 191 of file qrhi_p.h.

◆ addDeleteLater()

void QRhiImplementation::addDeleteLater ( QRhiResource * res)
inline

Definition at line 178 of file qrhi_p.h.

◆ beginComputePass()

virtual void QRhiImplementation::beginComputePass ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates,
QRhiCommandBuffer::BeginPassFlags flags )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ beginExternal()

virtual void QRhiImplementation::beginExternal ( QRhiCommandBuffer * cb)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ beginFrame()

virtual QRhi::FrameOpResult QRhiImplementation::beginFrame ( QRhiSwapChain * swapChain,
QRhi::BeginFrameFlags flags )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ beginOffscreenFrame()

virtual QRhi::FrameOpResult QRhiImplementation::beginOffscreenFrame ( QRhiCommandBuffer ** cb,
QRhi::BeginFrameFlags flags )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ beginPass()

virtual void QRhiImplementation::beginPass ( QRhiCommandBuffer * cb,
QRhiRenderTarget * rt,
const QColor & colorClearValue,
const QRhiDepthStencilClearValue & depthStencilClearValue,
QRhiResourceUpdateBatch * resourceUpdates,
QRhiCommandBuffer::BeginPassFlags flags )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ byteSizePerVertexForVertexInputFormat()

quint32 QRhiImplementation::byteSizePerVertexForVertexInputFormat ( QRhiVertexInputAttribute::Format format) const

Definition at line 1970 of file qrhi.cpp.

◆ clipSpaceCorrMatrix()

virtual QMatrix4x4 QRhiImplementation::clipSpaceCorrMatrix ( ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ compressedFormatInfo()

void QRhiImplementation::compressedFormatInfo ( QRhiTexture::Format format,
const QSize & size,
quint32 * bpl,
quint32 * byteSize,
QSize * blockDim ) const

Definition at line 8431 of file qrhi.cpp.

◆ create()

virtual bool QRhiImplementation::create ( QRhi::Flags flags)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createBuffer()

virtual QRhiBuffer * QRhiImplementation::createBuffer ( QRhiBuffer::Type type,
QRhiBuffer::UsageFlags usage,
quint32 size )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createComputePipeline()

virtual QRhiComputePipeline * QRhiImplementation::createComputePipeline ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createGraphicsPipeline()

virtual QRhiGraphicsPipeline * QRhiImplementation::createGraphicsPipeline ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createRenderBuffer()

virtual QRhiRenderBuffer * QRhiImplementation::createRenderBuffer ( QRhiRenderBuffer::Type type,
const QSize & pixelSize,
int sampleCount,
QRhiRenderBuffer::Flags flags,
QRhiTexture::Format backingFormatHint )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createSampler()

virtual QRhiSampler * QRhiImplementation::createSampler ( QRhiSampler::Filter magFilter,
QRhiSampler::Filter minFilter,
QRhiSampler::Filter mipmapMode,
QRhiSampler::AddressMode u,
QRhiSampler::AddressMode v,
QRhiSampler::AddressMode w )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createShaderResourceBindings()

virtual QRhiShaderResourceBindings * QRhiImplementation::createShaderResourceBindings ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createShadingRateMap()

virtual QRhiShadingRateMap * QRhiImplementation::createShadingRateMap ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createSwapChain()

virtual QRhiSwapChain * QRhiImplementation::createSwapChain ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createTexture()

virtual QRhiTexture * QRhiImplementation::createTexture ( QRhiTexture::Format format,
const QSize & pixelSize,
int depth,
int arraySize,
int sampleCount,
QRhiTexture::Flags flags )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ createTextureRenderTarget()

virtual QRhiTextureRenderTarget * QRhiImplementation::createTextureRenderTarget ( const QRhiTextureRenderTargetDescription & desc,
QRhiTextureRenderTarget::Flags flags )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ debugMarkBegin()

virtual void QRhiImplementation::debugMarkBegin ( QRhiCommandBuffer * cb,
const QByteArray & name )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ debugMarkEnd()

virtual void QRhiImplementation::debugMarkEnd ( QRhiCommandBuffer * cb)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ debugMarkMsg()

virtual void QRhiImplementation::debugMarkMsg ( QRhiCommandBuffer * cb,
const QByteArray & msg )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ destroy()

virtual void QRhiImplementation::destroy ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ dispatch()

virtual void QRhiImplementation::dispatch ( QRhiCommandBuffer * cb,
int x,
int y,
int z )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ draw()

virtual void QRhiImplementation::draw ( QRhiCommandBuffer * cb,
quint32 vertexCount,
quint32 instanceCount,
quint32 firstVertex,
quint32 firstInstance )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ drawIndexed()

virtual void QRhiImplementation::drawIndexed ( QRhiCommandBuffer * cb,
quint32 indexCount,
quint32 instanceCount,
quint32 firstIndex,
qint32 vertexOffset,
quint32 firstInstance )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ driverInfo()

virtual QRhiDriverInfo QRhiImplementation::driverInfo ( ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ effectiveSampleCount()

int QRhiImplementation::effectiveSampleCount ( int sampleCount) const

Definition at line 8774 of file qrhi.cpp.

◆ endComputePass()

virtual void QRhiImplementation::endComputePass ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ endExternal()

virtual void QRhiImplementation::endExternal ( QRhiCommandBuffer * cb)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ endFrame()

virtual QRhi::FrameOpResult QRhiImplementation::endFrame ( QRhiSwapChain * swapChain,
QRhi::EndFrameFlags flags )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ endOffscreenFrame()

virtual QRhi::FrameOpResult QRhiImplementation::endOffscreenFrame ( QRhi::EndFrameFlags flags)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ endPass()

virtual void QRhiImplementation::endPass ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ enumerateAdaptersBeforeCreate()

QRhi::AdapterList QRhiImplementation::enumerateAdaptersBeforeCreate ( QRhiNativeHandles * nativeHandles) const
virtual

Reimplemented in QRhiD3D11, and QRhiVulkan.

Definition at line 8912 of file qrhi.cpp.

◆ finish()

virtual QRhi::FrameOpResult QRhiImplementation::finish ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ isClipDepthZeroToOne()

virtual bool QRhiImplementation::isClipDepthZeroToOne ( ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ isCompressedFormat()

bool QRhiImplementation::isCompressedFormat ( QRhiTexture::Format format) const

Definition at line 8424 of file qrhi.cpp.

◆ isDeviceLost()

virtual bool QRhiImplementation::isDeviceLost ( ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ isFeatureSupported()

virtual bool QRhiImplementation::isFeatureSupported ( QRhi::Feature feature) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ isStencilSupportingFormat()

bool QRhiImplementation::isStencilSupportingFormat ( QRhiTexture::Format format) const

Definition at line 8643 of file qrhi.cpp.

◆ isTextureFormatSupported()

virtual bool QRhiImplementation::isTextureFormatSupported ( QRhiTexture::Format format,
QRhiTexture::Flags flags ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ isYUpInFramebuffer()

virtual bool QRhiImplementation::isYUpInFramebuffer ( ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ isYUpInNDC()

virtual bool QRhiImplementation::isYUpInNDC ( ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ lastCompletedGpuTime()

virtual double QRhiImplementation::lastCompletedGpuTime ( QRhiCommandBuffer * cb)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ makeThreadLocalNativeContextCurrent()

virtual bool QRhiImplementation::makeThreadLocalNativeContextCurrent ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ nativeHandles() [1/2]

virtual const QRhiNativeHandles * QRhiImplementation::nativeHandles ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ nativeHandles() [2/2]

virtual const QRhiNativeHandles * QRhiImplementation::nativeHandles ( QRhiCommandBuffer * cb)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ newInstance()

QRhiImplementation * QRhiImplementation::newInstance ( QRhi::Implementation impl,
QRhiInitParams * params,
QRhiNativeHandles * importDevice )
static

Definition at line 8833 of file qrhi.cpp.

◆ pipelineCacheData()

virtual QByteArray QRhiImplementation::pipelineCacheData ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ pipelineCacheRhiId()

quint32 QRhiImplementation::pipelineCacheRhiId ( ) const
inline

Definition at line 205 of file qrhi_p.h.

◆ pipelineCreationEnd()

void QRhiImplementation::pipelineCreationEnd ( )
inline

Definition at line 216 of file qrhi_p.h.

◆ pipelineCreationStart()

void QRhiImplementation::pipelineCreationStart ( )
inline

Definition at line 211 of file qrhi_p.h.

◆ prepareForCreate()

void QRhiImplementation::prepareForCreate ( QRhi * rhi,
QRhi::Implementation impl,
QRhi::Flags flags,
QRhiAdapter * adapter )

Definition at line 8900 of file qrhi.cpp.

◆ registerResource()

void QRhiImplementation::registerResource ( QRhiResource * res,
bool ownsNativeResources = true )
inline

Definition at line 163 of file qrhi_p.h.

◆ releaseCachedResources()

virtual void QRhiImplementation::releaseCachedResources ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ removeCleanupCallback()

void QRhiImplementation::removeCleanupCallback ( const void * key)
inline

Definition at line 196 of file qrhi_p.h.

◆ resourceLimit()

virtual int QRhiImplementation::resourceLimit ( QRhi::ResourceLimit limit) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ resourceUpdate()

virtual void QRhiImplementation::resourceUpdate ( QRhiCommandBuffer * cb,
QRhiResourceUpdateBatch * resourceUpdates )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ runCleanup()

void QRhiImplementation::runCleanup ( )

Definition at line 9404 of file qrhi.cpp.

◆ sanityCheckGraphicsPipeline()

bool QRhiImplementation::sanityCheckGraphicsPipeline ( QRhiGraphicsPipeline * ps)

Definition at line 8655 of file qrhi.cpp.

◆ sanityCheckShaderResourceBindings()

bool QRhiImplementation::sanityCheckShaderResourceBindings ( QRhiShaderResourceBindings * srb)

Definition at line 8689 of file qrhi.cpp.

◆ setBlendConstants()

virtual void QRhiImplementation::setBlendConstants ( QRhiCommandBuffer * cb,
const QColor & c )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setComputePipeline()

virtual void QRhiImplementation::setComputePipeline ( QRhiCommandBuffer * cb,
QRhiComputePipeline * ps )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setGraphicsPipeline()

virtual void QRhiImplementation::setGraphicsPipeline ( QRhiCommandBuffer * cb,
QRhiGraphicsPipeline * ps )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setPipelineCacheData()

virtual void QRhiImplementation::setPipelineCacheData ( const QByteArray & data)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setQueueSubmitParams()

virtual void QRhiImplementation::setQueueSubmitParams ( QRhiNativeHandles * params)
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setScissor()

virtual void QRhiImplementation::setScissor ( QRhiCommandBuffer * cb,
const QRhiScissor & scissor )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setShaderResources()

virtual void QRhiImplementation::setShaderResources ( QRhiCommandBuffer * cb,
QRhiShaderResourceBindings * srb,
int dynamicOffsetCount,
const QRhiCommandBuffer::DynamicOffset * dynamicOffsets )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setShadingRate()

virtual void QRhiImplementation::setShadingRate ( QRhiCommandBuffer * cb,
const QSize & coarsePixelSize )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setStencilRef()

virtual void QRhiImplementation::setStencilRef ( QRhiCommandBuffer * cb,
quint32 refValue )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setVertexInput()

virtual void QRhiImplementation::setVertexInput ( QRhiCommandBuffer * cb,
int startBinding,
int bindingCount,
const QRhiCommandBuffer::VertexInput * bindings,
QRhiBuffer * indexBuf,
quint32 indexOffset,
QRhiCommandBuffer::IndexFormat indexFormat )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ setViewport()

virtual void QRhiImplementation::setViewport ( QRhiCommandBuffer * cb,
const QRhiViewport & viewport )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ shaderDescVariableFormatToVertexInputFormat()

QRhiVertexInputAttribute::Format QRhiImplementation::shaderDescVariableFormatToVertexInputFormat ( QShaderDescription::VariableType type) const

Definition at line 1926 of file qrhi.cpp.

◆ shaderResourceBindingData() [1/2]

const QRhiShaderResourceBinding::Data * QRhiImplementation::shaderResourceBindingData ( const QRhiShaderResourceBinding & binding)
inlinestatic

Definition at line 229 of file qrhi_p.h.

◆ shaderResourceBindingData() [2/2]

QRhiShaderResourceBinding::Data * QRhiImplementation::shaderResourceBindingData ( QRhiShaderResourceBinding & binding)
inlinestatic

Definition at line 234 of file qrhi_p.h.

◆ sortedBindingLessThan()

bool QRhiImplementation::sortedBindingLessThan ( const QRhiShaderResourceBinding & a,
const QRhiShaderResourceBinding & b )
inlinestatic

Definition at line 239 of file qrhi_p.h.

◆ statistics()

virtual QRhiStats QRhiImplementation::statistics ( )
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ supportedSampleCounts()

virtual QList< int > QRhiImplementation::supportedSampleCounts ( ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ supportedShadingRates()

virtual QList< QSize > QRhiImplementation::supportedShadingRates ( int sampleCount) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ textureFormatInfo()

void QRhiImplementation::textureFormatInfo ( QRhiTexture::Format format,
const QSize & size,
quint32 * bpl,
quint32 * byteSize,
quint32 * bytesPerPixel ) const

Definition at line 8551 of file qrhi.cpp.

◆ totalPipelineCreationTime()

qint64 QRhiImplementation::totalPipelineCreationTime ( ) const
inline

Definition at line 221 of file qrhi_p.h.

◆ ubufAlignment()

virtual int QRhiImplementation::ubufAlignment ( ) const
pure virtual

Implemented in QRhiD3D11, QRhiGles2, QRhiMetal, QRhiNull, and QRhiVulkan.

◆ unregisterResource()

void QRhiImplementation::unregisterResource ( QRhiResource * res)
inline

Definition at line 173 of file qrhi_p.h.

◆ updateLayoutDesc()

void QRhiImplementation::updateLayoutDesc ( QRhiShaderResourceBindings * srb)

Definition at line 5706 of file qrhi.cpp.

◆ QRhi

friend class QRhi
friend

Definition at line 271 of file qrhi_p.h.

◆ QRhiBufferData

friend class QRhiBufferData
friend

Definition at line 273 of file qrhi_p.h.

◆ QRhiResourceUpdateBatchPrivate

friend class QRhiResourceUpdateBatchPrivate
friend

Definition at line 272 of file qrhi_p.h.

Member Data Documentation

◆ currentFrameSlot

int QRhiImplementation::currentFrameSlot = 0

Definition at line 253 of file qrhi_p.h.

◆ debugMarkers

bool QRhiImplementation::debugMarkers = false

Definition at line 252 of file qrhi_p.h.

◆ inFrame

bool QRhiImplementation::inFrame = false

Definition at line 254 of file qrhi_p.h.

◆ MAX_SHADER_CACHE_ENTRIES

const int QRhiImplementation::MAX_SHADER_CACHE_ENTRIES = 128
static

Definition at line 250 of file qrhi_p.h.

◆ q

QRhi* QRhiImplementation::q

Definition at line 248 of file qrhi_p.h.

◆ requestedRhiAdapter

QRhiAdapter* QRhiImplementation::requestedRhiAdapter = nullptr

Definition at line 256 of file qrhi_p.h.


The documentation for this class was generated from the following files: