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

#include <qssgrenderuserpass_p.h>

Inheritance diagram for QSSGRenderUserPass:
Collaboration diagram for QSSGRenderUserPass:

Public Types

enum  MaterialModes { OriginalMaterial , AugmentMaterial , OverrideMaterial }
enum  PassModes { UserPass , SkyboxPass , Item2DPass , InfiniteGridPass }
enum class  DirtyFlag : quint8 { ShaderDirty = 0x1 }
enum class  State : quint8 { None , Ready , Error }
using FlagT = std::underlying_type_t<DirtyFlag>
Public Types inherited from QSSGRenderGraphObject
enum  BaseType : quint32 {
  Node = 0x1000 , Light = 0x2000 , Camera = 0x4000 , Renderable = 0x8000 ,
  Resource = 0x10000 , Material = 0x20000 , Texture = 0x40000 , Extension = 0x80000 ,
  User = 0x80000000
}
enum class  Type : quint32 {
  Unknown = 0 , Node = BaseType::Node , Root , Layer ,
  Joint , Skeleton , ImportScene , ReflectionProbe ,
  SceneRoot , DirectionalLight = BaseType::Light | BaseType::Node , PointLight , SpotLight ,
  OrthographicCamera = BaseType::Camera | BaseType::Node , PerspectiveCamera , CustomFrustumCamera , CustomCamera ,
  Model = BaseType::Renderable | BaseType::Node , Item2D , Particles , SceneEnvironment = BaseType::Resource ,
  Effect , Geometry , TextureData , MorphTarget ,
  ModelInstance , ModelBlendParticle , ResourceLoader , RenderPass ,
  DefaultMaterial = BaseType::Material | BaseType::Resource , PrincipledMaterial , CustomMaterial , SpecularGlossyMaterial ,
  Skin , Image2D = BaseType::Texture | BaseType::Resource , ImageCube , RenderExtension = BaseType::Extension ,
  TextureProvider
}
enum class  Flags : quint32 { HasGraphicsResources = 0x1 , InternallyReserved = 0xffff0000 }
using TypeT = std::underlying_type_t<Type>
using FlagT = std::underlying_type_t<Flags>

Public Member Functions

 QSSGRenderUserPass ()
 ~QSSGRenderUserPass ()
bool isDirty (DirtyFlag flag=DirtyMask) const
void markDirty (DirtyFlag flag)
void clearDirty (DirtyFlag flag)
bool isReady () const
void finalizeShaders (const QSSGRenderContextInterface &ctx)
void setDependencyIndex (quint32 index)
void resetCommands ()
Public Member Functions inherited from QSSGRenderGraphObject
bool hasGraphicsResources () const noexcept
virtual Q_QUICK3D_PROFILE_ID_ ~QSSGRenderGraphObject ()

Public Attributes

QVector< QSSGCommand * > commands
QString key
QColor clearColor = Qt::black
QRhiTextureRenderTarget::Flags renderTargetFlags = {}
MaterialModes materialMode = OriginalMaterial
QSSGRenderGraphObjectoverrideMaterial = nullptr
QSSGUserShaderAugmentation shaderAugmentation
QRhiDepthStencilClearValue depthStencilClearValue = { }
PassModes passMode = UserPass
FlagT m_dirtyFlags = 0
State m_state = State::None
quint32 m_dependencyIndex = 0
Public Attributes inherited from QSSGRenderGraphObject
const Type type
FlagT flags { 0 }

Static Public Attributes

static constexpr DirtyFlag DirtyMask { std::numeric_limits<FlagT>::max() }

Additional Inherited Members

Static Public Member Functions inherited from QSSGRenderGraphObject
static constexpr bool isNodeType (Type type) noexcept
static constexpr bool isLight (Type type) noexcept
static constexpr bool isCamera (Type type) noexcept
static constexpr bool isMaterial (Type type) noexcept
static constexpr bool isTexture (Type type) noexcept
static constexpr bool isRenderable (Type type) noexcept
static constexpr bool isResource (Type type) noexcept
static constexpr bool isExtension (Type type) noexcept
static constexpr bool isUserType (Type type) noexcept
Protected Member Functions inherited from QSSGRenderGraphObject
 QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType)
 QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType, FlagT inFlags)

Detailed Description

Definition at line 29 of file qssgrenderuserpass_p.h.

Member Typedef Documentation

◆ FlagT

using QSSGRenderUserPass::FlagT = std::underlying_type_t<DirtyFlag>

Definition at line 49 of file qssgrenderuserpass_p.h.

Member Enumeration Documentation

◆ DirtyFlag

Enumerator
ShaderDirty 

Definition at line 45 of file qssgrenderuserpass_p.h.

◆ MaterialModes

Enumerator
OriginalMaterial 
AugmentMaterial 
OverrideMaterial 

Definition at line 32 of file qssgrenderuserpass_p.h.

◆ PassModes

Enumerator
UserPass 
SkyboxPass 
Item2DPass 
InfiniteGridPass 

Definition at line 38 of file qssgrenderuserpass_p.h.

◆ State

enum class QSSGRenderUserPass::State : quint8
strong
Enumerator
None 
Ready 
Error 

Definition at line 51 of file qssgrenderuserpass_p.h.

Constructor & Destructor Documentation

◆ QSSGRenderUserPass()

QSSGRenderUserPass::QSSGRenderUserPass ( )

Definition at line 32 of file qssgrenderuserpass.cpp.

◆ ~QSSGRenderUserPass()

QSSGRenderUserPass::~QSSGRenderUserPass ( )

Definition at line 38 of file qssgrenderuserpass.cpp.

Member Function Documentation

◆ clearDirty()

void QSSGRenderUserPass::clearDirty ( DirtyFlag flag)

Definition at line 53 of file qssgrenderuserpass.cpp.

◆ finalizeShaders()

void QSSGRenderUserPass::finalizeShaders ( const QSSGRenderContextInterface & ctx)

Definition at line 69 of file qssgrenderuserpass.cpp.

◆ isDirty()

bool QSSGRenderUserPass::isDirty ( DirtyFlag flag = DirtyMask) const

Definition at line 43 of file qssgrenderuserpass.cpp.

◆ isReady()

bool QSSGRenderUserPass::isReady ( ) const
inline

Definition at line 67 of file qssgrenderuserpass_p.h.

◆ markDirty()

void QSSGRenderUserPass::markDirty ( DirtyFlag flag)

Definition at line 48 of file qssgrenderuserpass.cpp.

◆ resetCommands()

void QSSGRenderUserPass::resetCommands ( )

Definition at line 120 of file qssgrenderuserpass.cpp.

◆ setDependencyIndex()

void QSSGRenderUserPass::setDependencyIndex ( quint32 index)

Definition at line 115 of file qssgrenderuserpass.cpp.

Member Data Documentation

◆ clearColor

QColor QSSGRenderUserPass::clearColor = Qt::black

Definition at line 75 of file qssgrenderuserpass_p.h.

◆ commands

QVector<QSSGCommand *> QSSGRenderUserPass::commands

Definition at line 72 of file qssgrenderuserpass_p.h.

◆ depthStencilClearValue

QRhiDepthStencilClearValue QSSGRenderUserPass::depthStencilClearValue = { }

Definition at line 82 of file qssgrenderuserpass_p.h.

◆ DirtyMask

DirtyFlag QSSGRenderUserPass::DirtyMask { std::numeric_limits<FlagT>::max() }
staticconstexpr

Definition at line 58 of file qssgrenderuserpass_p.h.

◆ key

QString QSSGRenderUserPass::key

Definition at line 74 of file qssgrenderuserpass_p.h.

◆ m_dependencyIndex

quint32 QSSGRenderUserPass::m_dependencyIndex = 0

Definition at line 87 of file qssgrenderuserpass_p.h.

◆ m_dirtyFlags

FlagT QSSGRenderUserPass::m_dirtyFlags = 0

Definition at line 85 of file qssgrenderuserpass_p.h.

◆ m_state

State QSSGRenderUserPass::m_state = State::None

Definition at line 86 of file qssgrenderuserpass_p.h.

◆ materialMode

MaterialModes QSSGRenderUserPass::materialMode = OriginalMaterial

Definition at line 79 of file qssgrenderuserpass_p.h.

◆ overrideMaterial

QSSGRenderGraphObject* QSSGRenderUserPass::overrideMaterial = nullptr

Definition at line 80 of file qssgrenderuserpass_p.h.

◆ passMode

PassModes QSSGRenderUserPass::passMode = UserPass

Definition at line 83 of file qssgrenderuserpass_p.h.

◆ renderTargetFlags

QRhiTextureRenderTarget::Flags QSSGRenderUserPass::renderTargetFlags = {}

Definition at line 76 of file qssgrenderuserpass_p.h.

◆ shaderAugmentation

QSSGUserShaderAugmentation QSSGRenderUserPass::shaderAugmentation

Definition at line 81 of file qssgrenderuserpass_p.h.


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