6#ifndef PXR_IMAGING_HDSI_PREFIX_PATH_PRUNING_SCENE_INDEX_H
7#define PXR_IMAGING_HDSI_PREFIX_PATH_PRUNING_SCENE_INDEX_H
11#include "pxr/imaging/hd/filteringSceneIndex.h"
12#include "pxr/imaging/hdsi/api.h"
14PXR_NAMESPACE_OPEN_SCOPE
16#define HDSI_PREFIX_PATH_PRUNING_SCENE_INDEX_TOKENS \
20 HDSI_PREFIX_PATH_PRUNING_SCENE_INDEX_TOKENS);
50 static HdsiPrefixPathPruningSceneIndexRefPtr
51 New(HdSceneIndexBaseRefPtr
const &inputSceneIndex,
52 HdContainerDataSourceHandle
const &inputArgs);
63 void SetExcludePathPrefixes(SdfPathVector paths);
83 HdSceneIndexBaseRefPtr
const &inputSceneIndex,
84 HdContainerDataSourceHandle
const &inputArgs);
88 bool _IsPruned(
const SdfPath &primPath)
const;
90 void _RemovePrunedChildren(SdfPathVector *childPaths)
const;
92 SdfPathVector _sortedExcludePaths;
93 SdfPathSet _excludePathPrefixes;
96PXR_NAMESPACE_CLOSE_SCOPE
Abstract interface to scene data.
A scene index that prunes prims at or below the list of provided prefix paths.
HDSI_API HdSceneIndexPrim GetPrim(const SdfPath &primPath) const override
Returns a pair of (prim type, datasource).
HDSI_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath) const override
Returns the paths of all scene index prims located immediately below primPath.
A path value used to locate objects in layers or scenegraphs.
#define TF_DECLARE_WEAK_AND_REF_PTRS(type)
Define standard weak, ref, and vector pointer types.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.
Small struct representing a 'prim' in the Hydra scene index.