Loading...
Searching...
No Matches
rendererPlugin.h
1//
2// Copyright 2017 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
7#ifndef PXR_IMAGING_PLUGIN_HD_STORM_RENDERER_PLUGIN_H
8#define PXR_IMAGING_PLUGIN_HD_STORM_RENDERER_PLUGIN_H
9
10#include "pxr/pxr.h"
11#include "pxr/imaging/hd/rendererPlugin.h"
12
13PXR_NAMESPACE_OPEN_SCOPE
14
15class HdStormRendererPlugin final : public HdRendererPlugin {
16public:
17 HdStormRendererPlugin() = default;
18 virtual ~HdStormRendererPlugin() = default;
19
20 HdRenderDelegate *CreateRenderDelegate() override;
21 HdRenderDelegate *CreateRenderDelegate(
22 HdRenderSettingsMap const& settingsMap) override;
23
24 void DeleteRenderDelegate(HdRenderDelegate *renderDelegate)
25 override;
26
27 bool IsSupported(
28 HdRendererCreateArgs const &rendererCreateArgs,
29 std::string *reasonWhyNot = nullptr) const override;
30
31private:
32 HdStormRendererPlugin(const HdStormRendererPlugin &) = delete;
33 HdStormRendererPlugin &operator =(const HdStormRendererPlugin &) = delete;
34};
35
36PXR_NAMESPACE_CLOSE_SCOPE
37
38#endif // PXR_IMAGING_PLUGIN_HD_STORM_RENDERER_PLUGIN_H
This class defines a renderer plugin interface for Hydra.
virtual void DeleteRenderDelegate(HdRenderDelegate *renderDelegate)=0
Clients should use CreateDelegate since this method will eventually become protected.
virtual HD_API bool IsSupported(HdContainerDataSourceHandle const &rendererCreateArgs, std::string *reasonWhyNot=nullptr) const
Returns true if this renderer plugin is supported in the running process and false if not.
virtual HdRenderDelegate * CreateRenderDelegate()=0
Clients should use CreateDelegate since this method will eventually become protected,...
HdRendererCreateArgs contains members indicating the resources available when creating a renderer plu...