7#ifndef PXR_IMAGING_HD_LEGACY_RENDER_CONTROL_INTERFACE_H
8#define PXR_IMAGING_HD_LEGACY_RENDER_CONTROL_INTERFACE_H
12#include "pxr/imaging/hd/api.h"
14#include "pxr/imaging/hd/aov.h"
15#include "pxr/imaging/hd/command.h"
16#include "pxr/usd/sdf/path.h"
18PXR_NAMESPACE_OPEN_SCOPE
20struct HdRenderDelegateInfo;
22using HdRenderSettingDescriptorList =
23 std::vector<struct HdRenderSettingDescriptor>;
24using HdCommandDescriptors =
25 std::vector<struct HdCommandDescriptor>;
41 const SdfPathVector &taskPaths) = 0;
43 virtual bool AreTasksConverged(
44 const SdfPathVector &taskPaths)
const = 0;
46 virtual bool GetTaskContextData(
49 virtual void SetTaskContextData(
52 virtual void RemoveTaskContextData(
55 virtual void ClearTaskContextData() = 0;
78 virtual HdRenderSettingDescriptorList
79 GetRenderSettingDescriptors()
const = 0;
80 virtual VtValue GetRenderSetting(
82 virtual void SetRenderSetting(
90 virtual HdCommandDescriptors GetCommandDescriptors() = 0;
108 virtual bool IsPauseSupported()
const = 0;
109 virtual bool Pause() = 0;
110 virtual bool Resume() = 0;
111 virtual bool IsStopSupported()
const = 0;
112 virtual bool Stop(
bool blocking =
true) = 0;
113 virtual bool Restart() = 0;
120 virtual TfToken GetMaterialBindingPurpose()
const = 0;
122 virtual TfTokenVector GetRenderSettingsNamespaces()
const = 0;
123 virtual bool IsPrimvarFilteringNeeded()
const = 0;
130 HdRenderDelegateInfo GetRenderDelegateInfo()
const;
149PXR_NAMESPACE_CLOSE_SCOPE
Transitory Hydra-1.0-like API for HdRenderer.
virtual bool IsCoordSysSupported() const =0
This is for UsdImagingDelegate::_coordSysEnabled that has a surprising performance impact.
virtual bool RequiresStormTasks() const =0
Provides value for HdxTaskControllerSceneIndex::Parameters::isForStorm to configure task controller s...
virtual SdfPath GetRprimPathFromPrimId(int primIdx)=0
Clients should use HdSceneGlobalsSchema's primIdToPath instead.
virtual bool InvokeCommand(TfToken const &name, const HdCommandArgs &args={})=0
Invokes the command described by the token command with optional args.
A render buffer is a handle to a data resource that can be rendered into, such as a 2d image for a dr...
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
A map with string keys and VtValue values.
Provides a container which may hold any type, and provides introspection and iteration over array typ...
A bundle of state describing an AOV ("Arbitrary Output Variable") display channel.
std::vector< TfToken > TfTokenVector
Convenience types.