46 #ifndef vtk_m_filter_scalar_topology_worklet_branch_decomposition_hierarchical_volumetric_branch_decomposer_LocalBestUpDownByVolumeWorklet_h
47 #define vtk_m_filter_scalar_topology_worklet_branch_decomposition_hierarchical_volumetric_branch_decomposer_LocalBestUpDownByVolumeWorklet_h
56 namespace scalar_topology
58 namespace hierarchical_volumetric_branch_decomposer
69 template <
bool IsDown>
75 WholeArrayIn actualSuperacrs,
76 WholeArrayIn superarcList,
79 WholeArrayIn hierarchicalTreeRegularNodeGlobalIds,
80 WholeArrayIn hierarchicalTreeSupernodes,
98 template <
typename InFieldPortalType1,
99 typename InFieldPortalType2,
100 typename InFieldPortalType3,
101 typename InFieldPortalType4,
102 typename OutFieldPortalType1,
103 typename OutFieldPortalType2>
105 const InFieldPortalType1& actualSuperarcsPortal,
106 const InFieldPortalType2& superarcListPortal,
108 const InFieldPortalType3& hierarchicalTreeRegularNodeGlobalIdsPortal,
109 const InFieldPortalType4& hierarchicalTreeSupernodesPortal,
110 const OutFieldPortalType1& bestUpDownSupernodePortal,
111 const OutFieldPortalType2& bestUpDownVolumePortal)
const
114 vtkm::Id superarcId = actualSuperarcsPortal.Get(actualSuperarcIndex);
122 bestUpDownSupernodePortal.Set(edge.
second,
123 hierarchicalTreeRegularNodeGlobalIdsPortal.Get(
124 hierarchicalTreeSupernodesPortal.Get(edge.
first)));
125 bestUpDownVolumePortal.Set(edge.
second, upDownVolumeValue);
130 superarcListPortal.Get(actualSuperarcsPortal.Get(actualSuperarcIndex + 1));
134 bestUpDownSupernodePortal.Set(edge.
second,
135 hierarchicalTreeRegularNodeGlobalIdsPortal.Get(
136 hierarchicalTreeSupernodesPortal.Get(edge.
first)));
137 bestUpDownVolumePortal.Set(edge.
second, upDownVolumeValue);
146 bestUpDownSupernodePortal.Set(edge.
first,
147 hierarchicalTreeRegularNodeGlobalIdsPortal.Get(
148 hierarchicalTreeSupernodesPortal.Get(edge.
second)));
149 bestUpDownVolumePortal.Set(edge.
first, upDownVolumeValue);
154 superarcListPortal.Get(actualSuperarcsPortal.Get(actualSuperarcIndex + 1));
158 bestUpDownSupernodePortal.Set(edge.
first,
159 hierarchicalTreeRegularNodeGlobalIdsPortal.Get(
160 hierarchicalTreeSupernodesPortal.Get(edge.
second)));
161 bestUpDownVolumePortal.Set(edge.
first, upDownVolumeValue);