10 #ifndef vtk_m_cont_arg_TypeCheckTagArrayInOut_h
11 #define vtk_m_cont_arg_TypeCheckTagArrayInOut_h
38 template <
typename ArrayType,
39 bool IsArrayHandle = vtkm::cont::internal::ArrayHandleCheck<ArrayType>::type::value>
40 struct IsArrayHandleInOut;
42 template <
typename ArrayType>
43 struct IsArrayHandleInOut<ArrayType, true>
45 static constexpr
bool value =
46 (vtkm::internal::PortalSupportsGets<typename ArrayType::ReadPortalType>::value &&
47 vtkm::internal::PortalSupportsSets<typename ArrayType::WritePortalType>::value);
50 template <
typename ArrayType>
51 struct IsArrayHandleInOut<ArrayType, false>
53 static constexpr
bool value =
false;
58 template <
typename ArrayType>
61 static constexpr
bool value = detail::IsArrayHandleInOut<ArrayType>::value;
67 #endif //vtk_m_cont_arg_TypeCheckTagArray_h