7#ifndef PXR_IMAGING_HDSI_APPLICATION_RENDER_SETTINGS_SCENE_INDEX_H
8#define PXR_IMAGING_HDSI_APPLICATION_RENDER_SETTINGS_SCENE_INDEX_H
10#include "pxr/imaging/hdsi/api.h"
11#include "pxr/imaging/hd/filteringSceneIndex.h"
12#include "pxr/imaging/hd/schemaTypeDefs.h"
14PXR_NAMESPACE_OPEN_SCOPE
16namespace HdsiApplicationRenderSettingsSceneIndex_Impl
18struct _RenderSettingsInfo;
19using _RenderSettingsInfoSharedPtr = std::shared_ptr<_RenderSettingsInfo>;
47 static HdsiApplicationRenderSettingsSceneIndexRefPtr
48 New(
const HdSceneIndexBaseRefPtr &inputSceneIndex,
49 const HdContainerDataSourceHandle &inputArgs);
96 const HdSceneIndexBaseRefPtr &inputSceneIndex,
97 const HdContainerDataSourceHandle &inputArgs);
116 const HdSceneIndexBaseRefPtr &inputSceneIndex,
119 HdContainerDataSourceHandle _GetInputRenderSettingsDataSource()
const;
120 HdContainerDataSourceHandle _GetApplicationRenderSettingsDataSource()
const;
122 HdsiApplicationRenderSettingsSceneIndex_Impl::_RenderSettingsInfoSharedPtr
126PXR_NAMESPACE_CLOSE_SCOPE
Template class for a schema backed by a container whose children have arbitrary names but an expected...
Abstract interface to scene data.
A filtering scene index that lets an application inject a single, authoritative render settings prim ...
@ InputRenderSettings
The opinion from the render settings prim at the active render settings prim path in the input scene ...
@ RendererDefault
The default value that the renderer provides for the render setting.
@ ApplicationOverride
The override opinion set on the scene index.
@ Resolved
The resolved value as seen by observers of the render settings prim in this scene index.
HDSI_API HdSceneIndexPrim GetPrim(const SdfPath &primPath) const override
Returns a pair of (prim type, datasource).
HDSI_API void SetApplicationOverrideRenderSetting(const TfToken &name, const VtValue &value)
Overrides the value for the render setting name with an application opinion, taking precedence over t...
static HDSI_API const SdfPath & GetApplicationRenderSettingsPrimPath()
Path of the injected render settings prim (/__ApplicationRenderSettings).
HDSI_API VtValue GetRenderSetting(RenderSettingsSource src, const TfToken &name) const
Returns the value of a render setting name at a particular stage name.
HDSI_API HdRenderSettingDescriptorContainerSchema GetRenderSettingDescriptorsFromRenderer() const
The render setting descriptors advertised by the renderer.
HDSI_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath) const override
Returns the paths of all scene index prims located immediately below primPath.
static HDSI_API HdsiApplicationRenderSettingsSceneIndexRefPtr New(const HdSceneIndexBaseRefPtr &inputSceneIndex, const HdContainerDataSourceHandle &inputArgs)
The scene index assumes that inputArgs conforms to HdSceneIndexCreateArgsSchema to extract the render...
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
Provides a container which may hold any type, and provides introspection and iteration over array typ...
#define TF_DECLARE_WEAK_AND_REF_PTRS(type)
Define standard weak, ref, and vector pointer types.
Small struct representing a 'prim' in the Hydra scene index.