7 #ifndef PXR_IMAGING_HDSI_LIGHT_LINKING_SCENE_INDEX_H
8 #define PXR_IMAGING_HDSI_LIGHT_LINKING_SCENE_INDEX_H
17 #include "pxr/base/vt/array.h"
25 #define HDSI_LIGHT_LINKING_SCENE_INDEX_TOKENS \
27 (lightFilterPrimTypes) \
33 namespace HdsiLightLinkingSceneIndex_Impl
81 static HdSceneIndexBaseRefPtr
82 New(
const HdSceneIndexBaseRefPtr &inputSceneIndex,
83 const HdContainerDataSourceHandle &inputArgs);
95 const HdSceneIndexBaseRefPtr &inputSceneIndex,
96 const HdContainerDataSourceHandle &inputArgs);
114 void _ProcessAddedLightOrFilter(
119 bool _IsLight(
const TfToken &primType)
const;
120 bool _IsLightFilter(
const TfToken &primType)
const;
121 bool _IsGeometry(
const TfToken &primType)
const;
TF_DECLARE_REF_PTRS(HdsiLightLinkingSceneIndex)
static HDSI_API HdSceneIndexBaseRefPtr New(const HdSceneIndexBaseRefPtr &inputSceneIndex, const HdContainerDataSourceHandle &inputArgs)
HDSI_API HdSceneIndexPrim GetPrim(const SdfPath &primPath) const override
TF_DECLARE_PUBLIC_TOKENS(HdsiLightLinkingSceneIndexTokens, HDSI_API, HDSI_LIGHT_LINKING_SCENE_INDEX_TOKENS)
std::vector< class SdfPath > SdfPathVector
std::vector< TfToken > TfTokenVector
Convenience types.
HDSI_API void _PrimsDirtied(const HdSceneIndexBase &sender, const HdSceneIndexObserver::DirtiedPrimEntries &entries) override
std::set< class SdfPath > SdfPathSet
A set of SdfPaths.
HDSI_API HdsiLightLinkingSceneIndex(const HdSceneIndexBaseRefPtr &inputSceneIndex, const HdContainerDataSourceHandle &inputArgs)
HDSI_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath) const override
std::shared_ptr< _Cache > _CacheSharedPtr
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
#define HDSI_LIGHT_LINKING_SCENE_INDEX_TOKENS
#define PXR_NAMESPACE_CLOSE_SCOPE
HDSI_API void _PrimsAdded(const HdSceneIndexBase &sender, const HdSceneIndexObserver::AddedPrimEntries &entries) override
HDSI_API void _PrimsRemoved(const HdSceneIndexBase &sender, const HdSceneIndexObserver::RemovedPrimEntries &entries) override