Commit 86bd81de authored by Utkarsh Ayachit's avatar Utkarsh Ayachit
Browse files

streamline: handle different storage types for fields.

this is required now that, in theory, streaminlines filter can be
executed treating the coordinate system as the vector field.
parent de4e840e
......@@ -79,11 +79,11 @@ inline VTKM_CONT vtkm::filter::Result Streamline::DoExecute(
return vtkm::filter::Result();
//todo: add check for rectilinear.
using FieldHandle = vtkm::cont::ArrayHandle<vtkm::Vec<T, 3>>;
using FieldHandle = vtkm::cont::ArrayHandle<vtkm::Vec<T, 3>, StorageType>;
using FieldPortalConstType =
typename FieldHandle::template ExecutionTypes<DeviceAdapter>::PortalConst;
using RGEvalType =
vtkm::worklet::particleadvection::UniformGridEvaluate<FieldPortalConstType, T, DeviceAdapter>;
using RGEvalType = vtkm::worklet::particleadvection::
UniformGridEvaluate<FieldPortalConstType, T, DeviceAdapter, StorageType>;
using RK4RGType = vtkm::worklet::particleadvection::RK4Integrator<RGEvalType, T>;
//RGEvalType eval(input.GetCoordinateSystem(), input.GetCellSet(0), field);
......@@ -127,10 +127,13 @@ private:
//Uniform Grid Evaluator
template <typename PortalType, typename FieldType, typename DeviceAdapterTag>
template <typename PortalType,
typename FieldType,
typename DeviceAdapterTag,
typename StorageTag = VTKM_DEFAULT_STORAGE_TAG>
class UniformGridEvaluate
using FieldHandle = vtkm::cont::ArrayHandle<vtkm::Vec<FieldType, 3>>;
using FieldHandle = vtkm::cont::ArrayHandle<vtkm::Vec<FieldType, 3>, StorageTag>;
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment