31 #ifndef PXR_IMAGING_HD_RENDER_PRODUCT_SCHEMA_H 32 #define PXR_IMAGING_HD_RENDER_PRODUCT_SCHEMA_H 34 #include "pxr/imaging/hd/api.h" 36 #include "pxr/imaging/hd/schema.h" 38 PXR_NAMESPACE_OPEN_SCOPE
42 #define HDRENDERPRODUCT_SCHEMA_TOKENS \ 51 (aspectRatioConformPolicy) \ 55 (namespacedSettings) \ 58 HDRENDERPRODUCT_SCHEMA_TOKENS);
62 class HdRenderProductSchema :
public HdSchema 65 HdRenderProductSchema(HdContainerDataSourceHandle container)
71 HdPathDataSourceHandle GetPath();
73 HdTokenDataSourceHandle GetType();
75 HdTokenDataSourceHandle GetName();
77 HdVec2iDataSourceHandle GetResolution();
81 HdPathDataSourceHandle GetCameraPrim();
83 HdFloatDataSourceHandle GetPixelAspectRatio();
85 HdTokenDataSourceHandle GetAspectRatioConformPolicy();
87 HdVec2fDataSourceHandle GetApertureSize();
89 HdVec4fDataSourceHandle GetDataWindowNDC();
91 HdBoolDataSourceHandle GetDisableMotionBlur();
93 HdContainerDataSourceHandle GetNamespacedSettings();
103 static HdContainerDataSourceHandle
105 const HdPathDataSourceHandle &path,
106 const HdTokenDataSourceHandle &type,
107 const HdTokenDataSourceHandle &name,
108 const HdVec2iDataSourceHandle &resolution,
109 const HdVectorDataSourceHandle &renderVars,
110 const HdPathDataSourceHandle &cameraPrim,
111 const HdFloatDataSourceHandle &pixelAspectRatio,
112 const HdTokenDataSourceHandle &aspectRatioConformPolicy,
113 const HdVec2fDataSourceHandle &apertureSize,
114 const HdVec4fDataSourceHandle &dataWindowNDC,
115 const HdBoolDataSourceHandle &disableMotionBlur,
116 const HdContainerDataSourceHandle &namespacedSettings
130 const HdPathDataSourceHandle &path);
133 const HdTokenDataSourceHandle &type);
136 const HdTokenDataSourceHandle &name);
139 const HdVec2iDataSourceHandle &resolution);
142 const HdVectorDataSourceHandle &renderVars);
145 const HdPathDataSourceHandle &cameraPrim);
148 const HdFloatDataSourceHandle &pixelAspectRatio);
150 Builder &SetAspectRatioConformPolicy(
151 const HdTokenDataSourceHandle &aspectRatioConformPolicy);
154 const HdVec2fDataSourceHandle &apertureSize);
157 const HdVec4fDataSourceHandle &dataWindowNDC);
160 const HdBoolDataSourceHandle &disableMotionBlur);
162 Builder &SetNamespacedSettings(
163 const HdContainerDataSourceHandle &namespacedSettings);
167 HdContainerDataSourceHandle
Build();
170 HdPathDataSourceHandle _path;
171 HdTokenDataSourceHandle _type;
172 HdTokenDataSourceHandle _name;
173 HdVec2iDataSourceHandle _resolution;
174 HdVectorDataSourceHandle _renderVars;
175 HdPathDataSourceHandle _cameraPrim;
176 HdFloatDataSourceHandle _pixelAspectRatio;
177 HdTokenDataSourceHandle _aspectRatioConformPolicy;
178 HdVec2fDataSourceHandle _apertureSize;
179 HdVec4fDataSourceHandle _dataWindowNDC;
180 HdBoolDataSourceHandle _disableMotionBlur;
181 HdContainerDataSourceHandle _namespacedSettings;
190 static HdRenderProductSchema GetFromParent(
191 const HdContainerDataSourceHandle &fromParentContainer);
222 PXR_NAMESPACE_CLOSE_SCOPE
HD_API HdContainerDataSourceHandle Build()
Returns a container data source containing the members set thus far.
Represents an object that can identify the location of a data source.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.
Schema classes represent a structured view of the inherently unstructured container data source passe...
Base class for vector schema classes that represent a view of a vector data source containing data so...
Utility class for setting sparse sets of child data source fields to be filled as arguments into Buil...