Go to the documentation of this file.
   10 #ifndef vtk_m_worklet_ScatterCounting_h 
   11 #define vtk_m_worklet_ScatterCounting_h 
   14 #include <vtkm/worklet/vtkm_worklet_export.h> 
   28 struct ScatterCountingBuilder;
 
   64                             bool saveInputToOutputMap = 
false)
 
   66     this->BuildArrays(countArray, device, saveInputToOutputMap);
 
   69                             bool saveInputToOutputMap)
 
   71     this->BuildArrays(countArray, vtkm::cont::DeviceAdapterTagAny(), saveInputToOutputMap);
 
   76   template <
typename RangeType>
 
   79     return this->OutputToInputMap;
 
   83   template <
typename RangeType>
 
   86     return this->VisitArray;
 
   92     if (inputRange != this->InputRange)
 
   94       std::stringstream msg;
 
   95       msg << 
"ScatterCounting initialized with input domain of size " << this->InputRange
 
   96           << 
" but used with a worklet invoke of size " << inputRange << std::endl;
 
   99     return this->VisitArray.GetNumberOfValues();
 
  104     return this->GetOutputRange(inputRange[0] * inputRange[1] * inputRange[2]);
 
  122   friend struct detail::ScatterCountingBuilder;
 
  126                              bool saveInputToOutputMap);
 
  131 #endif //vtk_m_worklet_ScatterCounting_h 
  
VTKM_CONT OutputToInputMapType GetOutputToInputMap() const
Definition: ScatterCounting.h:108
 
Groups connected points that have the same field value.
Definition: Atomic.h:19
 
An ArrayHandle of an unknown value type and storage.
Definition: UnknownArrayHandle.h:406
 
VTKM_CONT VisitArrayType GetVisitArray(RangeType) const
Definition: ScatterCounting.h:84
 
int16_t Int16
Definition: Types.h:158
 
vtkm::Int32 Id
Represents an ID (index into arrays).
Definition: Types.h:191
 
vtkm::cont::ArrayHandle< vtkm::Id > InputToOutputMap
Definition: ScatterCounting.h:118
 
A scatter that maps input to some numbers of output.
Definition: ScatterCounting.h:44
 
VTKM_CONT vtkm::cont::ArrayHandle< vtkm::Id > GetInputToOutputMap() const
This array will not be valid unless explicitly instructed to be saved.
Definition: ScatterCounting.h:114
 
int8_t Int8
Definition: Types.h:156
 
VTKM_CONT vtkm::Id GetOutputRange(vtkm::Id inputRange) const
Definition: ScatterCounting.h:90
 
VTKM_CONT OutputToInputMapType GetOutputToInputMap(RangeType) const
Definition: ScatterCounting.h:77
 
#define VTKM_CONT
Definition: ExportMacros.h:57
 
VisitArrayType VisitArray
Definition: ScatterCounting.h:120
 
uint8_t UInt8
Definition: Types.h:157
 
Definition: DeviceAdapterTag.h:52
 
VTKM_CONT ScatterCounting(const vtkm::cont::UnknownArrayHandle &countArray, vtkm::cont::DeviceAdapterId device=vtkm::cont::DeviceAdapterTagAny(), bool saveInputToOutputMap=false)
Construct a ScatterCounting object using an array of counts for the number of outputs for each input.
Definition: ScatterCounting.h:62
 
uint32_t UInt32
Definition: Types.h:161
 
This class is thrown when a VTKm function or method encounters an invalid value that inhibits progres...
Definition: ErrorBadValue.h:25
 
VTKM_CONT vtkm::Id GetOutputRange(vtkm::Id3 inputRange) const
Definition: ScatterCounting.h:102
 
int32_t Int32
Definition: Types.h:160
 
VTKM_CONT ScatterCounting(const vtkm::cont::UnknownArrayHandle &countArray, bool saveInputToOutputMap)
Definition: ScatterCounting.h:68
 
vtkm::Id InputRange
Definition: ScatterCounting.h:117
 
uint16_t UInt16
Definition: Types.h:159
 
OutputToInputMapType OutputToInputMap
Definition: ScatterCounting.h:119