7#ifndef PXR_IMAGING_HD_DIRTY_LIST_H
8#define PXR_IMAGING_HD_DIRTY_LIST_H
11#include "pxr/imaging/hd/api.h"
12#include "pxr/imaging/hd/version.h"
13#include "pxr/imaging/hd/repr.h"
14#include "pxr/imaging/hd/rprimCollection.h"
15#include "pxr/imaging/hd/types.h"
19PXR_NAMESPACE_OPEN_SCOPE
23using HdReprSelectorVector = std::vector<HdReprSelector>;
107 TfTokenVector const &tags, HdReprSelectorVector
const &reprs);
112 _pruneDirtyList =
true;
117 void _UpdateDirtyIdsIfNeeded();
123 HdReprSelectorVector _trackedReprs;
124 SdfPathVector _dirtyIds;
126 unsigned int _sceneStateVersion;
127 unsigned int _rprimIndexVersion;
128 unsigned int _rprimRenderTagVersion;
129 unsigned int _varyingStateVersion;
131 bool _rebuildDirtyList;
132 bool _pruneDirtyList;
135PXR_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.