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
QSSGBufferManager Class Reference

#include <qssgrenderbuffermanager_p.h>

Collaboration diagram for QSSGBufferManager:

Classes

struct  CustomImageCacheKey
struct  ImageCacheKey
struct  ImageData
struct  MemoryStats
struct  MeshData

Public Types

enum  MipMode : quint8 { MipModeFollowRenderImage , MipModeEnable , MipModeDisable , MipModeBsdf }
enum  LoadRenderImageFlag { LoadWithFlippedY = 0x01 }

Public Member Functions

 QSSGBufferManager ()
 ~QSSGBufferManager ()
void setRenderContextInterface (QSSGRenderContextInterface *ctx)
void releaseCachedResources ()
void releaseResourcesForLayer (QSSGRenderLayer *layer)
QSSGRenderImageTexture loadRenderImage (const QSSGRenderImage *image, MipMode inMipMode=MipModeFollowRenderImage, LoadRenderImageFlags flags=LoadWithFlippedY)
QSSGRenderImageTexture loadLightmap (const QSSGRenderModel &model)
QSSGRenderImageTexture loadSkinmap (QSSGRenderTextureData *skin)
QSSGRenderMeshgetMeshForPicking (const QSSGRenderModel &model) const
QSSGBounds3 getModelBounds (const QSSGRenderModel *model)
QSSGRenderMeshloadMesh (const QSSGRenderModel &model)
QSSGMesh::Mesh loadLightmapMesh (const QSSGRenderModel &model)
void cleanupUnreferencedBuffers (quint32 frameId, QSSGRenderLayer *layer)
void resetUsageCounters (quint32 frameId, QSSGRenderLayer *layer)
void releaseGeometry (QSSGRenderGeometry *geometry)
void releaseTextureData (const QSSGRenderTextureData *data)
void releaseTextureData (const CustomImageCacheKey &key)
void releaseExtensionResult (const QSSGRenderExtension &rext)
void commitBufferResourceUpdates ()
void processResourceLoader (const QSSGRenderResourceLoader *loader)
QSSGMesh::Mesh loadMeshData (const QSSGRenderGeometry *geometry)
void registerExtensionResult (const QSSGRenderExtension &extensions, QRhiTexture *texture)
QMutexmeshUpdateMutex ()
void increaseMemoryStat (QRhiTexture *texture)
void decreaseMemoryStat (QRhiTexture *texture)
void increaseMemoryStat (QSSGRenderMesh *mesh)
void decreaseMemoryStat (QSSGRenderMesh *mesh)
const QHash< ImageCacheKey, ImageData > & getImageMap () const
const QHash< CustomImageCacheKey, ImageData > & getCustomTextureMap () const
const QHash< QSGTexture *, ImageData > & getSGImageMap () const
const QHash< QSSGRenderPath, MeshData > & getMeshMap () const
const QHash< QSSGRenderGeometry *, MeshData > & getCustomMeshMap () const
void setLightmapSource (const QString &source)
void setCurrentlyLightmapBaking (bool value)

Static Public Member Functions

static std::unique_ptr< QSSGMeshBVHloadMeshBVH (const QSSGRenderPath &inSourcePath)
static std::unique_ptr< QSSGMeshBVHloadMeshBVH (QSSGRenderGeometry *geometry)
static std::unique_ptr< QSSGMeshBVHloadMeshBVH (const QSSGMesh::Mesh &mesh)
static QSSGMesh::Mesh loadMeshData (const QSSGRenderPath &inSourcePath)
static QRhiTexture::Format toRhiFormat (const QSSGRenderTextureFormat format)
static void registerMeshData (const QString &assetId, const QVector< QSSGMesh::Mesh > &meshData)
static void unregisterMeshData (const QString &assetId)
static QString runtimeMeshSourceName (const QString &assetId, qsizetype meshId)
static QString primitivePath (const QString &primitive)

Detailed Description

Definition at line 70 of file qssgrenderbuffermanager_p.h.

Member Enumeration Documentation

◆ LoadRenderImageFlag

Enumerator
LoadWithFlippedY 

Definition at line 81 of file qssgrenderbuffermanager_p.h.

◆ MipMode

Enumerator
MipModeFollowRenderImage 
MipModeEnable 
MipModeDisable 
MipModeBsdf 

Definition at line 74 of file qssgrenderbuffermanager_p.h.

Constructor & Destructor Documentation

◆ QSSGBufferManager()

QSSGBufferManager::QSSGBufferManager ( )

Definition at line 162 of file qssgrenderbuffermanager.cpp.

◆ ~QSSGBufferManager()

QSSGBufferManager::~QSSGBufferManager ( )

Definition at line 166 of file qssgrenderbuffermanager.cpp.

Member Function Documentation

◆ cleanupUnreferencedBuffers()

void QSSGBufferManager::cleanupUnreferencedBuffers ( quint32 frameId,
QSSGRenderLayer * layer )

Definition at line 1563 of file qssgrenderbuffermanager.cpp.

◆ commitBufferResourceUpdates()

void QSSGBufferManager::commitBufferResourceUpdates ( )

Definition at line 2042 of file qssgrenderbuffermanager.cpp.

◆ decreaseMemoryStat() [1/2]

void QSSGBufferManager::decreaseMemoryStat ( QRhiTexture * texture)

Definition at line 2149 of file qssgrenderbuffermanager.cpp.

◆ decreaseMemoryStat() [2/2]

void QSSGBufferManager::decreaseMemoryStat ( QSSGRenderMesh * mesh)

Definition at line 2162 of file qssgrenderbuffermanager.cpp.

◆ getCustomMeshMap()

const QHash< QSSGRenderGeometry *, MeshData > & QSSGBufferManager::getCustomMeshMap ( ) const
inline

Definition at line 179 of file qssgrenderbuffermanager_p.h.

◆ getCustomTextureMap()

const QHash< CustomImageCacheKey, ImageData > & QSSGBufferManager::getCustomTextureMap ( ) const
inline

Definition at line 176 of file qssgrenderbuffermanager_p.h.

◆ getImageMap()

const QHash< ImageCacheKey, ImageData > & QSSGBufferManager::getImageMap ( ) const
inline

Definition at line 175 of file qssgrenderbuffermanager_p.h.

◆ getMeshForPicking()

QSSGRenderMesh * QSSGBufferManager::getMeshForPicking ( const QSSGRenderModel & model) const

Definition at line 377 of file qssgrenderbuffermanager.cpp.

◆ getMeshMap()

const QHash< QSSGRenderPath, MeshData > & QSSGBufferManager::getMeshMap ( ) const
inline

Definition at line 178 of file qssgrenderbuffermanager_p.h.

◆ getModelBounds()

QSSGBounds3 QSSGBufferManager::getModelBounds ( const QSSGRenderModel * model)

Definition at line 1228 of file qssgrenderbuffermanager.cpp.

◆ getSGImageMap()

const QHash< QSGTexture *, ImageData > & QSSGBufferManager::getSGImageMap ( ) const
inline

Definition at line 177 of file qssgrenderbuffermanager_p.h.

◆ increaseMemoryStat() [1/2]

void QSSGBufferManager::increaseMemoryStat ( QRhiTexture * texture)

Definition at line 2143 of file qssgrenderbuffermanager.cpp.

◆ increaseMemoryStat() [2/2]

void QSSGBufferManager::increaseMemoryStat ( QSSGRenderMesh * mesh)

Definition at line 2155 of file qssgrenderbuffermanager.cpp.

◆ loadLightmap()

QSSGRenderImageTexture QSSGBufferManager::loadLightmap ( const QSSGRenderModel & model)

Definition at line 334 of file qssgrenderbuffermanager.cpp.

◆ loadLightmapMesh()

QSSGMesh::Mesh QSSGBufferManager::loadLightmapMesh ( const QSSGRenderModel & model)

Definition at line 1216 of file qssgrenderbuffermanager.cpp.

◆ loadMesh()

QSSGRenderMesh * QSSGBufferManager::loadMesh ( const QSSGRenderModel & model)

Definition at line 1195 of file qssgrenderbuffermanager.cpp.

◆ loadMeshBVH() [1/3]

std::unique_ptr< QSSGMeshBVH > QSSGBufferManager::loadMeshBVH ( const QSSGMesh::Mesh & mesh)
static

Definition at line 1897 of file qssgrenderbuffermanager.cpp.

◆ loadMeshBVH() [2/3]

std::unique_ptr< QSSGMeshBVH > QSSGBufferManager::loadMeshBVH ( const QSSGRenderPath & inSourcePath)
static

Definition at line 1836 of file qssgrenderbuffermanager.cpp.

◆ loadMeshBVH() [3/3]

std::unique_ptr< QSSGMeshBVH > QSSGBufferManager::loadMeshBVH ( QSSGRenderGeometry * geometry)
static

Definition at line 1847 of file qssgrenderbuffermanager.cpp.

◆ loadMeshData() [1/2]

QSSGMesh::Mesh QSSGBufferManager::loadMeshData ( const QSSGRenderGeometry * geometry)

Definition at line 1948 of file qssgrenderbuffermanager.cpp.

◆ loadMeshData() [2/2]

QSSGMesh::Mesh QSSGBufferManager::loadMeshData ( const QSSGRenderPath & inSourcePath)
static

Definition at line 1903 of file qssgrenderbuffermanager.cpp.

◆ loadRenderImage()

QSSGRenderImageTexture QSSGBufferManager::loadRenderImage ( const QSSGRenderImage * image,
MipMode inMipMode = MipModeFollowRenderImage,
LoadRenderImageFlags flags = LoadWithFlippedY )

Definition at line 191 of file qssgrenderbuffermanager.cpp.

◆ loadSkinmap()

QSSGRenderImageTexture QSSGBufferManager::loadSkinmap ( QSSGRenderTextureData * skin)

Definition at line 372 of file qssgrenderbuffermanager.cpp.

◆ meshUpdateMutex()

QMutex * QSSGBufferManager::meshUpdateMutex ( )

Definition at line 1175 of file qssgrenderbuffermanager.cpp.

◆ primitivePath()

QString QSSGBufferManager::primitivePath ( const QString & primitive)
static

Definition at line 1162 of file qssgrenderbuffermanager.cpp.

◆ processResourceLoader()

void QSSGBufferManager::processResourceLoader ( const QSSGRenderResourceLoader * loader)

Definition at line 2050 of file qssgrenderbuffermanager.cpp.

◆ registerExtensionResult()

void QSSGBufferManager::registerExtensionResult ( const QSSGRenderExtension & extensions,
QRhiTexture * texture )

Definition at line 1958 of file qssgrenderbuffermanager.cpp.

◆ registerMeshData()

void QSSGBufferManager::registerMeshData ( const QString & assetId,
const QVector< QSSGMesh::Mesh > & meshData )
static

Definition at line 1720 of file qssgrenderbuffermanager.cpp.

◆ releaseCachedResources()

void QSSGBufferManager::releaseCachedResources ( )

Definition at line 177 of file qssgrenderbuffermanager.cpp.

◆ releaseExtensionResult()

void QSSGBufferManager::releaseExtensionResult ( const QSSGRenderExtension & rext)

Definition at line 1508 of file qssgrenderbuffermanager.cpp.

◆ releaseGeometry()

void QSSGBufferManager::releaseGeometry ( QSSGRenderGeometry * geometry)

Definition at line 1458 of file qssgrenderbuffermanager.cpp.

◆ releaseResourcesForLayer()

void QSSGBufferManager::releaseResourcesForLayer ( QSSGRenderLayer * layer)

Definition at line 182 of file qssgrenderbuffermanager.cpp.

◆ releaseTextureData() [1/2]

void QSSGBufferManager::releaseTextureData ( const CustomImageCacheKey & key)

Definition at line 1487 of file qssgrenderbuffermanager.cpp.

◆ releaseTextureData() [2/2]

void QSSGBufferManager::releaseTextureData ( const QSSGRenderTextureData * data)

Definition at line 1476 of file qssgrenderbuffermanager.cpp.

◆ resetUsageCounters()

void QSSGBufferManager::resetUsageCounters ( quint32 frameId,
QSSGRenderLayer * layer )

Definition at line 1684 of file qssgrenderbuffermanager.cpp.

◆ runtimeMeshSourceName()

QString QSSGBufferManager::runtimeMeshSourceName ( const QString & assetId,
qsizetype meshId )
static

Definition at line 87 of file qssgrenderbuffermanager.cpp.

◆ setCurrentlyLightmapBaking()

void QSSGBufferManager::setCurrentlyLightmapBaking ( bool value)

Definition at line 2180 of file qssgrenderbuffermanager.cpp.

◆ setLightmapSource()

void QSSGBufferManager::setLightmapSource ( const QString & source)

Definition at line 2172 of file qssgrenderbuffermanager.cpp.

◆ setRenderContextInterface()

void QSSGBufferManager::setRenderContextInterface ( QSSGRenderContextInterface * ctx)

Definition at line 172 of file qssgrenderbuffermanager.cpp.

◆ toRhiFormat()

QRhiTexture::Format QSSGBufferManager::toRhiFormat ( const QSSGRenderTextureFormat format)
static

Definition at line 394 of file qssgrenderbuffermanager.cpp.

◆ unregisterMeshData()

void QSSGBufferManager::unregisterMeshData ( const QString & assetId)
static

Definition at line 1729 of file qssgrenderbuffermanager.cpp.


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