HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
sceneIndexUtil.h
Go to the documentation of this file.
1 //
2 // Copyright 2024 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_UTIL_H
8 #define PXR_IMAGING_HD_SCENE_INDEX_UTIL_H
9 
10 #include "pxr/pxr.h"
11 
13 #include "pxr/base/tf/envSetting.h"
14 
16 
17 /// The open-source version of the Hydra Scene Browser cannot descend into
18 /// HdEncapsulatingSceneIndexBase. Thus, we have an environment variable to
19 /// disable the use HdEncapsulatingSceneIndexBase.
20 ///
21 HD_API
23 
24 /// Make a scene index that encapsulates the given scene and (recursively)
25 /// all its inputs until a given input scene is hit.
26 ///
27 /// The resulting scene index is simply forwarding any calls to the
28 /// given encapsulated scene index.
29 ///
30 /// See HdEncapsulatingSceneIndexBase and HdFilteringSceneIndexBase for
31 /// details.
32 ///
33 /// The resulting scene index should be thought of one node in the
34 /// nested scene index graph. The inputs of this node are the given
35 /// input scenes. The terminal node in the graph internal to the resulting
36 /// scene index is the given encapsulated scene index.
37 ///
38 HD_API
39 HdSceneIndexBaseRefPtr
41  const std::vector<HdSceneIndexBaseRefPtr> &inputScenes,
42  HdSceneIndexBaseRefPtr const &encapsulatedScene);
43 
45 
46 #endif // PXR_IMAGING_HD_SCENE_INDEX_UTIL_H
PXR_NAMESPACE_OPEN_SCOPE HD_API TfEnvSetting< bool > HD_USE_ENCAPSULATING_SCENE_INDICES
#define HD_API
Definition: api.h:23
HD_API HdSceneIndexBaseRefPtr HdMakeEncapsulatingSceneIndex(const std::vector< HdSceneIndexBaseRefPtr > &inputScenes, HdSceneIndexBaseRefPtr const &encapsulatedScene)
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1425
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74