21 #ifndef VTK_WRAPPING_CXX 23 #ifndef vtkmDataArray_h 24 #define vtkmDataArray_h 26 #include "vtkAcceleratorsVTKmModule.h" 28 #include "vtkmConfig.h" 30 #include <vtkm/List.h> 31 #include <vtkm/VecFromPortal.h> 32 #include <vtkm/VecTraits.h> 33 #include <vtkm/cont/ArrayHandle.h> 34 #include <vtkm/cont/VariantArrayHandle.h> 57 using typename Superclass::ValueType;
59 using VtkmTypesList = vtkm::List<T, vtkm::Vec<T, 2>, vtkm::Vec<T, 3>, vtkm::Vec<T, 4>,
60 vtkm::VecFromPortal<typename vtkm::cont::ArrayHandle<T>::PortalControl> >;
64 template <
typename V,
typename S>
92 std::unique_ptr<internal::ArrayHandleWrapperBase<T> > VtkmArray;
96 template <
typename T,
typename S>
98 const vtkm::cont::ArrayHandle<T, S>& ah)
101 ret->SetVtkmArrayHandle(ah);
106 #ifndef vtkmDataArray_cxx 120 #endif // vtkmDataArray_cxx 122 #endif // vtkmDataArray_h 124 #include "vtkmDataArray.hxx" void SetVtkmArrayHandle(const vtkm::cont::ArrayHandle< V, S > &ah)
void SetTypedTuple(vtkIdType tupleIdx, const ValueType *tuple)
abstract base class for most VTK objects
~vtkmDataArray() override
bool AllocateTuples(vtkIdType numTuples)
concept methods for vtkGenericDataArray
Base interface for all typed vtkDataArray subclasses.
void SetTypedComponent(vtkIdType tupleIdx, int compIdx, ValueType value)
static vtkmDataArray * New()
void SetValue(vtkIdType valueIdx, ValueType value)
bool ReallocateTuples(vtkIdType numTuples)
void GetTypedTuple(vtkIdType tupleIdx, ValueType *tuple) const
ValueType GetTypedComponent(vtkIdType tupleIdx, int compIdx) const
ValueType GetValue(vtkIdType valueIdx) const
concept methods for vtkGenericDataArray
vtkmDataArray< typename vtkm::VecTraits< T >::BaseComponentType > * make_vtkmDataArray(const vtkm::cont::ArrayHandle< T, S > &ah)
vtkm::List< T, vtkm::Vec< T, 2 >, vtkm::Vec< T, 3 >, vtkm::Vec< T, 4 >, vtkm::VecFromPortal< typename vtkm::cont::ArrayHandle< T >::PortalControl > > VtkmTypesList
vtkm::cont::VariantArrayHandle GetVtkmVariantArrayHandle() const
vtkTemplateTypeMacro(SelfType, GenericDataArrayType)