HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Library.h
Go to the documentation of this file.
1 //
2 // Copyright Contributors to the MaterialX Project
3 // SPDX-License-Identifier: Apache-2.0
4 //
5 
6 #ifndef MATERIALX_GENSHADERLIBRARY_H
7 #define MATERIALX_GENSHADERLIBRARY_H
8 
9 /// @file
10 /// Library-wide includes and types. This file should be the first include for
11 /// any public header in the MaterialXGenShader library.
12 
14 
16 
17 class Shader;
18 class ShaderStage;
19 class ShaderGenerator;
20 class ShaderNode;
21 class ShaderGraph;
22 class ShaderInput;
23 class ShaderOutput;
24 class ShaderNodeImpl;
25 class GenOptions;
26 class GenContext;
27 class ClosureContext;
28 class TypeDesc;
29 
30 /// A string stream
31 using StringStream = std::stringstream;
32 
33 /// Shared pointer to a Shader
34 using ShaderPtr = shared_ptr<Shader>;
35 /// Shared pointer to a ShaderStage
36 using ShaderStagePtr = shared_ptr<ShaderStage>;
37 /// Shared pointer to a ShaderGenerator
38 using ShaderGeneratorPtr = shared_ptr<ShaderGenerator>;
39 /// Shared pointer to a ShaderNodeImpl
40 using ShaderNodeImplPtr = shared_ptr<ShaderNodeImpl>;
41 /// Shared pointer to a GenContext
42 using GenContextPtr = shared_ptr<GenContext>;
43 
44 template <class T> using CreatorFunction = shared_ptr<T> (*)();
45 
47 
48 #endif // MATERIALX_GENSHADERLIBRARY_H
shared_ptr< ShaderNodeImpl > ShaderNodeImplPtr
Shared pointer to a ShaderNodeImpl.
Definition: Library.h:40
shared_ptr< GenContext > GenContextPtr
Shared pointer to a GenContext.
Definition: Library.h:42
#define MATERIALX_NAMESPACE_BEGIN
Definition: Generated.h:25
Definition: Shader.h:32
shared_ptr< ShaderStage > ShaderStagePtr
Shared pointer to a ShaderStage.
Definition: Library.h:36
shared_ptr< Shader > ShaderPtr
Shared pointer to a Shader.
Definition: Library.h:34
#define MATERIALX_NAMESPACE_END
Definition: Generated.h:26
std::stringstream StringStream
A string stream.
Definition: Library.h:31
shared_ptr< T >(*)( CreatorFunction)
Definition: Library.h:44
shared_ptr< ShaderGenerator > ShaderGeneratorPtr
Shared pointer to a ShaderGenerator.
Definition: Library.h:38