VTK-m  2.0
Public Types | Public Member Functions | List of all members
vtkm::worklet::contourtree_distributed::bract_maker::PropagateBoundaryCountsTransferCumulativeCountsWorklet Class Reference

Worklet to transfer the cumulative counts for hyperarcs Part of the BoundaryRestrictedAugmentedContourTree.PropagateBoundaryCounts function. More...

#include <PropagateBoundaryCountsTransferCumulativeCountsWorklet.h>

Inheritance diagram for vtkm::worklet::contourtree_distributed::bract_maker::PropagateBoundaryCountsTransferCumulativeCountsWorklet:
vtkm::worklet::WorkletMapField vtkm::exec::FunctorBase

Public Types

using ControlSignature = void(WholeArrayIn hyperarcTargetSortPermutation, WholeArrayIn hyperarcs, WholeArrayIn accumulatedBoundaryCountPortal, WholeArrayInOut supernodeTransferBoundaryCountPortal)
 
using ExecutionSignature = void(InputIndex, _1, _2, _3, _4)
 
using InputDomain = _1
 
- Public Types inherited from vtkm::worklet::WorkletMapField
template<typename Worklet >
using Dispatcher = vtkm::worklet::DispatcherMapField< Worklet >
 

Public Member Functions

VTKM_EXEC_CONT PropagateBoundaryCountsTransferCumulativeCountsWorklet ()
 
template<typename InFieldPortalType , typename InOutFieldPortalType >
VTKM_EXEC void operator() (const vtkm::Id &hyperarc, const InFieldPortalType &hyperarcTargetSortPermutationPortal, const InFieldPortalType &hyperarcsPortal, const InFieldPortalType &accumulatedBoundaryCountPortal, const InOutFieldPortalType &supernodeTransferBoundaryCountPortal) const
 

Detailed Description

Worklet to transfer the cumulative counts for hyperarcs Part of the BoundaryRestrictedAugmentedContourTree.PropagateBoundaryCounts function.

  1. The partial sum is now over ALL hypertargets, so within each group we need to subtract the first from the last To do so, the last hyperarc in each cluster copies its cumulative count to the output array

Member Typedef Documentation

◆ ControlSignature

using vtkm::worklet::contourtree_distributed::bract_maker::PropagateBoundaryCountsTransferCumulativeCountsWorklet::ControlSignature = void( WholeArrayIn hyperarcTargetSortPermutation, WholeArrayIn hyperarcs, WholeArrayIn accumulatedBoundaryCountPortal, WholeArrayInOut supernodeTransferBoundaryCountPortal )

◆ ExecutionSignature

◆ InputDomain

Constructor & Destructor Documentation

◆ PropagateBoundaryCountsTransferCumulativeCountsWorklet()

VTKM_EXEC_CONT vtkm::worklet::contourtree_distributed::bract_maker::PropagateBoundaryCountsTransferCumulativeCountsWorklet::PropagateBoundaryCountsTransferCumulativeCountsWorklet ( )
inline

Member Function Documentation

◆ operator()()

template<typename InFieldPortalType , typename InOutFieldPortalType >
VTKM_EXEC void vtkm::worklet::contourtree_distributed::bract_maker::PropagateBoundaryCountsTransferCumulativeCountsWorklet::operator() ( const vtkm::Id hyperarc,
const InFieldPortalType &  hyperarcTargetSortPermutationPortal,
const InFieldPortalType &  hyperarcsPortal,
const InFieldPortalType &  accumulatedBoundaryCountPortal,
const InOutFieldPortalType &  supernodeTransferBoundaryCountPortal 
) const
inline

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