24#ifndef PXR_IMAGING_HD_IMAGE_SHADER_H
25#define PXR_IMAGING_HD_IMAGE_SHADER_H
28#include "pxr/imaging/hd/api.h"
29#include "pxr/imaging/hd/material.h"
30#include "pxr/imaging/hd/sprim.h"
31#include "pxr/imaging/hd/version.h"
36PXR_NAMESPACE_OPEN_SCOPE
38#define HD_IMAGE_SHADER_TOKENS \
49using HdMaterialNetworkInterfaceUniquePtr =
50 std::unique_ptr<class HdMaterialNetworkInterface>;
65 enum DirtyBits : HdDirtyBits {
67 DirtyEnabled = 1 << 0,
68 DirtyPriority = 1 << 1,
69 DirtyFilePath = 1 << 2,
70 DirtyConstants = 1 << 3,
71 DirtyMaterialNetwork = 1 << 4,
73 AllDirty = (DirtyEnabled
77 |DirtyMaterialNetwork)
89 HdDirtyBits* dirtyBits)
override;
104 int GetPriority()
const;
107 const std::string& GetFilePath()
const;
118 std::string _filePath;
121 HdMaterialNetworkInterfaceUniquePtr _materialNetworkInterface;
124PXR_NAMESPACE_CLOSE_SCOPE
HD_API void Sync(HdSceneDelegate *sceneDelegate, HdRenderParam *renderParam, HdDirtyBits *dirtyBits) override
Sprim API.
HD_API HdDirtyBits GetInitialDirtyBitsMask() const override
Returns the minimal set of dirty bits to place in the change tracker for use in the first sync of thi...
HD_API bool GetEnabled() const
Image shader parameters accessor API.
Abstract interface for querying and mutating a material network.
The HdRenderParam is an opaque (to core Hydra) handle, to an object that is obtained from the render ...
Adapter class providing data exchange with the client scene graph.
Sprim (state prim) is a base class of managing state for non-drawable scene entity (e....
A path value used to locate objects in layers or scenegraphs.
A map with string keys and VtValue values.
This file defines some macros that are useful for declaring and using static TfTokens.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.
Container of nodes and top-level terminal connections.