diff --git a/vtkm/cont/cuda/internal/ExecutionArrayInterfaceBasicCuda.cu b/vtkm/cont/cuda/internal/ExecutionArrayInterfaceBasicCuda.cu index 17eec0383..9de2bcecf 100644 --- a/vtkm/cont/cuda/internal/ExecutionArrayInterfaceBasicCuda.cu +++ b/vtkm/cont/cuda/internal/ExecutionArrayInterfaceBasicCuda.cu @@ -31,7 +31,7 @@ namespace internal DeviceAdapterId ExecutionArrayInterfaceBasic::GetDeviceId() const { - return DeviceAdapterId(VTKM_DEVICE_ADAPTER_CUDA); + return DeviceAdapterTagCuda{}; } void ExecutionArrayInterfaceBasic::Allocate(TypelessExecutionArray& execArray, diff --git a/vtkm/cont/internal/DeviceAdapterTag.h b/vtkm/cont/internal/DeviceAdapterTag.h index cd9494e2a..384780c4c 100644 --- a/vtkm/cont/internal/DeviceAdapterTag.h +++ b/vtkm/cont/internal/DeviceAdapterTag.h @@ -44,11 +44,6 @@ namespace cont struct DeviceAdapterId { - constexpr explicit DeviceAdapterId(vtkm::Int8 id) - : Value(id) - { - } - constexpr bool operator==(DeviceAdapterId other) const { return this->Value == other.Value; } constexpr bool operator!=(DeviceAdapterId other) const { return this->Value != other.Value; } constexpr bool operator<(DeviceAdapterId other) const { return this->Value < other.Value; } @@ -60,6 +55,12 @@ struct DeviceAdapterId constexpr vtkm::Int8 GetValue() const { return this->Value; } +protected: + constexpr explicit DeviceAdapterId(vtkm::Int8 id) + : Value(id) + { + } + private: vtkm::Int8 Value; }; diff --git a/vtkm/cont/openmp/internal/ExecutionArrayInterfaceBasicOpenMP.cxx b/vtkm/cont/openmp/internal/ExecutionArrayInterfaceBasicOpenMP.cxx index 0e975f8a1..182329ce6 100644 --- a/vtkm/cont/openmp/internal/ExecutionArrayInterfaceBasicOpenMP.cxx +++ b/vtkm/cont/openmp/internal/ExecutionArrayInterfaceBasicOpenMP.cxx @@ -28,7 +28,7 @@ namespace internal DeviceAdapterId ExecutionArrayInterfaceBasic::GetDeviceId() const { - return DeviceAdapterId(VTKM_DEVICE_ADAPTER_OPENMP); + return DeviceAdapterTagOpenMP{}; } } // namespace internal diff --git a/vtkm/cont/serial/internal/ExecutionArrayInterfaceBasicSerial.cxx b/vtkm/cont/serial/internal/ExecutionArrayInterfaceBasicSerial.cxx index a686bcf4e..5d226a94e 100644 --- a/vtkm/cont/serial/internal/ExecutionArrayInterfaceBasicSerial.cxx +++ b/vtkm/cont/serial/internal/ExecutionArrayInterfaceBasicSerial.cxx @@ -27,7 +27,7 @@ namespace internal { DeviceAdapterId ExecutionArrayInterfaceBasic::GetDeviceId() const { - return DeviceAdapterId(VTKM_DEVICE_ADAPTER_SERIAL); + return DeviceAdapterTagSerial{}; } } // namespace internal diff --git a/vtkm/cont/tbb/internal/ExecutionArrayInterfaceBasicTBB.cxx b/vtkm/cont/tbb/internal/ExecutionArrayInterfaceBasicTBB.cxx index 619ea7a73..322082399 100644 --- a/vtkm/cont/tbb/internal/ExecutionArrayInterfaceBasicTBB.cxx +++ b/vtkm/cont/tbb/internal/ExecutionArrayInterfaceBasicTBB.cxx @@ -27,7 +27,7 @@ namespace internal { DeviceAdapterId ExecutionArrayInterfaceBasic::GetDeviceId() const { - return DeviceAdapterId(VTKM_DEVICE_ADAPTER_TBB); + return DeviceAdapterTagTBB{}; } } // namespace internal diff --git a/vtkm/cont/testing/UnitTestDeviceAdapterAlgorithmGeneral.cxx b/vtkm/cont/testing/UnitTestDeviceAdapterAlgorithmGeneral.cxx index ecbc13387..3f299a6c8 100644 --- a/vtkm/cont/testing/UnitTestDeviceAdapterAlgorithmGeneral.cxx +++ b/vtkm/cont/testing/UnitTestDeviceAdapterAlgorithmGeneral.cxx @@ -131,7 +131,7 @@ struct ExecutionArrayInterfaceBasic using ExecutionArrayInterfaceBasicShareWithControl::ExecutionArrayInterfaceBasicShareWithControl; VTKM_CONT - DeviceAdapterId GetDeviceId() const final { return DeviceAdapterId(7); } + DeviceAdapterId GetDeviceId() const final { return DeviceAdapterTagTestAlgorithmGeneral{}; } }; } }