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>;
39 const SdfPathVector &taskPaths) = 0;
41 virtual bool AreTasksConverged(
42 const SdfPathVector &taskPaths)
const = 0;
44 virtual bool GetTaskContextData(
47 virtual void SetTaskContextData(
66 virtual HdRenderSettingDescriptorList
67 GetRenderSettingDescriptors()
const = 0;
68 virtual VtValue GetRenderSetting(
70 virtual void SetRenderSetting(
78 virtual HdCommandDescriptors GetCommandDescriptors() = 0;
96 virtual bool IsPauseSupported()
const = 0;
97 virtual bool Pause() = 0;
98 virtual bool Resume() = 0;
99 virtual bool IsStopSupported()
const = 0;
100 virtual bool Stop(
bool blocking =
true) = 0;
101 virtual bool Restart() = 0;
108 virtual TfToken GetMaterialBindingPurpose()
const = 0;
110 virtual TfTokenVector GetRenderSettingsNamespaces()
const = 0;
111 virtual bool IsPrimvarFilteringNeeded()
const = 0;
118 HdRenderDelegateInfo GetRenderDelegateInfo()
const;
130 virtual SdfPath GetRprimPathFromPrimId(
int primIdx) = 0;
135PXR_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 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.