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
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 , TexShadingRate
}

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)
const QVarLengthFlatMap< QRhiBuffer *, Buffer, 12 > & buffers () const
const QVarLengthFlatMap< QRhiTexture *, Texture, 12 > & textures () const

Static Public Member Functions

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

Detailed Description

Definition at line 664 of file qrhi_p.h.

Member Enumeration Documentation

◆ BufferAccess

Enumerator
BufVertexInput 
BufIndexRead 
BufUniformRead 
BufStorageLoad 
BufStorageStore 
BufStorageLoadStore 

Definition at line 686 of file qrhi_p.h.

◆ BufferStage

Enumerator
BufVertexInputStage 
BufVertexStage 
BufTCStage 
BufTEStage 
BufFragmentStage 
BufComputeStage 
BufGeometryStage 

Definition at line 676 of file qrhi_p.h.

◆ TextureAccess

Enumerator
TexSample 
TexColorOutput 
TexDepthOutput 
TexStorageLoad 
TexStorageStore 
TexStorageLoadStore 
TexShadingRate 

Definition at line 709 of file qrhi_p.h.

◆ TextureStage

Enumerator
TexVertexStage 
TexTCStage 
TexTEStage 
TexFragmentStage 
TexColorOutputStage 
TexDepthOutputStage 
TexComputeStage 
TexGeometryStage 

Definition at line 698 of file qrhi_p.h.

Member Function Documentation

◆ buffers()

const QVarLengthFlatMap< QRhiBuffer *, Buffer, 12 > & QRhiPassResourceTracker::buffers ( ) const
inline

Definition at line 729 of file qrhi_p.h.

◆ isEmpty()

bool QRhiPassResourceTracker::isEmpty ( ) const

Definition at line 11740 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 11757 of file qrhi.cpp.

References QRhiPassResourceTracker::Buffer::access, earlierStage(), QRhiPassResourceTracker::Buffer::slot, QRhiPassResourceTracker::Buffer::stage, and QRhiPassResourceTracker::Buffer::stateAtPassBegin.

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 11797 of file qrhi.cpp.

References QRhiPassResourceTracker::Texture::access, earlierStage(), isImageLoadStore(), QRhiPassResourceTracker::Texture::stage, QRhiPassResourceTracker::Texture::stateAtPassBegin, 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 11745 of file qrhi.cpp.

◆ textures()

const QVarLengthFlatMap< QRhiTexture *, Texture, 12 > & QRhiPassResourceTracker::textures ( ) const
inline

Definition at line 737 of file qrhi_p.h.

◆ 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: