45 enum class DirtyFlag : quint8
49 using FlagT = std::underlying_type_t<DirtyFlag>;
51 enum class State : quint8
58 static constexpr DirtyFlag DirtyMask { std::numeric_limits<FlagT>::max() };
61 ~QSSGRenderUserPass();
63 bool isDirty(DirtyFlag flag = DirtyMask)
const;
64 void markDirty(DirtyFlag flag);
65 void clearDirty(DirtyFlag flag);
67 bool isReady()
const {
return (m_state == State::Ready); }
69 void finalizeShaders(
const QSSGRenderContextInterface &ctx);
70 void setDependencyIndex(quint32 index);
72 QVector<QSSGCommand *> commands;
75 QColor clearColor = Qt::black;
76 QRhiTextureRenderTarget::Flags renderTargetFlags = {};
79 MaterialModes materialMode = OriginalMaterial;
80 QSSGRenderGraphObject *overrideMaterial =
nullptr;
81 QSSGUserShaderAugmentation shaderAugmentation;
82 QRhiDepthStencilClearValue depthStencilClearValue = { };
83 PassModes passMode = UserPass;
85 FlagT m_dirtyFlags = 0;
86 State m_state = State::None;
87 quint32 m_dependencyIndex = 0;