MaterialX
1.38.2
source
MaterialXGenShader
Nodes
HwCompoundNode.h
1
//
2
// TM & (c) 2017 Lucasfilm Entertainment Company Ltd. and Lucasfilm Ltd.
3
// All rights reserved. See LICENSE.txt for license.
4
//
5
6
#ifndef MATERIALX_HWCOMPOUNDNODE_H
7
#define MATERIALX_HWCOMPOUNDNODE_H
8
9
#include <MaterialXGenShader/Nodes/CompoundNode.h>
10
#include <
MaterialXGenShader/HwShaderGenerator.h
>
11
12
namespace
MaterialX
13
{
14
16
class
MX_GENSHADER_API
HwCompoundNode
:
public
CompoundNode
17
{
18
public
:
19
static
ShaderNodeImplPtr
create();
20
21
void
emitFunctionDefinition(
const
ShaderNode
& node,
GenContext
& context,
ShaderStage
& stage)
const override
;
22
23
void
emitFunctionCall(
const
ShaderNode
& node,
GenContext
& context,
ShaderStage
& stage)
const override
;
24
25
protected
:
26
void
emitFunctionDefinition(
HwClosureContextPtr
ccx,
GenContext
& context,
ShaderStage
& stage)
const
;
27
};
28
29
}
// namespace MaterialX
30
31
#endif
HwShaderGenerator.h
Hardware shader generator base class.
MaterialX::HwClosureContextPtr
shared_ptr< class HwClosureContext > HwClosureContextPtr
Shared pointer to a HwClosureContext.
Definition:
HwShaderGenerator.h:229
MaterialX::ShaderNodeImplPtr
shared_ptr< ShaderNodeImpl > ShaderNodeImplPtr
Shared pointer to a ShaderNodeImpl.
Definition:
Library.h:40
MaterialX::CompoundNode
Compound node implementation.
Definition:
CompoundNode.h:18
MaterialX::GenContext
A context class for shader generation.
Definition:
GenContext.h:27
MaterialX::HwCompoundNode
Extending the CompoundNode with requirements for HW.
Definition:
HwCompoundNode.h:17
MaterialX::ShaderNode
Class representing a node in the shader generation DAG.
Definition:
ShaderNode.h:326
MaterialX::ShaderStage
A shader stage, containing the state and resulting source code for the stage.
Definition:
ShaderStage.h:124
Generated by
1.9.3