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 TypeDesc;
28 
29 /// A string stream
30 using StringStream = std::stringstream;
31 
32 /// Shared pointer to a Shader
33 using ShaderPtr = shared_ptr<Shader>;
34 /// Shared pointer to a ShaderStage
35 using ShaderStagePtr = shared_ptr<ShaderStage>;
36 /// Shared pointer to a ShaderGenerator
37 using ShaderGeneratorPtr = shared_ptr<ShaderGenerator>;
38 /// Shared pointer to a ShaderNodeImpl
39 using ShaderNodeImplPtr = shared_ptr<ShaderNodeImpl>;
40 /// Shared pointer to a GenContext
41 using GenContextPtr = shared_ptr<GenContext>;
42 
43 template <class T> using CreatorFunction = shared_ptr<T> (*)();
44 
46 
47 #endif // MATERIALX_GENSHADERLIBRARY_H
shared_ptr< ShaderNodeImpl > ShaderNodeImplPtr
Shared pointer to a ShaderNodeImpl.
Definition: Library.h:39
shared_ptr< GenContext > GenContextPtr
Shared pointer to a GenContext.
Definition: Library.h:41
#define MATERIALX_NAMESPACE_BEGIN
Definition: Generated.h:25
Definition: Shader.h:32
shared_ptr< ShaderStage > ShaderStagePtr
Shared pointer to a ShaderStage.
Definition: Library.h:35
shared_ptr< Shader > ShaderPtr
Shared pointer to a Shader.
Definition: Library.h:33
#define MATERIALX_NAMESPACE_END
Definition: Generated.h:26
std::stringstream StringStream
A string stream.
Definition: Library.h:30
shared_ptr< T >(*)( CreatorFunction)
Definition: Library.h:43
shared_ptr< ShaderGenerator > ShaderGeneratorPtr
Shared pointer to a ShaderGenerator.
Definition: Library.h:37