HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HwBlurNode.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_HWBLURNODE_H
7 #define MATERIALX_HWBLURNODE_H
8 
10 
12 
14 
15 /// Blur node implementation for Hw shader languages
17 {
18  public:
19  HwBlurNode(const string& samplingIncludeFilename) : _samplingIncludeFilename(samplingIncludeFilename) {}
20  virtual ~HwBlurNode() {}
21 
22  static ShaderNodeImplPtr create(const string& samplingIncludeFilename);
23 
24  void emitSamplingFunctionDefinition(const ShaderNode& node, GenContext& context, ShaderStage& stage) const override;
25  private:
26  string _samplingIncludeFilename;
27 };
28 
30 
31 #endif
virtual void emitSamplingFunctionDefinition(const ShaderNode &node, GenContext &context, ShaderStage &stage) const =0
Emit function definitions for sampling functions used by this node.
shared_ptr< ShaderNodeImpl > ShaderNodeImplPtr
Shared pointer to a ShaderNodeImpl.
Definition: Library.h:39
#define MATERIALX_NAMESPACE_BEGIN
Definition: Generated.h:25
#define MX_GENSHADER_API
Definition: Export.h:18
virtual ~HwBlurNode()
Definition: HwBlurNode.h:20
Blur node implementation for Hw shader languages.
Definition: HwBlurNode.h:16
Blur node implementation.
Definition: BlurNode.h:14
HwBlurNode(const string &samplingIncludeFilename)
Definition: HwBlurNode.h:19
#define MATERIALX_NAMESPACE_END
Definition: Generated.h:26