Go to the documentation of this file.
10 #ifndef vtk_m_worklet_WorkletReduceByKey_h
11 #define vtk_m_worklet_WorkletReduceByKey_h
45 template <
typename Worklet>
171 template <
typename OutToInArrayType,
172 typename VisitArrayType,
173 typename ThreadToOutArrayType,
174 typename InputDomainType>
177 const OutToInArrayType& outToIn,
178 const VisitArrayType& visit,
179 const ThreadToOutArrayType& threadToOut,
180 const InputDomainType& inputDomain)
const
182 const vtkm::Id outIndex = threadToOut.Get(threadIndex);
184 threadIndex, outToIn.Get(outIndex), visit.Get(outIndex), outIndex, inputDomain);
190 #endif //vtk_m_worklet_WorkletReduceByKey_h
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.
Definition: WorkletReduceByKey.h:70
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:29
A control signature tag for output values.
Definition: WorkletReduceByKey.h:102
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:164
Transport tag for in-place arrays.
Definition: TransportTagArrayInOut.h:33
Container for thread indices in a reduce by key invocation.
Definition: ThreadIndicesReduceByKey.h:31
A control signature tag for reduced output values.
Definition: WorkletReduceByKey.h:150
Transport tag for output arrays.
Definition: TransportTagArrayOut.h:32
vtkm::Int32 Id
Represents an ID (index into arrays).
Definition: Types.h:191
The Array type check passes for any object that behaves like an ArrayHandle class and can be passed t...
Definition: TypeCheckTagArrayInOut.h:31
A control signature tag for input/output values.
Definition: WorkletReduceByKey.h:86
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
VTKM_SUPPRESS_EXEC_WARNINGS VTKM_EXEC 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:175
A control signature tag for reduced output values.
Definition: WorkletReduceByKey.h:119
Fetch tag for getting array values with direct indexing.
Definition: FetchTagArrayDirectIn.h:29
A control signature tag for reduced output values.
Definition: WorkletReduceByKey.h:136
Definition: WorkletReduceByKey.h:42
Transport tag for keys in a reduce by key.
Definition: TransportTagKeysIn.h:28
A control signature tag for input keys.
Definition: WorkletReduceByKey.h:56
Transport tag for input arrays.
Definition: TransportTagArrayIn.h:32
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
Dispatcher for worklets that inherit from WorkletReduceByKey.
Definition: DispatcherReduceByKey.h:27
Fetch tag for in-place modifying array values with direct indexing.
Definition: FetchTagArrayDirectInOut.h:39
Check for a Keys object.
Definition: TypeCheckTagKeys.h:24
#define VTKM_SUPPRESS_EXEC_WARNINGS
Definition: ExportMacros.h:53
Transport tag for input values in a reduce by key.
Definition: TransportTagKeyedValuesInOut.h:28