Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
QRhiPassResourceTracker Class Reference

#include <qrhi_p.h>

+ Collaboration diagram for QRhiPassResourceTracker:

Classes

struct  Buffer
 
struct  Texture
 
struct  UsageState
 

Public Types

enum  BufferStage {
  BufVertexInputStage , BufVertexStage , BufTCStage , BufTEStage ,
  BufFragmentStage , BufComputeStage , BufGeometryStage
}
 
enum  BufferAccess {
  BufVertexInput , BufIndexRead , BufUniformRead , BufStorageLoad ,
  BufStorageStore , BufStorageLoadStore
}
 
enum  TextureStage {
  TexVertexStage , TexTCStage , TexTEStage , TexFragmentStage ,
  TexColorOutputStage , TexDepthOutputStage , TexComputeStage , TexGeometryStage
}
 
enum  TextureAccess {
  TexSample , TexColorOutput , TexDepthOutput , TexStorageLoad ,
  TexStorageStore , TexStorageLoadStore
}
 
using BufferIterator = QHash< QRhiBuffer *, Buffer >::const_iterator
 
using TextureIterator = QHash< QRhiTexture *, Texture >::const_iterator
 

Public Member Functions

bool isEmpty () const
 
void reset ()
 
void registerBuffer (QRhiBuffer *buf, int slot, BufferAccess *access, BufferStage *stage, const UsageState &state)
 
void registerTexture (QRhiTexture *tex, TextureAccess *access, TextureStage *stage, const UsageState &state)
 
BufferIterator cbeginBuffers () const
 
BufferIterator cendBuffers () const
 
TextureIterator cbeginTextures () const
 
TextureIterator cendTextures () const
 

Static Public Member Functions

static BufferStage toPassTrackerBufferStage (QRhiShaderResourceBinding::StageFlags stages)
 
static TextureStage toPassTrackerTextureStage (QRhiShaderResourceBinding::StageFlags stages)
 

Detailed Description

Definition at line 597 of file qrhi_p.h.

Member Typedef Documentation

◆ BufferIterator

Definition at line 661 of file qrhi_p.h.

◆ TextureIterator

Definition at line 671 of file qrhi_p.h.

Member Enumeration Documentation

◆ BufferAccess

Enumerator
BufVertexInput 
BufIndexRead 
BufUniformRead 
BufStorageLoad 
BufStorageStore 
BufStorageLoadStore 

Definition at line 619 of file qrhi_p.h.

◆ BufferStage

Enumerator
BufVertexInputStage 
BufVertexStage 
BufTCStage 
BufTEStage 
BufFragmentStage 
BufComputeStage 
BufGeometryStage 

Definition at line 609 of file qrhi_p.h.

◆ TextureAccess

Enumerator
TexSample 
TexColorOutput 
TexDepthOutput 
TexStorageLoad 
TexStorageStore 
TexStorageLoadStore 

Definition at line 642 of file qrhi_p.h.

◆ TextureStage

Enumerator
TexVertexStage 
TexTCStage 
TexTEStage 
TexFragmentStage 
TexColorOutputStage 
TexDepthOutputStage 
TexComputeStage 
TexGeometryStage 

Definition at line 631 of file qrhi_p.h.

Member Function Documentation

◆ cbeginBuffers()

BufferIterator QRhiPassResourceTracker::cbeginBuffers ( ) const
inline

Definition at line 662 of file qrhi_p.h.

Referenced by QRhiGles2::executeCommandBuffer(), and QRhiVulkan::recordTransitionPassResources().

+ Here is the caller graph for this function:

◆ cbeginTextures()

TextureIterator QRhiPassResourceTracker::cbeginTextures ( ) const
inline

Definition at line 672 of file qrhi_p.h.

Referenced by QRhiGles2::executeCommandBuffer(), and QRhiVulkan::recordTransitionPassResources().

+ Here is the caller graph for this function:

◆ cendBuffers()

BufferIterator QRhiPassResourceTracker::cendBuffers ( ) const
inline

Definition at line 663 of file qrhi_p.h.

Referenced by QRhiGles2::executeCommandBuffer(), and QRhiVulkan::recordTransitionPassResources().

+ Here is the caller graph for this function:

◆ cendTextures()

TextureIterator QRhiPassResourceTracker::cendTextures ( ) const
inline

Definition at line 673 of file qrhi_p.h.

Referenced by QRhiGles2::executeCommandBuffer(), and QRhiVulkan::recordTransitionPassResources().

+ Here is the caller graph for this function:

◆ isEmpty()

bool QRhiPassResourceTracker::isEmpty ( ) const

Definition at line 10543 of file qrhi.cpp.

Referenced by QRhiVulkan::recordTransitionPassResources().

+ Here is the caller graph for this function:

◆ registerBuffer()

void QRhiPassResourceTracker::registerBuffer ( QRhiBuffer buf,
int  slot,
BufferAccess access,
BufferStage stage,
const UsageState state 
)

Definition at line 10560 of file qrhi.cpp.

References earlierStage(), it, qWarning, and state.

Referenced by QRhiGles2::trackedRegisterBuffer(), and QRhiVulkan::trackedRegisterBuffer().

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

◆ registerTexture()

void QRhiPassResourceTracker::registerTexture ( QRhiTexture tex,
TextureAccess access,
TextureStage stage,
const UsageState state 
)

Definition at line 10599 of file qrhi.cpp.

References earlierStage(), isImageLoadStore(), it, QRhiResource::name(), qWarning, state, and TexStorageLoadStore.

Referenced by QRhiGles2::trackedRegisterTexture(), and QRhiVulkan::trackedRegisterTexture().

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

◆ reset()

void QRhiPassResourceTracker::reset ( )

Definition at line 10548 of file qrhi.cpp.

◆ toPassTrackerBufferStage()

QRhiPassResourceTracker::BufferStage QRhiPassResourceTracker::toPassTrackerBufferStage ( QRhiShaderResourceBinding::StageFlags  stages)
static

◆ toPassTrackerTextureStage()

QRhiPassResourceTracker::TextureStage QRhiPassResourceTracker::toPassTrackerTextureStage ( QRhiShaderResourceBinding::StageFlags  stages)
static

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