sceneIndexCreateArgsSchema.h
Go to the documentation of this file.
1 //
2 // Copyright 2023 Pixar
3 //
4 // Licensed under the terms set forth in the LICENSE.txt file available at
5 // https://openusd.org/license.
6 //
8 
9 /* ************************************************************************** */
10 /* ** ** */
11 /* ** This file is generated by a script. ** */
12 /* ** ** */
13 /* ** Do not edit it directly (unless it is within a CUSTOM CODE section)! ** */
14 /* ** Edit hdSchemaDefs.py instead to make changes. ** */
15 /* ** ** */
16 /* ************************************************************************** */
17 
18 #ifndef PXR_IMAGING_HD_SCENE_INDEX_CREATE_ARGS_SCHEMA_H
19 #define PXR_IMAGING_HD_SCENE_INDEX_CREATE_ARGS_SCHEMA_H
20 
22 
23 #include "pxr/imaging/hd/api.h"
24 #include "pxr/imaging/hd/schemaTypeDefs.h"
25 
26 #include "pxr/imaging/hd/schema.h"
27 
28 // --(BEGIN CUSTOM CODE: Includes)--
29 // #include "pxr/imaging/hd/renderDelegateInfo.h"
30 // --(END CUSTOM CODE: Includes)--
31 
32 PXR_NAMESPACE_OPEN_SCOPE
33 
34 // --(BEGIN CUSTOM CODE: Declares)--
35 struct HdRenderDelegateInfo;
37 using HdRenderDelegateInfoDataSourceHandle = HdRenderDelegateInfoDataSource::Handle;
38 // --(END CUSTOM CODE: Declares)--
39 
40 #define HD_SCENE_INDEX_CREATE_ARGS_SCHEMA_TOKENS \
41  (motionBlurSupport) \
42  (cameraMotionBlurSupport) \
43  (legacyRenderDelegateInfo) \
44  (renderSettingDescriptors) \
45 
46 TF_DECLARE_PUBLIC_TOKENS(HdSceneIndexCreateArgsSchemaTokens, HD_API,
47  HD_SCENE_INDEX_CREATE_ARGS_SCHEMA_TOKENS);
48 
49 //-----------------------------------------------------------------------------
50 
51 
69 {
70 public:
73 
74  HdSceneIndexCreateArgsSchema(HdContainerDataSourceHandle container)
75  : HdSchema(container) {}
76 
78 
79 // --(BEGIN CUSTOM CODE: Schema Methods)--
80 // --(END CUSTOM CODE: Schema Methods)--
81 
84 
89  HD_API
90  HdBoolDataSourceHandle GetMotionBlurSupport() const;
91 
96  HD_API
97  HdBoolDataSourceHandle GetCameraMotionBlurSupport() const;
98 
104  HD_API
105  HdRenderDelegateInfoDataSourceHandle GetLegacyRenderDelegateInfo() const;
106 
108  HD_API
110 
112 
115 
123  HD_API
124  static HdContainerDataSourceHandle
126  const HdBoolDataSourceHandle &motionBlurSupport,
127  const HdBoolDataSourceHandle &cameraMotionBlurSupport,
128  const HdRenderDelegateInfoDataSourceHandle &legacyRenderDelegateInfo,
129  const HdContainerDataSourceHandle &renderSettingDescriptors
130  );
131 
138  class Builder
139  {
140  public:
141  HD_API
142  Builder &SetMotionBlurSupport(
143  const HdBoolDataSourceHandle &motionBlurSupport);
144  HD_API
145  Builder &SetCameraMotionBlurSupport(
146  const HdBoolDataSourceHandle &cameraMotionBlurSupport);
147  HD_API
148  Builder &SetLegacyRenderDelegateInfo(
149  const HdRenderDelegateInfoDataSourceHandle &legacyRenderDelegateInfo);
150  HD_API
151  Builder &SetRenderSettingDescriptors(
152  const HdContainerDataSourceHandle &renderSettingDescriptors);
153 
155  HD_API
156  HdContainerDataSourceHandle Build();
157 
158  private:
159  HdBoolDataSourceHandle _motionBlurSupport;
160  HdBoolDataSourceHandle _cameraMotionBlurSupport;
161  HdRenderDelegateInfoDataSourceHandle _legacyRenderDelegateInfo;
162  HdContainerDataSourceHandle _renderSettingDescriptors;
163 
164  };
165 
167 };
168 
169 PXR_NAMESPACE_CLOSE_SCOPE
170 
171 #endif
HD_API HdBoolDataSourceHandle GetCameraMotionBlurSupport() const
Does consumer (most likely HdRenderer) of scene indices need samples for motion blur for cameras?...
HD_API HdRenderDelegateInfoDataSourceHandle GetLegacyRenderDelegateInfo() const
Used for HdRenderIndexAdapterSceneIndex.
static HD_API HdContainerDataSourceHandle BuildRetained(const HdBoolDataSourceHandle &motionBlurSupport, const HdBoolDataSourceHandle &cameraMotionBlurSupport, const HdRenderDelegateInfoDataSourceHandle &legacyRenderDelegateInfo, const HdContainerDataSourceHandle &renderSettingDescriptors)
Schema for the container data source returned by HdRendererPlugin::GetSceneIndexCreateArgs.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.
Definition: staticTokens.h:92
A datasource representing a concretely-typed sampled value.
Definition: dataSource.h:247
Utility class for setting sparse sets of child data source fields to be filled as arguments into Buil...
HD_API HdRenderSettingDescriptorContainerSchema GetRenderSettingDescriptors() const
Render settings advertised by rendererer.
Template class for a schema backed by a container whose children have arbitrary names but an expected...
HD_API HdBoolDataSourceHandle GetMotionBlurSupport() const
Does consumer (most likely HdRenderer) of scene indices need samples for motion blur?...
Schema classes represent a structured view of the inherently unstructured container data source passe...
Definition: schema.h:25
HD_API HdContainerDataSourceHandle Build()
Returns a container data source containing the members set thus far.