Go to the documentation of this file.
53 #ifndef vtk_m_worklet_contourtree_distributed_tree_grafter_copy_first_hypernode_per_iteration_worklet_h
54 #define vtk_m_worklet_contourtree_distributed_tree_grafter_copy_first_hypernode_per_iteration_worklet_h
64 namespace contourtree_distributed
66 namespace tree_grafter
76 WholeArrayIn hierarchicalTreeHypernodes,
77 WholeArrayIn hierarchicalTreeWhichIteration,
79 hierarchicalTreeFirstHypernodePerIteration
92 template <
typename InFieldPortalType,
typename OutFieldPortalType>
95 const InFieldPortalType& hierarchicalTreeHypernodesPortal,
96 const InFieldPortalType& hierarchicalTreeWhichIterationPortal,
97 const OutFieldPortalType& hierarchicalTreeFirstHypernodePerIterationPortal)
const
100 vtkm::Id supernodeId = hierarchicalTreeHypernodesPortal.Get(newHypernode);
102 hierarchicalTreeWhichIterationPortal.Get(supernodeId));
107 hierarchicalTreeFirstHypernodePerIterationPortal.Set(0, newHypernode);
109 else if (wasTransferred !=
111 hierarchicalTreeWhichIterationPortal.Get(
112 hierarchicalTreeHypernodesPortal.Get(newHypernode - 1))))
114 hierarchicalTreeFirstHypernodePerIterationPortal.Set(wasTransferred, newHypernode);
#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
void(_1, _2, _3, _4) ExecutionSignature
Definition: CopyFirstHypernodePerIterationWorklet.h:82
VTKM_EXEC_CONT vtkm::Id MaskedIndex(vtkm::Id flaggedIndex)
Definition: filter/scalar_topology/worklet/contourtree_augmented/Types.h:127
Worklet implementing the copy of the first supernode per iteration in TreeGrafter::CopyIterationDetai...
Definition: CopyFirstHypernodePerIterationWorklet.h:70
vtkm::Int32 Id
Represents an ID (index into arrays).
Definition: Types.h:191
A control signature tag for input fields.
Definition: WorkletMapField.h:49
VTKM_EXEC_CONT CopyFirstHypernodePerIterationWorklet(vtkm::Id numOldHypernodes)
Definition: CopyFirstHypernodePerIterationWorklet.h:87
_1 InputDomain
Definition: CopyFirstHypernodePerIterationWorklet.h:83
vtkm::Id NumOldHypernodes
Definition: CopyFirstHypernodePerIterationWorklet.h:138
void(FieldIn newHypernode, WholeArrayIn hierarchicalTreeHypernodes, WholeArrayIn hierarchicalTreeWhichIteration, WholeArrayInOut hierarchicalTreeFirstHypernodePerIteration) ControlSignature
Definition: CopyFirstHypernodePerIterationWorklet.h:80
VTKM_EXEC void operator()(const vtkm::Id &newHypernode, const InFieldPortalType &hierarchicalTreeHypernodesPortal, const InFieldPortalType &hierarchicalTreeWhichIterationPortal, const OutFieldPortalType &hierarchicalTreeFirstHypernodePerIterationPortal) const
Definition: CopyFirstHypernodePerIterationWorklet.h:93
Base class for worklets that do a simple mapping of field arrays.
Definition: WorkletMapField.h:38