24#ifndef PXR_IMAGING_HD_DIRTY_LIST_H
25#define PXR_IMAGING_HD_DIRTY_LIST_H
28#include "pxr/imaging/hd/api.h"
29#include "pxr/imaging/hd/version.h"
30#include "pxr/imaging/hd/repr.h"
31#include "pxr/imaging/hd/rprimCollection.h"
32#include "pxr/imaging/hd/types.h"
36PXR_NAMESPACE_OPEN_SCOPE
40using HdReprSelectorVector = std::vector<HdReprSelector>;
124 TfTokenVector const &tags, HdReprSelectorVector
const &reprs);
129 _pruneDirtyList =
true;
134 void _UpdateDirtyIdsIfNeeded();
140 HdReprSelectorVector _trackedReprs;
141 SdfPathVector _dirtyIds;
143 unsigned int _sceneStateVersion;
144 unsigned int _rprimIndexVersion;
145 unsigned int _rprimRenderTagVersion;
146 unsigned int _varyingStateVersion;
148 bool _rebuildDirtyList;
149 bool _pruneDirtyList;
152PXR_NAMESPACE_CLOSE_SCOPE
Tracks changes from the HdSceneDelegate, providing invalidation cues to the render engine.
Used for faster iteration of dirty Rprims by the render index.
HD_API SdfPathVector const & GetDirtyRprims()
Returns a reference of dirty rprim ids.
void PruneToVaryingRprims()
Sets the flag to prune to dirty list to just the varying Rprims on the next call to GetDirtyRprims.
HD_API void UpdateRenderTagsAndReprSelectors(TfTokenVector const &tags, HdReprSelectorVector const &reprs)
Updates the tracked filtering parameters.
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
std::vector< TfToken > TfTokenVector
Convenience types.