This document is for a version of USD that is under development. See this page for the current release.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
HdSelection Class Reference

HdSelection holds a collection of selected items per selection mode. More...

#include <selection.h>

Public Types

enum  HighlightMode { HighlightModeSelect = 0 , HighlightModeLocate , HighlightModeCount }
 Selection modes allow differentiation in selection highlight behavior. More...
 

Public Member Functions

HD_API void AddRprim (HighlightMode const &mode, SdfPath const &renderIndexPath)
 ---------------------— Population API -----------------------------—
 
HD_API void AddInstance (HighlightMode const &mode, SdfPath const &renderIndexPath, VtIntArray const &instanceIndex=VtIntArray())
 
HD_API void AddElements (HighlightMode const &mode, SdfPath const &renderIndexPath, VtIntArray const &elementIndices)
 
HD_API void AddEdges (HighlightMode const &mode, SdfPath const &renderIndexPath, VtIntArray const &edgeIndices)
 
HD_API void AddPoints (HighlightMode const &mode, SdfPath const &renderIndexPath, VtIntArray const &pointIndices)
 
HD_API void AddPoints (HighlightMode const &mode, SdfPath const &renderIndexPath, VtIntArray const &pointIndices, GfVec4f const &pointColor)
 
HD_API PrimSelectionState const * GetPrimSelectionState (HighlightMode const &mode, SdfPath const &renderIndexPath) const
 -------------------------— Query API ------------------------------—
 
HD_API SdfPathVector GetAllSelectedPrimPaths () const
 
HD_API SdfPathVector GetSelectedPrimPaths (HighlightMode const &mode) const
 
HD_API std::vector< GfVec4f > const & GetSelectedPointColors () const
 
HD_API bool IsEmpty () const
 

Static Public Member Functions

static HD_API HdSelectionSharedPtr Merge (HdSelectionSharedPtr const &, HdSelectionSharedPtr const &)
 

Protected Types

using _PrimSelectionStateMap = std::unordered_map< SdfPath, PrimSelectionState, SdfPath::Hash >
 

Protected Attributes

_PrimSelectionStateMap _selMap [HighlightModeCount]
 
std::vector< GfVec4f_selectedPointColors
 

Detailed Description

HdSelection holds a collection of selected items per selection mode.

The items may be rprims, instances of an rprim and subprimitives of an rprim, such as elements (faces for meshes, individual curves for basis curves), edges & points. Each item is referred to by the render index path.

It current supports active and rollover selection modes, and may be inherited for customization.

Definition at line 35 of file selection.h.

Member Typedef Documentation

◆ _PrimSelectionStateMap

using _PrimSelectionStateMap = std::unordered_map<SdfPath, PrimSelectionState, SdfPath::Hash>
protected

Definition at line 143 of file selection.h.

Member Enumeration Documentation

◆ HighlightMode

Selection modes allow differentiation in selection highlight behavior.

Definition at line 39 of file selection.h.

Member Function Documentation

◆ AddRprim()

HD_API void AddRprim ( HighlightMode const &  mode,
SdfPath const &  renderIndexPath 
)

---------------------— Population API -----------------------------—

◆ GetPrimSelectionState()

HD_API PrimSelectionState const * GetPrimSelectionState ( HighlightMode const &  mode,
SdfPath const &  renderIndexPath 
) const

-------------------------— Query API ------------------------------—

Member Data Documentation

◆ _selectedPointColors

std::vector<GfVec4f> _selectedPointColors
protected

Definition at line 149 of file selection.h.

◆ _selMap

_PrimSelectionStateMap _selMap[HighlightModeCount]
protected

Definition at line 146 of file selection.h.


The documentation for this class was generated from the following file: