Loading...
Searching...
No Matches
sceneIndexPlugin.h
1//
2// Copyright 2021 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_HD_SCENE_INDEX_PLUGIN_H
8#define PXR_IMAGING_HD_SCENE_INDEX_PLUGIN_H
9
10#include "pxr/pxr.h"
11#include "pxr/imaging/hd/api.h"
12#include "pxr/imaging/hf/pluginBase.h"
13#include "pxr/imaging/hd/sceneIndex.h"
14
15PXR_NAMESPACE_OPEN_SCOPE
16
77{
78public:
79
80 HD_API
81 HdSceneIndexBaseRefPtr AppendSceneIndex(
82 const std::string &renderInstanceId,
83 const HdSceneIndexBaseRefPtr &inputScene,
84 const HdContainerDataSourceHandle &inputArgs);
85
96 HD_API
98 const HdContainerDataSourceHandle &inputArgs) const;
99
100protected:
101
106 HD_API
107 virtual HdSceneIndexBaseRefPtr _AppendSceneIndex(
108 const HdSceneIndexBaseRefPtr &inputScene,
109 const HdContainerDataSourceHandle &inputArgs);
110
121 HD_API
122 virtual HdSceneIndexBaseRefPtr _AppendSceneIndex(
123 const std::string &renderInstanceId,
124 const HdSceneIndexBaseRefPtr &inputScene,
125 const HdContainerDataSourceHandle &inputArgs);
126
132 HD_API
133 virtual bool _IsEnabled(
134 const HdContainerDataSourceHandle &inputArgs) const;
135
136 HdSceneIndexPlugin() = default;
137 HD_API
138 ~HdSceneIndexPlugin() override;
139
140};
141
142PXR_NAMESPACE_CLOSE_SCOPE
143
144#endif // PXR_IMAGING_HD_SCENE_INDEX_PLUGIN_H
A scene index plugin bundles one or more (typically filtering) scene indices together and enables the...
virtual HD_API bool _IsEnabled(const HdContainerDataSourceHandle &inputArgs) const
Subclasses implement this to indicate whether the plugin is enabled.
HD_API bool IsEnabled(const HdContainerDataSourceHandle &inputArgs) const
Returns true if the plugin is enabled, in the sense that it should be consulted for its contribution ...
virtual HD_API HdSceneIndexBaseRefPtr _AppendSceneIndex(const HdSceneIndexBaseRefPtr &inputScene, const HdContainerDataSourceHandle &inputArgs)
Subclasses implement this to instantiate one or more scene indicies which take the provided scene as ...
virtual HD_API HdSceneIndexBaseRefPtr _AppendSceneIndex(const std::string &renderInstanceId, const HdSceneIndexBaseRefPtr &inputScene, const HdContainerDataSourceHandle &inputArgs)
Subclasses implement this to instantiate one or more scene indicies which take the provided scene as ...
Base class for all hydra plugin classes.
Definition: pluginBase.h:23