Qt 6.x
The Qt SDK
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
QShaderDescriptionPrivate Struct Reference

#include <qshaderdescription_p.h>

+ Collaboration diagram for QShaderDescriptionPrivate:

Public Member Functions

 QShaderDescriptionPrivate ()
 
 QShaderDescriptionPrivate (const QShaderDescriptionPrivate &other)
 
QJsonDocument makeDoc ()
 
void writeToStream (QDataStream *stream, int version)
 
void loadFromStream (QDataStream *stream, int version)
 

Static Public Member Functions

static QShaderDescriptionPrivateget (QShaderDescription *desc)
 
static const QShaderDescriptionPrivateget (const QShaderDescription *desc)
 

Public Attributes

QAtomicInt ref
 
QList< QShaderDescription::InOutVariableinVars
 
QList< QShaderDescription::InOutVariableoutVars
 
QList< QShaderDescription::UniformBlockuniformBlocks
 
QList< QShaderDescription::PushConstantBlockpushConstantBlocks
 
QList< QShaderDescription::StorageBlockstorageBlocks
 
QList< QShaderDescription::InOutVariablecombinedImageSamplers
 
QList< QShaderDescription::InOutVariableseparateImages
 
QList< QShaderDescription::InOutVariableseparateSamplers
 
QList< QShaderDescription::InOutVariablestorageImages
 
QList< QShaderDescription::BuiltinVariableinBuiltins
 
QList< QShaderDescription::BuiltinVariableoutBuiltins
 
std::array< uint, 3 > localSize = {}
 
uint tessOutVertCount = 0
 
QShaderDescription::TessellationMode tessMode = QShaderDescription::UnknownTessellationMode
 
QShaderDescription::TessellationWindingOrder tessWind = QShaderDescription::UnknownTessellationWindingOrder
 
QShaderDescription::TessellationPartitioning tessPart = QShaderDescription::UnknownTessellationPartitioning
 

Detailed Description

Definition at line 25 of file qshaderdescription_p.h.

Constructor & Destructor Documentation

◆ QShaderDescriptionPrivate() [1/2]

QShaderDescriptionPrivate::QShaderDescriptionPrivate ( )
inline

Definition at line 27 of file qshaderdescription_p.h.

◆ QShaderDescriptionPrivate() [2/2]

QShaderDescriptionPrivate::QShaderDescriptionPrivate ( const QShaderDescriptionPrivate other)
inline

Definition at line 32 of file qshaderdescription_p.h.

Member Function Documentation

◆ get() [1/2]

static const QShaderDescriptionPrivate * QShaderDescriptionPrivate::get ( const QShaderDescription desc)
inlinestatic

Definition at line 54 of file qshaderdescription_p.h.

References desc.

◆ get() [2/2]

static QShaderDescriptionPrivate * QShaderDescriptionPrivate::get ( QShaderDescription desc)
inlinestatic

Definition at line 53 of file qshaderdescription_p.h.

References desc.

Referenced by QShaderDescription::deserialize().

+ Here is the caller graph for this function:

◆ loadFromStream()

void QShaderDescriptionPrivate::loadFromStream ( QDataStream stream,
int  version 
)

Definition at line 1825 of file qshaderdescription.cpp.

References combinedImageSamplers, deserializeBlockMemberVar(), deserializeBuiltinVar(), deserializeDecorations(), deserializeInOutVar(), i, inBuiltins, inVars, localSize, members(), outBuiltins, outVars, pushConstantBlocks, Q_ASSERT, QShaderPrivate::QSB_VERSION_WITHOUT_EXTENDED_STORAGE_BUFFER_INFO, QShaderPrivate::QSB_VERSION_WITHOUT_NATIVE_SHADER_INFO, QShaderPrivate::QSB_VERSION_WITHOUT_SEPARATE_IMAGES_AND_SAMPLERS, QList< T >::resize(), separateImages, separateSamplers, QList< T >::size(), storageBlocks, storageImages, tessMode, tessOutVertCount, tessPart, tessWind, QString::toUtf8(), and uniformBlocks.

Referenced by QShaderDescription::deserialize().

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

◆ makeDoc()

QJsonDocument QShaderDescriptionPrivate::makeDoc ( )

Definition at line 1492 of file qshaderdescription.cpp.

References addDeco(), QCborArray::append(), QJsonArray::append(), blockMemberObject(), builtinObject(), combinedImageSamplers, QString::fromUtf8(), i, inBuiltins, inOutObject(), inVars, QJsonArray::isEmpty(), localSize, members(), outBuiltins, outVars, pushConstantBlocks, separateImages, separateSamplers, setKey(), QJsonObject::size(), storageBlocks, storageImages, tessMode, tessModeStr(), tessOutVertCount, tessPart, tessPartStr(), tessWind, tessWindStr(), typeStr(), uniformBlocks, QShaderDescription::UnknownTessellationMode, QShaderDescription::UnknownTessellationPartitioning, and QShaderDescription::UnknownTessellationWindingOrder.

Referenced by QShaderDescription::toJson().

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

◆ writeToStream()

void QShaderDescriptionPrivate::writeToStream ( QDataStream stream,
int  version 
)

Definition at line 1642 of file qshaderdescription.cpp.

References combinedImageSamplers, QString::fromUtf8(), i, inBuiltins, inVars, localSize, outBuiltins, outVars, pushConstantBlocks, QShaderPrivate::QSB_VERSION_WITHOUT_EXTENDED_STORAGE_BUFFER_INFO, QShaderPrivate::QSB_VERSION_WITHOUT_NATIVE_SHADER_INFO, separateImages, separateSamplers, serializeBlockMemberVar(), serializeBuiltinVar(), serializeDecorations(), serializeInOutVar(), QList< T >::size(), storageBlocks, storageImages, tessMode, tessOutVertCount, tessPart, tessWind, and uniformBlocks.

Referenced by QShaderDescription::serialize().

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

Member Data Documentation

◆ combinedImageSamplers

◆ inBuiltins

◆ inVars

◆ localSize

std::array<uint, 3> QShaderDescriptionPrivate::localSize = {}

◆ outBuiltins

◆ outVars

◆ pushConstantBlocks

◆ ref

QAtomicInt QShaderDescriptionPrivate::ref

◆ separateImages

◆ separateSamplers

◆ storageBlocks

◆ storageImages

◆ tessMode

◆ tessOutVertCount

uint QShaderDescriptionPrivate::tessOutVertCount = 0

◆ tessPart

◆ tessWind

◆ uniformBlocks


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