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
QShaderPrivate Struct Reference

#include <qshader_p.h>

+ Collaboration diagram for QShaderPrivate:

Public Types

enum  MslNativeShaderInfoExtraBufferBindings {
  MslTessVertIndicesBufferBinding = 0 , MslTessVertTescOutputBufferBinding , MslTessTescTessLevelBufferBinding , MslTessTescPatchOutputBufferBinding ,
  MslTessTescParamsBufferBinding , MslTessTescInputBufferBinding , MslBufferSizeBufferBinding , MslMultiViewMaskBufferBinding
}
 

Public Member Functions

 QShaderPrivate ()
 
 QShaderPrivate (const QShaderPrivate &other)
 

Static Public Member Functions

static QShaderPrivateget (QShader *s)
 
static const QShaderPrivateget (const QShader *s)
 
static int qtQsbVersion (QShader::SerializedFormatVersion qtVersion)
 

Public Attributes

QAtomicInt ref
 
int qsbVersion = QSB_VERSION
 
QShader::Stage stage = QShader::VertexStage
 
QShaderDescription desc
 
QMap< QShaderKey, QShaderCodeshaders
 
QMap< QShaderKey, QShader::NativeResourceBindingMapbindings
 
QMap< QShaderKey, QShader::SeparateToCombinedImageSamplerMappingListcombinedImageMap
 
QMap< QShaderKey, QShader::NativeShaderInfonativeShaderInfoMap
 

Static Public Attributes

static const int QSB_VERSION = 9
 
static const int QSB_VERSION_WITHOUT_INPUT_OUTPUT_INTERFACE_BLOCKS = 8
 
static const int QSB_VERSION_WITHOUT_EXTENDED_STORAGE_BUFFER_INFO = 7
 
static const int QSB_VERSION_WITHOUT_NATIVE_SHADER_INFO = 6
 
static const int QSB_VERSION_WITHOUT_SEPARATE_IMAGES_AND_SAMPLERS = 5
 
static const int QSB_VERSION_WITHOUT_VAR_ARRAYDIMS = 4
 
static const int QSB_VERSION_WITH_CBOR = 3
 
static const int QSB_VERSION_WITH_BINARY_JSON = 2
 
static const int QSB_VERSION_WITHOUT_BINDINGS = 1
 

Detailed Description

Definition at line 25 of file qshader_p.h.

Member Enumeration Documentation

◆ MslNativeShaderInfoExtraBufferBindings

Enumerator
MslTessVertIndicesBufferBinding 
MslTessVertTescOutputBufferBinding 
MslTessTescTessLevelBufferBinding 
MslTessTescPatchOutputBufferBinding 
MslTessTescParamsBufferBinding 
MslTessTescInputBufferBinding 
MslBufferSizeBufferBinding 
MslMultiViewMaskBufferBinding 

Definition at line 37 of file qshader_p.h.

Constructor & Destructor Documentation

◆ QShaderPrivate() [1/2]

QShaderPrivate::QShaderPrivate ( )
inline

Definition at line 48 of file qshader_p.h.

◆ QShaderPrivate() [2/2]

QShaderPrivate::QShaderPrivate ( const QShaderPrivate & other)
inline

Definition at line 53 of file qshader_p.h.

Member Function Documentation

◆ get() [1/2]

static const QShaderPrivate * QShaderPrivate::get ( const QShader * s)
inlinestatic

Definition at line 66 of file qshader_p.h.

◆ get() [2/2]

static QShaderPrivate * QShaderPrivate::get ( QShader * s)
inlinestatic

Definition at line 65 of file qshader_p.h.

Referenced by QShader::fromSerialized().

+ Here is the caller graph for this function:

◆ qtQsbVersion()

static int QShaderPrivate::qtQsbVersion ( QShader::SerializedFormatVersion qtVersion)
inlinestatic

Definition at line 67 of file qshader_p.h.

References QSB_VERSION, QSB_VERSION_WITHOUT_EXTENDED_STORAGE_BUFFER_INFO, QSB_VERSION_WITHOUT_SEPARATE_IMAGES_AND_SAMPLERS, QShader::Qt_6_4, QShader::Qt_6_5, and qtVersion().

Referenced by QShader::serialized().

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

Member Data Documentation

◆ bindings

◆ combinedImageMap

◆ desc

QShaderDescription QShaderPrivate::desc

Definition at line 81 of file qshader_p.h.

Referenced by QShader::description(), QShader::serialized(), and QShader::setDescription().

◆ nativeShaderInfoMap

◆ QSB_VERSION

const int QShaderPrivate::QSB_VERSION = 9
static

Definition at line 27 of file qshader_p.h.

Referenced by QShader::fromSerialized(), and qtQsbVersion().

◆ QSB_VERSION_WITH_BINARY_JSON

const int QShaderPrivate::QSB_VERSION_WITH_BINARY_JSON = 2
static

Definition at line 34 of file qshader_p.h.

Referenced by QShader::fromSerialized().

◆ QSB_VERSION_WITH_CBOR

const int QShaderPrivate::QSB_VERSION_WITH_CBOR = 3
static

Definition at line 33 of file qshader_p.h.

Referenced by QShader::fromSerialized().

◆ QSB_VERSION_WITHOUT_BINDINGS

const int QShaderPrivate::QSB_VERSION_WITHOUT_BINDINGS = 1
static

Definition at line 35 of file qshader_p.h.

Referenced by QShader::fromSerialized().

◆ QSB_VERSION_WITHOUT_EXTENDED_STORAGE_BUFFER_INFO

const int QShaderPrivate::QSB_VERSION_WITHOUT_EXTENDED_STORAGE_BUFFER_INFO = 7
static

◆ QSB_VERSION_WITHOUT_INPUT_OUTPUT_INTERFACE_BLOCKS

const int QShaderPrivate::QSB_VERSION_WITHOUT_INPUT_OUTPUT_INTERFACE_BLOCKS = 8
static

◆ QSB_VERSION_WITHOUT_NATIVE_SHADER_INFO

const int QShaderPrivate::QSB_VERSION_WITHOUT_NATIVE_SHADER_INFO = 6
static

◆ QSB_VERSION_WITHOUT_SEPARATE_IMAGES_AND_SAMPLERS

const int QShaderPrivate::QSB_VERSION_WITHOUT_SEPARATE_IMAGES_AND_SAMPLERS = 5
static

◆ QSB_VERSION_WITHOUT_VAR_ARRAYDIMS

const int QShaderPrivate::QSB_VERSION_WITHOUT_VAR_ARRAYDIMS = 4
static

Definition at line 32 of file qshader_p.h.

Referenced by deserializeDecorations(), and QShader::fromSerialized().

◆ qsbVersion

int QShaderPrivate::qsbVersion = QSB_VERSION

Definition at line 79 of file qshader_p.h.

◆ ref

QAtomicInt QShaderPrivate::ref

Definition at line 78 of file qshader_p.h.

Referenced by QShader::QShader(), QShader::~QShader(), and QShader::operator=().

◆ shaders

◆ stage

QShader::Stage QShaderPrivate::stage = QShader::VertexStage

Definition at line 80 of file qshader_p.h.

Referenced by QShader::serialized(), QShader::setStage(), and QShader::stage().


The documentation for this struct was generated from the following file: