24#ifndef PXR_IMAGING_HDX_SELECTION_TASK_H
25#define PXR_IMAGING_HDX_SELECTION_TASK_H
28#include "pxr/imaging/hdx/api.h"
29#include "pxr/imaging/hdx/version.h"
30#include "pxr/imaging/hd/task.h"
36PXR_NAMESPACE_OPEN_SCOPE
42struct HdxSelectionTaskParams
44 bool enableSelectionHighlight;
45 bool enableLocateHighlight;
46 float occludedSelectionOpacity;
52using HdBufferArrayRangeSharedPtr = std::shared_ptr<class HdBufferArrayRange>;
75 HdDirtyBits* dirtyBits)
override;
85 void Execute(HdTaskContext* ctx)
override;
91 HdxSelectionTaskParams _params;
92 HdBufferArrayRangeSharedPtr _selOffsetBar;
93 HdBufferArrayRangeSharedPtr _selUniformBar;
94 size_t _pointColorsBufferSize;
104 const HdxSelectionTaskParams& pv);
106bool operator==(
const HdxSelectionTaskParams& lhs,
107 const HdxSelectionTaskParams& rhs);
109bool operator!=(
const HdxSelectionTaskParams& lhs,
110 const HdxSelectionTaskParams& rhs);
113PXR_NAMESPACE_CLOSE_SCOPE
Basic type for a vector of 4 float components.
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
Adapter class providing data exchange with the client scene graph.
The SelectionTask is responsible for setting up render pass global buffers for selection and depositi...
HDX_API void Sync(HdSceneDelegate *delegate, HdTaskContext *ctx, HdDirtyBits *dirtyBits) override
Sync the render pass resources.
HDX_API void Prepare(HdTaskContext *ctx, HdRenderIndex *renderIndex) override
Prepare the tasks resources.
HDX_API void Execute(HdTaskContext *ctx) override
Execute render pass task.
A path value used to locate objects in layers or scenegraphs.
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].