Loading...
Searching...
No Matches
legacyPrimSceneIndex.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_LEGACY_PRIM_SCENE_INDEX_H
8#define PXR_IMAGING_HD_LEGACY_PRIM_SCENE_INDEX_H
9
10#include "pxr/imaging/hd/retainedSceneIndex.h"
11
12PXR_NAMESPACE_OPEN_SCOPE
13
14class HdSceneDelegate;
15using HdLegacyTaskFactorySharedPtr = std::shared_ptr<class HdLegacyTaskFactory>;
16
18
28{
29public:
30
31 static HdLegacyPrimSceneIndexRefPtr New() {
32 return TfCreateRefPtr(new HdLegacyPrimSceneIndex);
33 }
34
37 void AddLegacyPrim(SdfPath const &id, TfToken const &type,
38 HdSceneDelegate *sceneDelegate);
39
43 SdfPath const &id,
44 HdSceneDelegate *sceneDelegate,
45 HdLegacyTaskFactorySharedPtr factory);
46
57 void RemovePrim(SdfPath const &id);
58
61 const HdSceneIndexObserver::DirtiedPrimEntries &entries) override;
62};
63
64PXR_NAMESPACE_CLOSE_SCOPE
65
66#endif
Extends HdRetainedSceneIndex to instantiate and dirty HdDataSourceLegacyPrim data sources.
void DirtyPrims(const HdSceneIndexObserver::DirtiedPrimEntries &entries) override
extends to also call DirtyPrim on HdDataSourceLegacyPrim
void RemovePrim(SdfPath const &id)
Remove only the prim at id without affecting children.
void AddLegacyPrim(SdfPath const &id, TfToken const &type, HdSceneDelegate *sceneDelegate)
Custom insertion wrapper called by HdRenderIndex during population of legacy HdSceneDelegate's.
void AddLegacyTask(SdfPath const &id, HdSceneDelegate *sceneDelegate, HdLegacyTaskFactorySharedPtr factory)
Custom insertion wrapper called by HdRenderIndex::InsertTask<T> during population of legacy HdSceneDe...
Concrete scene container which can be externally populated and dirtied.
Adapter class providing data exchange with the client scene graph.
A path value used to locate objects in layers or scenegraphs.
Definition: path.h:274
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:71
#define TF_DECLARE_REF_PTRS(type)
Define standard ref pointer types.
Definition: declarePtrs.h:58