10 #ifndef vtk_m_exec_internal_TaskSingular_h
11 #define vtk_m_exec_internal_TaskSingular_h
34 template <
typename WorkletType,
typename InvocationType>
39 TaskSingular(
const WorkletType& worklet,
const InvocationType& invocation)
41 , Invocation(invocation)
46 void SetErrorMessageBuffer(
const vtkm::exec::internal::ErrorMessageBuffer& buffer)
48 this->Worklet.SetErrorMessageBuffer(buffer);
55 detail::DoWorkletInvokeFunctor(
58 this->Worklet.GetThreadIndices(index,
59 this->Invocation.OutputToInputMap,
60 this->Invocation.VisitArray,
61 this->Invocation.ThreadToOutputMap,
62 this->Invocation.GetInputDomain()));
66 typename std::remove_const<WorkletType>::type Worklet;
71 const InvocationType Invocation;
77 #endif //vtk_m_exec_internal_TaskSingular_h