7#ifndef PXR_IMAGING_HD_IMAGE_SHADER_H
8#define PXR_IMAGING_HD_IMAGE_SHADER_H
11#include "pxr/imaging/hd/api.h"
12#include "pxr/imaging/hd/material.h"
13#include "pxr/imaging/hd/sprim.h"
14#include "pxr/imaging/hd/version.h"
19PXR_NAMESPACE_OPEN_SCOPE
21#define HD_IMAGE_SHADER_TOKENS \
32using HdMaterialNetworkInterfaceUniquePtr =
33 std::unique_ptr<class HdMaterialNetworkInterface>;
48 enum DirtyBits : HdDirtyBits {
50 DirtyEnabled = 1 << 0,
51 DirtyPriority = 1 << 1,
52 DirtyFilePath = 1 << 2,
53 DirtyConstants = 1 << 3,
54 DirtyMaterialNetwork = 1 << 4,
56 AllDirty = (DirtyEnabled
60 |DirtyMaterialNetwork)
72 HdDirtyBits* dirtyBits)
override;
87 int GetPriority()
const;
90 const std::string& GetFilePath()
const;
101 std::string _filePath;
104 HdMaterialNetworkInterfaceUniquePtr _materialNetworkInterface;
107PXR_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.