7 #ifndef PXR_IMAGING_HD_RENDERER_PLUGIN_H 8 #define PXR_IMAGING_HD_RENDERER_PLUGIN_H 11 #include "pxr/imaging/hd/api.h" 12 #include "pxr/imaging/hf/pluginBase.h" 13 #include "pxr/imaging/hd/renderDelegate.h" 15 PXR_NAMESPACE_OPEN_SCOPE
56 std::string *reasonWhyNot =
nullptr)
const = 0;
95 HdSceneIndexBaseRefPtr
const &sceneIndex,
122 HdRenderSettingsMap
const &settingsMap = {});
143 HdRenderSettingsMap
const& settingsMap);
161 virtual std::unique_ptr<HdRenderer> _CreateRenderer(
162 HdSceneIndexBaseRefPtr
const &sceneIndex,
167 std::unique_ptr<HdRenderer> _CreateRendererFromRenderDelegate(
168 HdSceneIndexBaseRefPtr
const &sceneIndex,
178 PXR_NAMESPACE_CLOSE_SCOPE
180 #endif // PXR_IMAGING_HD_RENDERER_PLUGIN_H HD_API TfToken GetPluginId() const
Look-up plugin id in plugin registry.
virtual void DeleteRenderDelegate(HdRenderDelegate *renderDelegate)=0
Clients should use CreateDelegate since this method will eventually become protected.
This class defines a renderer plugin interface for Hydra.
A (movable) handle for a render delegate that was created using a a plugin.
virtual HD_API HdContainerDataSourceHandle GetSceneIndexCreateArgs() const
Arguments that an application should pass as create arguments to scene indices so that they can be co...
virtual HD_API bool IsSupported(const HdRendererCreateArgsSchema &rendererCreateArgs, std::string *reasonWhyNot=nullptr) const =0
Returns true if this renderer plugin is supported in the running process and false if not.
HD_API HdPluginRendererUniqueHandle CreateRenderer(HdSceneIndexBaseRefPtr const &sceneIndex, const HdRendererCreateArgsSchema &rendererCreateArgs)
Create renderer through the plugin and wrap it in a handle that keeps this plugin alive until the ren...
Base class for all hydra plugin classes.
Token for efficient comparison, assignment, and hashing of known strings.
Abstract interface to scene data.
Arguments to HdRendererPlugin::IsSupported and CreateRenderer.
HD_API std::string GetDisplayName() const
Look-up display name in plugin registry.
HD_API HdPluginRenderDelegateUniqueHandle CreateDelegate(HdRenderSettingsMap const &settingsMap={})
Create a render delegate through the plugin and wrap it in a handle that keeps this plugin alive unti...
A handle for a renderer that was created by a renderer plugin.
#define TF_DECLARE_REF_PTRS(type)
Define standard ref pointer types.
virtual HdRenderDelegate * CreateRenderDelegate()=0
Clients should use CreateDelegate since this method will eventually become protected,...