Go to the documentation of this file.
53 #ifndef vtk_m_worklet_contourtree_augmented_contourtree_maker_inc_hypernodes_set_first_superchild_h
54 #define vtk_m_worklet_contourtree_augmented_contourtree_maker_inc_hypernodes_set_first_superchild_h
63 namespace contourtree_augmented
65 namespace contourtree_maker_inc
74 WholeArrayIn superSortIndex,
75 WholeArrayOut contourTreeHypernodes
84 template <
typename InFieldPortalType,
typename OutFieldPortalType>
87 const InFieldPortalType& superSortIndexPortal,
88 const OutFieldPortalType& contourTreeHypernodesPortal)
const
90 bool isFirstSuperchild =
false;
91 vtkm::Id hyperparent = contourTreeHyperparentsPortal.Get(supernode);
95 isFirstSuperchild =
true;
96 else if (hyperparent != contourTreeHyperparentsPortal.Get(supernode - 1))
97 isFirstSuperchild =
true;
100 if (isFirstSuperchild)
101 contourTreeHypernodesPortal.Set(superSortIndexPortal.Get(
MaskedIndex(hyperparent)),
VTKM_EXEC void operator()(const InFieldPortalType &contourTreeHyperparentsPortal, const vtkm::Id supernode, const InFieldPortalType &superSortIndexPortal, const OutFieldPortalType &contourTreeHypernodesPortal) const
Definition: ComputeHyperAndSuperStructure_HypernodesSetFirstSuperchild.h:85
void ControlSignature(WholeArrayIn contourTreeHyperparents, WholeArrayIn superSortIndex, WholeArrayOut contourTreeHypernodes)
Definition: ComputeHyperAndSuperStructure_HypernodesSetFirstSuperchild.h:73
#define VTKM_EXEC
Definition: ExportMacros.h:51
Groups connected points that have the same field value.
Definition: Atomic.h:19
#define VTKM_EXEC_CONT
Definition: ExportMacros.h:52
VTKM_EXEC_CONT vtkm::Id MaskedIndex(vtkm::Id flaggedIndex)
Definition: filter/scalar_topology/worklet/contourtree_augmented/Types.h:127
vtkm::Int32 Id
Represents an ID (index into arrays).
Definition: Types.h:191
_1 InputDomain
Definition: ComputeHyperAndSuperStructure_HypernodesSetFirstSuperchild.h:78
VTKM_EXEC_CONT ComputeHyperAndSuperStructure_HypernodesSetFirstSuperchild()
Definition: ComputeHyperAndSuperStructure_HypernodesSetFirstSuperchild.h:82
void ExecutionSignature(_1, InputIndex, _2, _3)
Definition: ComputeHyperAndSuperStructure_HypernodesSetFirstSuperchild.h:77
Base class for worklets that do a simple mapping of field arrays.
Definition: WorkletMapField.h:38
Definition: ComputeHyperAndSuperStructure_HypernodesSetFirstSuperchild.h:69