6#ifndef MATERIALX_SHADERGRAPHREFACTOR_H
7#define MATERIALX_SHADERGRAPHREFACTOR_H
14MATERIALX_NAMESPACE_BEGIN
33 virtual const string&
getName()
const = 0;
78MATERIALX_NAMESPACE_END
Macros for declaring imported and exported symbols.
shared_ptr< class ShaderGraphRefactor > ShaderGraphRefactorPtr
A shared pointer to a shader graph refactor.
Definition ShaderGraphRefactor.h:20
Distributes layer operations over mix nodes.
Definition ShaderGraphRefactor.h:72
size_t execute(ShaderGraph &graph, GenContext &context) override
Execute the pass on the given graph.
const string & getName() const override
Return the name of this refactoring pass.
A context class for shader generation.
Definition GenContext.h:30
Removes constant and dot nodes by bypassing them.
Definition ShaderGraphRefactor.h:47
size_t execute(ShaderGraph &graph, GenContext &context) override
Execute the pass on the given graph.
const string & getName() const override
Return the name of this refactoring pass.
Replaces BSDF mix nodes with premultiplied add nodes.
Definition ShaderGraphRefactor.h:60
size_t execute(ShaderGraph &graph, GenContext &context) override
Execute the pass on the given graph.
const string & getName() const override
Return the name of this refactoring pass.
Class representing a graph (DAG) for shader generation.
Definition ShaderGraph.h:45
Base class for shader graph refactoring passes.
Definition ShaderGraphRefactor.h:28
virtual const string & getName() const =0
Return the name of this refactoring pass.
virtual size_t execute(ShaderGraph &graph, GenContext &context)=0
Execute the pass on the given graph.