18 #ifndef viskores_worklet_Dispatcher_MapTopology_h
19 #define viskores_worklet_Dispatcher_MapTopology_h
31 struct WorkletMapTopologyBase;
33 class WorkletVisitCellsWithPoints;
34 class WorkletVisitPointsWithCells;
38 template <
typename WorkletType>
40 :
public viskores::worklet::internal::DispatcherBase<
41 DispatcherMapTopology<WorkletType>,
43 viskores::worklet::detail::WorkletMapTopologyBase>
46 viskores::worklet::internal::DispatcherBase<DispatcherMapTopology<WorkletType>,
48 viskores::worklet::detail::WorkletMapTopologyBase>;
52 template <
typename... T>
58 template <
typename Invocation>
61 using namespace viskores::worklet::internal;
64 using InputDomainType =
typename Invocation::InputDomainType;
65 using SchedulingRangeType =
typename WorkletType::VisitTopologyType;
74 const auto& inputDomain = invocation.GetInputDomain();
78 this->BasicInvoke(invocation, SchedulingRange(inputDomain, SchedulingRangeType{}));
84 #endif //viskores_worklet_Dispatcher_MapTopology_h