24 #ifndef PXR_IMAGING_HD_RENDER_SETTINGS_H 25 #define PXR_IMAGING_HD_RENDER_SETTINGS_H 28 #include "pxr/imaging/hd/api.h" 29 #include "pxr/imaging/hd/bprim.h" 38 PXR_NAMESPACE_OPEN_SCOPE
69 enum DirtyBits : HdDirtyBits {
72 DirtyNamespacedSettings = 1 << 2,
73 DirtyRenderProducts = 1 << 3,
74 DirtyIncludedPurposes = 1 << 4,
75 DirtyMaterialBindingPurposes = 1 << 5,
76 DirtyRenderingColorSpace = 1 << 6,
77 AllDirty = DirtyActive
78 | DirtyNamespacedSettings
80 | DirtyIncludedPurposes
81 | DirtyMaterialBindingPurposes
82 | DirtyRenderingColorSpace
89 struct RenderProduct {
93 std::string sourceName;
109 std::vector<RenderVar> renderVars;
116 float pixelAspectRatio;
119 TfToken aspectRatioConformPolicy;
131 bool disableMotionBlur;
135 using RenderProducts = std::vector<RenderProduct>;
145 bool IsActive()
const;
151 const RenderProducts& GetRenderProducts()
const;
160 const TfToken& GetRenderingColorSpace()
const;
171 HdDirtyBits *dirtyBits)
override final;
189 const HdDirtyBits *dirtyBits);
200 RenderProducts _products;
208 size_t hash_value(HdRenderSettings::RenderProduct
const &rp);
212 std::ostream& out,
const HdRenderSettings::RenderProduct&);
215 bool operator==(
const HdRenderSettings::RenderProduct& lhs,
216 const HdRenderSettings::RenderProduct& rhs);
218 bool operator!=(
const HdRenderSettings::RenderProduct& lhs,
219 const HdRenderSettings::RenderProduct& rhs);
222 std::ostream& out,
const HdRenderSettings::RenderProduct::RenderVar&);
225 bool operator==(
const HdRenderSettings::RenderProduct::RenderVar& lhs,
226 const HdRenderSettings::RenderProduct::RenderVar& rhs);
228 bool operator!=(
const HdRenderSettings::RenderProduct::RenderVar& lhs,
229 const HdRenderSettings::RenderProduct::RenderVar& rhs);
232 PXR_NAMESPACE_CLOSE_SCOPE
234 #endif // PXR_IMAGING_HD_RENDER_SETTINGS_H 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 void Sync(HdSceneDelegate *sceneDelegate, HdRenderParam *renderParam, HdDirtyBits *dirtyBits) override final
Synchronizes state from the delegate to this object.
Basic type for a vector of 2 int components.
A map with string keys and VtValue values.
AR_API bool operator!=(const ArAssetInfo &lhs, const ArAssetInfo &rhs)
The HdRenderParam is an opaque (to core Hydra) handle, to an object that is obtained from the render ...
AR_API bool operator==(const ArAssetInfo &lhs, const ArAssetInfo &rhs)
Token for efficient comparison, assignment, and hashing of known strings.
Adapter class providing data exchange with the client scene graph.
std::vector< TfToken > TfTokenVector
Convenience types.
A path value used to locate objects in layers or scenegraphs.
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].
Abstract hydra prim backing render settings scene description.
Basic type for a vector of 2 float components.
Bprim (buffer prim) is a base class of managing a blob of data that is used to communicate between th...
Basic type: 2-dimensional floating point range.