7#ifndef PXR_IMAGING_HDX_SELECTION_TRACKER_H
8#define PXR_IMAGING_HDX_SELECTION_TRACKER_H
11#include "pxr/imaging/hdx/api.h"
12#include "pxr/imaging/hdx/version.h"
13#include "pxr/imaging/hd/selection.h"
18PXR_NAMESPACE_OPEN_SCOPE
23using HdxSelectionTrackerSharedPtr =
24 std::shared_ptr<class HdxSelectionTracker>;
117 bool enableSelectionHighlight,
118 bool enableLocateHighlight,
119 VtIntArray *offsets)
const;
122 virtual VtVec4fArray GetSelectedPointColors(
const HdRenderIndex *index);
151 bool _GetSelectionOffsets(HdSelectionSharedPtr
const &selection,
155 std::vector<int>* offsets)
const;
160 class _MergedSelection;
161 std::unique_ptr<_MergedSelection> _mergedSelection;
165PXR_NAMESPACE_CLOSE_SCOPE
The render index is part of the Hydra 1.0 API and is only used for emulation purposes so that HdScene...
HighlightMode
Selection modes allow differentiation in selection highlight behavior.
HdxSelectionTracker takes HdSelection and generates a GPU buffer to be used.
virtual HDX_API void UpdateSelection(HdRenderIndex *index)
Optional override to update the selection (either compute HdSelection and call SetSelection or update...
HDX_API void _IncrementVersion()
Increments the internal selection state version, used for invalidation via GetVersion().
HDX_API int GetVersion() const
Returns a monotonically increasing version number, which increments whenever the result of GetBuffers...
virtual HDX_API bool GetSelectionOffsetBuffer(const HdRenderIndex *index, bool enableSelectionHighlight, bool enableLocateHighlight, VtIntArray *offsets) const
Encodes the selection state (HdxSelection) as an integer array.
HDX_API HdSelectionSharedPtr const & GetSelectionMap() const
Returns selection set with SetSelection.
HDX_API void SetSelection(HdSelectionSharedPtr const &selection)
Set the collection of selected objects.