Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QSSGRhiContextStats Class Reference

#include <qssgrhicontext_p.h>

+ Collaboration diagram for QSSGRhiContextStats:

Classes

struct  DrawInfo
 
struct  GlobalInfo
 
struct  InstancedDrawInfo
 
struct  PerLayerInfo
 
struct  RenderPassInfo
 

Public Member Functions

 QSSGRhiContextStats (QSSGRhiContext &context)
 
bool isEnabled () const
 
void drawIndexed (quint32 indexCount, quint32 instanceCount)
 
void draw (quint32 vertexCount, quint32 instanceCount)
 
void meshDataSizeChanges (quint64 newSize)
 
void imageDataSizeChanges (quint64 newSize)
 
void registerMaterialShaderGenerationTime (qint64 ms)
 
void registerEffectShaderGenerationTime (qint64 ms)
 
void start (QSSGRenderLayer *layer)
 
void stop (QSSGRenderLayer *layer)
 
void beginRenderPass (QRhiTextureRenderTarget *rt)
 
void endRenderPass ()
 
void printRenderPass (const RenderPassInfo &rp)
 
void cleanupLayerInfo (QSSGRenderLayer *layer)
 

Static Public Member Functions

static QSSGRhiContextStatsget (QSSGRhiContext &rhiCtx)
 
static const QSSGRhiContextStatsget (const QSSGRhiContext &rhiCtx)
 
static bool profilingEnabled ()
 
static bool rendererDebugEnabled ()
 
static quint64 totalDrawCallCountForPass (const QSSGRhiContextStats::RenderPassInfo &pass)
 
static quint64 totalVertexCountForPass (const QSSGRhiContextStats::RenderPassInfo &pass)
 

Public Attributes

QHash< QSSGRenderLayer *, PerLayerInfoperLayerInfo
 
GlobalInfo globalInfo
 
QSSGRhiContextrhiCtx
 
QSSGRenderLayerlayerKey = nullptr
 
QSet< QSSGRenderLayer * > dynamicDataSources
 

Detailed Description

Definition at line 737 of file qssgrhicontext_p.h.

Constructor & Destructor Documentation

◆ QSSGRhiContextStats()

QSSGRhiContextStats::QSSGRhiContextStats ( QSSGRhiContext & context)
inline

Definition at line 787 of file qssgrhicontext_p.h.

Member Function Documentation

◆ beginRenderPass()

void QSSGRhiContextStats::beginRenderPass ( QRhiTextureRenderTarget * rt)

Definition at line 1463 of file qssgrhicontext.cpp.

References QString::fromUtf8(), info, layerKey, QRhiResource::name(), perLayerInfo, QRhiRenderTarget::pixelSize(), and Q_TRACE.

+ Here is the call graph for this function:

◆ cleanupLayerInfo()

void QSSGRhiContextStats::cleanupLayerInfo ( QSSGRenderLayer * layer)

Definition at line 1457 of file qssgrhicontext.cpp.

References dynamicDataSources, perLayerInfo, and QSet< T >::remove().

+ Here is the call graph for this function:

◆ draw()

◆ drawIndexed()

◆ endRenderPass()

void QSSGRhiContextStats::endRenderPass ( )

Definition at line 1471 of file qssgrhicontext.cpp.

References info, layerKey, perLayerInfo, and Q_TRACE.

◆ get() [1/2]

const QSSGRhiContextStats & QSSGRhiContextStats::get ( const QSSGRhiContext & rhiCtx)
static

Definition at line 1483 of file qssgrhicontext.cpp.

References QSSGRhiContextPrivate::get(), and rhiCtx.

+ Here is the call graph for this function:

◆ get() [2/2]

QSSGRhiContextStats & QSSGRhiContextStats::get ( QSSGRhiContext & rhiCtx)
static

Definition at line 1478 of file qssgrhicontext.cpp.

References QSSGRhiContextPrivate::get(), and rhiCtx.

Referenced by QQuick3DSceneRenderer::~QQuick3DSceneRenderer(), QSSGBufferManager::decreaseMemoryStat(), QSSGBufferManager::decreaseMemoryStat(), QSSGRendererPrivate::getShaderPipelineForDefaultMaterial(), QSSGBufferManager::increaseMemoryStat(), QSSGBufferManager::increaseMemoryStat(), QQuick3DSGRenderNode::render(), QQuick3DSceneRenderer::renderToRhiTexture(), QQuick3DRenderStats::setRhiContext(), and QSSGCustomMaterialSystem::shadersForCustomMaterial().

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

◆ imageDataSizeChanges()

void QSSGRhiContextStats::imageDataSizeChanges ( quint64 newSize)
inline

◆ isEnabled()

bool QSSGRhiContextStats::isEnabled ( ) const

Definition at line 1500 of file qssgrhicontext.cpp.

References dynamicDataSources, QSet< T >::isEmpty(), profilingEnabled(), Q_TRACE_ENABLED, and rendererDebugEnabled().

+ Here is the call graph for this function:

◆ meshDataSizeChanges()

void QSSGRhiContextStats::meshDataSizeChanges ( quint64 newSize)
inline

Definition at line 812 of file qssgrhicontext_p.h.

References QSSGRhiContextStats::GlobalInfo::meshDataSize.

◆ printRenderPass()

◆ profilingEnabled()

bool QSSGRhiContextStats::profilingEnabled ( )
static

Definition at line 1488 of file qssgrhicontext.cpp.

References enabled, and Q_QUICK3D_PROFILING_ENABLED.

Referenced by isEnabled().

+ Here is the caller graph for this function:

◆ registerEffectShaderGenerationTime()

void QSSGRhiContextStats::registerEffectShaderGenerationTime ( qint64 ms)
inline

◆ registerMaterialShaderGenerationTime()

void QSSGRhiContextStats::registerMaterialShaderGenerationTime ( qint64 ms)
inline

◆ rendererDebugEnabled()

bool QSSGRhiContextStats::rendererDebugEnabled ( )
static

Definition at line 1494 of file qssgrhicontext.cpp.

References enabled, QByteArrayLiteral, and qgetenv().

Referenced by isEnabled(), and stop().

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

◆ start()

void QSSGRhiContextStats::start ( QSSGRenderLayer * layer)

Definition at line 1420 of file qssgrhicontext.cpp.

References info, layerKey, and perLayerInfo.

◆ stop()

void QSSGRhiContextStats::stop ( QSSGRenderLayer * layer)

Definition at line 1429 of file qssgrhicontext.cpp.

References QByteArray::constData(), QSize::height(), i, info, layerKey, perLayerInfo, QSSGRhiContextStats::RenderPassInfo::pixelSize, printRenderPass(), qDebug, rendererDebugEnabled(), QSSGRhiContextStats::RenderPassInfo::rtName, and QSize::width().

+ Here is the call graph for this function:

◆ totalDrawCallCountForPass()

static quint64 QSSGRhiContextStats::totalDrawCallCountForPass ( const QSSGRhiContextStats::RenderPassInfo & pass)
inlinestatic

◆ totalVertexCountForPass()

static quint64 QSSGRhiContextStats::totalVertexCountForPass ( const QSSGRhiContextStats::RenderPassInfo & pass)
inlinestatic

Member Data Documentation

◆ dynamicDataSources

◆ globalInfo

GlobalInfo QSSGRhiContextStats::globalInfo

Definition at line 785 of file qssgrhicontext_p.h.

◆ layerKey

QSSGRenderLayer* QSSGRhiContextStats::layerKey = nullptr

Definition at line 856 of file qssgrhicontext_p.h.

Referenced by beginRenderPass(), draw(), drawIndexed(), endRenderPass(), start(), and stop().

◆ perLayerInfo

QHash<QSSGRenderLayer *, PerLayerInfo> QSSGRhiContextStats::perLayerInfo

◆ rhiCtx

QSSGRhiContext* QSSGRhiContextStats::rhiCtx

Definition at line 855 of file qssgrhicontext_p.h.

Referenced by get(), get(), and QQuick3DRenderStats::setRhiContext().


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