Go to the documentation of this file.
10 #ifndef vtk_m_worklet_WorkletReduceByKey_h
11 #define vtk_m_worklet_WorkletReduceByKey_h
57 template <
typename Worklet>
189 #ifdef VTKM_DOXYGEN_ONLY
193 struct WholeArrayIn : vtkm::worklet::internal::WorkletBase::WholeArrayIn
213 template <
typename VisitTopology = Cell,
typename Inc
identTopology = Po
int>
215 : vtkm::worklet::internal::WorkletBase::WholeCellSetIn<VisitTopology, IncidentTopology>
220 struct ExecObject : vtkm::worklet::internal::WorkletBase::ExecObject
231 #ifdef VTKM_DOXYGEN_ONLY
235 struct _1 : vtkm::worklet::internal::WorkletBase::_1
253 #ifdef VTKM_DOXYGEN_ONLY
282 struct Device : vtkm::worklet::internal::WorkletBase::Device
292 template <
typename OutToInArrayType,
293 typename VisitArrayType,
294 typename ThreadToOutArrayType,
295 typename InputDomainType>
298 const OutToInArrayType& outToIn,
299 const VisitArrayType& visit,
300 const ThreadToOutArrayType& threadToOut,
301 const InputDomainType& inputDomain)
const
303 const vtkm::Id outIndex = threadToOut.Get(threadIndex);
305 threadIndex, outToIn.Get(outIndex), visit.Get(outIndex), outIndex, inputDomain);
311 #endif //vtk_m_worklet_WorkletReduceByKey_h
ExecutionSignature tag for getting the device adapter tag.
Definition: WorkletReduceByKey.h:282
The ExecutionSignature tag to get the number of values.
Definition: ValueCount.h:40
#define VTKM_EXEC
Definition: ExportMacros.h:51
Groups connected points that have the same field value.
Definition: Atomic.h:19
A control signature tag for input values associated with the keys.
Definition: WorkletReduceByKey.h:88
Fetch tag for getting key values in a reduce by key.
Definition: FetchTagKeysIn.h:31
Fetch tag for setting array values with direct indexing.
Definition: FetchTagArrayDirectOut.h:31
A control signature tag for output values associated with the keys.
Definition: WorkletReduceByKey.h:123
The Array type check passes for any object that behaves like an ArrayHandle class and can be passed t...
Definition: TypeCheckTagArrayOut.h:31
The ExecutionSignature tag to get the number of values.
Definition: WorkletReduceByKey.h:249
Transport tag for in-place arrays.
Definition: TransportTagArrayInOut.h:33
The ExecutionSignature tag to use to get the visit index.
Definition: WorkletReduceByKey.h:262
Container for thread indices in a reduce by key invocation.
Definition: ThreadIndicesReduceByKey.h:31
ControlSignature tag for whole input topology.
Definition: WorkletReduceByKey.h:214
A control signature tag for reduced output values.
Definition: WorkletReduceByKey.h:139
The ExecutionSignature tag to use to get the output index.
Definition: OutputIndex.h:44
Transport tag for output arrays.
Definition: TransportTagArrayOut.h:32
The Array type check passes for any object that behaves like an ArrayHandle class and can be passed t...
Definition: TypeCheckTagArrayInOut.h:31
ControlSignature tag for execution object inputs.
Definition: WorkletReduceByKey.h:220
A control signature tag for input/output values associated with the keys.
Definition: WorkletReduceByKey.h:105
The Array type check passes for any object that behaves like an ArrayHandle class and can be passed t...
Definition: TypeCheckTagArrayIn.h:31
Transport tag for input values in a reduce by key.
Definition: TransportTagKeyedValuesIn.h:28
ControlSignature tag for whole input/output arrays.
Definition: WorkletReduceByKey.h:208
ControlSignature tag for whole input arrays.
Definition: WorkletReduceByKey.h:193
A control signature tag for reduced input values.
Definition: WorkletReduceByKey.h:160
ControlSignature tag for whole input/output arrays.
Definition: WorkletReduceByKey.h:203
Fetch tag for getting array values with direct indexing.
Definition: FetchTagArrayDirectIn.h:29
A control signature tag for reduced output values.
Definition: WorkletReduceByKey.h:182
Base class for worklets that group elements by keys.
Definition: WorkletReduceByKey.h:54
Transport tag for keys in a reduce by key.
Definition: TransportTagKeysIn.h:28
The ExecutionSignature tag to use to get the thread indices.
Definition: ThreadIndices.h:44
The ExecutionSignature tag to use to get the work index.
Definition: WorkletReduceByKey.h:257
A control signature tag for input keys.
Definition: WorkletReduceByKey.h:73
vtkm::Int64 Id
Base type to use to index arrays.
Definition: Types.h:227
Transport tag for input arrays.
Definition: TransportTagArrayIn.h:32
Argument placeholders for an ExecutionSignature.
Definition: WorkletReduceByKey.h:235
Transport tag for input values in a reduce by key.
Definition: TransportTagKeyedValuesOut.h:28
The base class for all tags used in a ControlSignature.
Definition: ControlSignatureTagBase.h:36
ControlSignature tag for whole output arrays.
Definition: WorkletReduceByKey.h:198
Dispatcher for worklets that inherit from WorkletReduceByKey.
Definition: DispatcherReduceByKey.h:27
The ExecutionSignature tag to use to get the thread indices.
Definition: WorkletReduceByKey.h:277
vtkm::exec::arg::ThreadIndicesReduceByKey GetThreadIndices(vtkm::Id threadIndex, const OutToInArrayType &outToIn, const VisitArrayType &visit, const ThreadToOutArrayType &threadToOut, const InputDomainType &inputDomain) const
Reduce by key worklets use the related thread indices class.
Definition: WorkletReduceByKey.h:296
Fetch tag for in-place modifying array values with direct indexing.
Definition: FetchTagArrayDirectInOut.h:39
Check for a Keys object.
Definition: TypeCheckTagKeys.h:24
The ExecutionSignature tag to use to get the visit index.
Definition: VisitIndex.h:46
#define VTKM_SUPPRESS_EXEC_WARNINGS
Definition: ExportMacros.h:53
The ExecutionSignature tag to use to get the output index.
Definition: WorkletReduceByKey.h:272
Transport tag for input values in a reduce by key.
Definition: TransportTagKeyedValuesInOut.h:28
The ExecutionSignature tag to use to get the work index.
Definition: WorkIndex.h:39