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

#include <qssgshaderresourcemergecontext_p.h>

Collaboration diagram for QSSGShaderResourceMergeContext:

Classes

struct  InOutVar
struct  Sampler
struct  Image
struct  BlockMember

Public Member Functions

 QSSGShaderResourceMergeContext ()
void rearrangeResources ()
void registerInput (QSSGShaderGeneratorStage stage, const QByteArray &type, const QByteArray &name, bool flat=false)
void registerOutput (QSSGShaderGeneratorStage stage, const QByteArray &type, const QByteArray &name, bool flat=false)
void registerSampler (const QByteArray &type, const QByteArray &name, QSSGRenderShaderMetadata::Uniform::Condition conditionType=QSSGRenderShaderMetadata::Uniform::None, const QByteArray &conditionName=QByteArray())
void registerImage (const QByteArray &type, const QByteArray &name, const QByteArray &imgtype, const QByteArray &qualifiers, QSSGRenderShaderMetadata::Uniform::Condition conditionType=QSSGRenderShaderMetadata::Uniform::None, const QByteArray &conditionName=QByteArray())
void registerUniformMember (const QByteArray &type, const QByteArray &name, QSSGRenderShaderMetadata::Uniform::Condition conditionType=QSSGRenderShaderMetadata::Uniform::None, const QByteArray &conditionName=QByteArray())

Static Public Member Functions

static void setAdditionalBufferAmount (int amount)

Public Attributes

QMap< QByteArray, InOutVarm_inOutVars
QMap< QByteArray, Samplerm_samplers
QMap< QByteArray, Imagem_images
QMap< QByteArray, BlockMemberm_uniformMembers
int m_nextFreeResourceBinding = FIRST_CUSTOM_RESOURCE_BINDING_POINT
int m_nextFreeImageBinding = 0
QHash< int, int > m_nextFreeInLocation
QHash< int, int > m_nextFreeOutLocation
int viewCount = 1

Static Public Attributes

static const int FIRST_CUSTOM_RESOURCE_BINDING_POINT = 3
static int s_additionalBuffers = 0

Detailed Description

Definition at line 25 of file qssgshaderresourcemergecontext_p.h.

Constructor & Destructor Documentation

◆ QSSGShaderResourceMergeContext()

QSSGShaderResourceMergeContext::QSSGShaderResourceMergeContext ( )
inline

Definition at line 29 of file qssgshaderresourcemergecontext_p.h.

Member Function Documentation

◆ rearrangeResources()

void QSSGShaderResourceMergeContext::rearrangeResources ( )
inline

Definition at line 86 of file qssgshaderresourcemergecontext_p.h.

◆ registerImage()

void QSSGShaderResourceMergeContext::registerImage ( const QByteArray & type,
const QByteArray & name,
const QByteArray & imgtype,
const QByteArray & qualifiers,
QSSGRenderShaderMetadata::Uniform::Condition conditionType = QSSGRenderShaderMetadata::Uniform::None,
const QByteArray & conditionName = QByteArray() )
inline

Definition at line 133 of file qssgshaderresourcemergecontext_p.h.

◆ registerInput()

void QSSGShaderResourceMergeContext::registerInput ( QSSGShaderGeneratorStage stage,
const QByteArray & type,
const QByteArray & name,
bool flat = false )
inline

Definition at line 100 of file qssgshaderresourcemergecontext_p.h.

◆ registerOutput()

void QSSGShaderResourceMergeContext::registerOutput ( QSSGShaderGeneratorStage stage,
const QByteArray & type,
const QByteArray & name,
bool flat = false )
inline

Definition at line 111 of file qssgshaderresourcemergecontext_p.h.

◆ registerSampler()

void QSSGShaderResourceMergeContext::registerSampler ( const QByteArray & type,
const QByteArray & name,
QSSGRenderShaderMetadata::Uniform::Condition conditionType = QSSGRenderShaderMetadata::Uniform::None,
const QByteArray & conditionName = QByteArray() )
inline

Definition at line 122 of file qssgshaderresourcemergecontext_p.h.

◆ registerUniformMember()

void QSSGShaderResourceMergeContext::registerUniformMember ( const QByteArray & type,
const QByteArray & name,
QSSGRenderShaderMetadata::Uniform::Condition conditionType = QSSGRenderShaderMetadata::Uniform::None,
const QByteArray & conditionName = QByteArray() )
inline

Definition at line 146 of file qssgshaderresourcemergecontext_p.h.

◆ setAdditionalBufferAmount()

void QSSGShaderResourceMergeContext::setAdditionalBufferAmount ( int amount)
inlinestatic

Definition at line 163 of file qssgshaderresourcemergecontext_p.h.

Member Data Documentation

◆ FIRST_CUSTOM_RESOURCE_BINDING_POINT

const int QSSGShaderResourceMergeContext::FIRST_CUSTOM_RESOURCE_BINDING_POINT = 3
static

Definition at line 35 of file qssgshaderresourcemergecontext_p.h.

◆ m_images

QMap<QByteArray, Image> QSSGShaderResourceMergeContext::m_images

Definition at line 76 of file qssgshaderresourcemergecontext_p.h.

◆ m_inOutVars

QMap<QByteArray, InOutVar> QSSGShaderResourceMergeContext::m_inOutVars

Definition at line 74 of file qssgshaderresourcemergecontext_p.h.

◆ m_nextFreeImageBinding

int QSSGShaderResourceMergeContext::m_nextFreeImageBinding = 0

Definition at line 80 of file qssgshaderresourcemergecontext_p.h.

◆ m_nextFreeInLocation

QHash<int, int> QSSGShaderResourceMergeContext::m_nextFreeInLocation

Definition at line 81 of file qssgshaderresourcemergecontext_p.h.

◆ m_nextFreeOutLocation

QHash<int, int> QSSGShaderResourceMergeContext::m_nextFreeOutLocation

Definition at line 82 of file qssgshaderresourcemergecontext_p.h.

◆ m_nextFreeResourceBinding

int QSSGShaderResourceMergeContext::m_nextFreeResourceBinding = FIRST_CUSTOM_RESOURCE_BINDING_POINT

Definition at line 79 of file qssgshaderresourcemergecontext_p.h.

◆ m_samplers

QMap<QByteArray, Sampler> QSSGShaderResourceMergeContext::m_samplers

Definition at line 75 of file qssgshaderresourcemergecontext_p.h.

◆ m_uniformMembers

QMap<QByteArray, BlockMember> QSSGShaderResourceMergeContext::m_uniformMembers

Definition at line 77 of file qssgshaderresourcemergecontext_p.h.

◆ s_additionalBuffers

int QSSGShaderResourceMergeContext::s_additionalBuffers = 0
static

Definition at line 162 of file qssgshaderresourcemergecontext_p.h.

◆ viewCount

int QSSGShaderResourceMergeContext::viewCount = 1

Definition at line 84 of file qssgshaderresourcemergecontext_p.h.


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