Fix conversion errors in benchmarking code
The recent removal of type selectors in ControlSignature field tags means that the BenchmarkFieldAlgorithms code was creating code paths that were never followed and lead to impossible type conversions (e.g. Vec to float). Fixed the problem by specifing the types for the VariantArrayHandles better.
This commit is contained in:
parent
821925fbf3
commit
a52211e565
@ -320,7 +320,7 @@ class BenchmarkFieldAlgorithms
|
||||
|
||||
using ValueVariantHandle = vtkm::cont::VariantArrayHandleBase<ValueTypes>;
|
||||
using InterpVariantHandle = vtkm::cont::VariantArrayHandleBase<InterpValueTypes>;
|
||||
using IdVariantHandle = vtkm::cont::VariantArrayHandleBase<vtkm::TypeListTagIndex>;
|
||||
using EdgeIdVariantHandle = vtkm::cont::VariantArrayHandleBase<vtkm::TypeListTagId2>;
|
||||
|
||||
private:
|
||||
template <typename Value>
|
||||
@ -662,8 +662,8 @@ private:
|
||||
vtkm::Float64 operator()()
|
||||
{
|
||||
InterpVariantHandle dfield(this->FieldHandle);
|
||||
InterpVariantHandle dweight(this->WeightHandle);
|
||||
IdVariantHandle dedges(this->EdgePairHandle);
|
||||
ValueVariantHandle dweight(this->WeightHandle);
|
||||
EdgeIdVariantHandle dedges(this->EdgePairHandle);
|
||||
vtkm::cont::ArrayHandle<Value> result;
|
||||
|
||||
Timer timer;
|
||||
|
Loading…
Reference in New Issue
Block a user