| 
    HDK
    
   | 
 
#include <MaterialXGenShader/Export.h>#include <MaterialXGenShader/GenOptions.h>#include <MaterialXGenShader/ShaderGraph.h>#include <MaterialXGenShader/Syntax.h>#include <MaterialXFormat/File.h>#include <MaterialXCore/Node.h>#include <sstream>
 Include dependency graph for ShaderStage.h:
 This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| class | VariableBlock | 
| class | ShaderStage | 
| struct | ShaderStage::Scope | 
Namespaces | |
| Stage | |
Macros | |
| #define | DEFINE_SHADER_STAGE(stage, name) if (stage.getName() == name) | 
| #define | BEGIN_SHADER_STAGE(stage, name) | 
| #define | END_SHADER_STAGE(stage, name) } | 
Typedefs | |
| using | VariableBlockPtr = std::shared_ptr< VariableBlock > | 
| Shared pointer to a VariableBlock.  More... | |
| using | VariableBlockMap = std::unordered_map< string, VariableBlockPtr > | 
| Shared pointer to a map between string identifiers and VariableBlocks.  More... | |
| using | ShaderPortPredicate = std::function< bool(ShaderPort *)> | 
| A standard function predicate taking an ShaderPort pointer and returning a boolean.  More... | |
| using | ShaderStagePtr = std::shared_ptr< ShaderStage > | 
| Shared pointer to a ShaderStage.  More... | |
Functions | |
| ShaderPort * | addStageUniform (const string &block, TypeDesc type, const string &name, ShaderStage &stage) | 
| Utility function for adding a new shader port to a uniform block.  More... | |
| ShaderPort * | addStageUniform (const string &block, const TypeDesc *type, const string &name, ShaderStage &stage) | 
| ShaderPort * | addStageInput (const string &block, TypeDesc type, const string &name, ShaderStage &stage, bool shouldWiden=false) | 
| Utility function for adding a new shader port to an input block.  More... | |
| ShaderPort * | addStageInput (const string &block, const TypeDesc *type, const string &name, ShaderStage &stage, bool shouldWiden=false) | 
| ShaderPort * | addStageOutput (const string &block, TypeDesc type, const string &name, ShaderStage &stage, bool shouldWiden=false) | 
| Utility function for adding a new shader port to an output block.  More... | |
| ShaderPort * | addStageOutput (const string &block, const TypeDesc *type, const string &name, ShaderStage &stage, bool shouldWiden=false) | 
| void | addStageConnectorBlock (const string &block, const string &instance, ShaderStage &from, ShaderStage &to) | 
| Utility function for adding a connector block between stages.  More... | |
| void | addStageConnector (const string &block, TypeDesc type, const string &name, ShaderStage &from, ShaderStage &to, bool shouldWiden=false) | 
| Utility function for adding a variable to a stage connector block.  More... | |
| void | addStageConnector (const string &block, const TypeDesc *type, const string &name, ShaderStage &from, ShaderStage &to, bool shouldWiden=false) | 
Variables | |
| MX_GENSHADER_API const string | Stage::PIXEL | 
Class related to holding information for shader stages
Definition in file ShaderStage.h.
| #define BEGIN_SHADER_STAGE | ( | stage, | |
| name | |||
| ) | 
Definition at line 30 of file ShaderStage.h.
Definition at line 27 of file ShaderStage.h.
| #define END_SHADER_STAGE | ( | stage, | |
| name | |||
| ) | } | 
Definition at line 33 of file ShaderStage.h.
| using ShaderPortPredicate = std::function<bool(ShaderPort*)> | 
A standard function predicate taking an ShaderPort pointer and returning a boolean.
Definition at line 56 of file ShaderStage.h.
| using ShaderStagePtr = std::shared_ptr<ShaderStage> | 
Shared pointer to a ShaderStage.
Definition at line 336 of file ShaderStage.h.
| using VariableBlockMap = std::unordered_map<string, VariableBlockPtr> | 
Shared pointer to a map between string identifiers and VariableBlocks.
Definition at line 54 of file ShaderStage.h.
| using VariableBlockPtr = std::shared_ptr<VariableBlock> | 
Shared pointer to a VariableBlock.
Definition at line 52 of file ShaderStage.h.
      
  | 
  inline | 
Utility function for adding a variable to a stage connector block.
Definition at line 404 of file ShaderStage.h.
      
  | 
  inline | 
Definition at line 414 of file ShaderStage.h.
      
  | 
  inline | 
Utility function for adding a connector block between stages.
Definition at line 394 of file ShaderStage.h.
      
  | 
  inline | 
Utility function for adding a new shader port to an input block.
Definition at line 356 of file ShaderStage.h.
      
  | 
  inline | 
Definition at line 365 of file ShaderStage.h.
      
  | 
  inline | 
Utility function for adding a new shader port to an output block.
Definition at line 375 of file ShaderStage.h.
      
  | 
  inline | 
Definition at line 384 of file ShaderStage.h.
      
  | 
  inline | 
Utility function for adding a new shader port to a uniform block.
Definition at line 339 of file ShaderStage.h.
      
  | 
  inline | 
Definition at line 347 of file ShaderStage.h.