Morpheus 1.0.0
Dynamic matrix type and algorithms for sparse matrices
Loading...
Searching...
No Matches
Dia/Kokkos/Morpheus_Convert_Impl.hpp
1
24#ifndef MORPHEUS_DIA_KOKKOS_CONVERT_IMPL_HPP
25#define MORPHEUS_DIA_KOKKOS_CONVERT_IMPL_HPP
26
27#include <Morpheus_Exceptions.hpp>
28#include <Morpheus_SpaceTraits.hpp>
29#include <Morpheus_FormatTraits.hpp>
30#include <Morpheus_FormatTags.hpp>
31#include <Morpheus_Spaces.hpp>
32
33namespace Morpheus {
34namespace Impl {
35
36template <typename ExecSpace, typename SourceType, typename DestinationType>
37inline void convert(
38 const SourceType&, DestinationType&,
39 typename std::enable_if_t<
40 Morpheus::is_dia_matrix_format_container_v<SourceType> &&
41 Morpheus::is_dia_matrix_format_container_v<DestinationType> &&
42 Morpheus::has_generic_backend_v<ExecSpace> &&
43 Morpheus::has_access_v<ExecSpace, SourceType, DestinationType>>* =
44 nullptr) {
45 throw Morpheus::NotImplementedException("convert<Kokkos>");
46}
47
48template <typename ExecSpace, typename SourceType, typename DestinationType>
49inline void convert(
50 const SourceType&, DestinationType&,
51 typename std::enable_if_t<
52 Morpheus::is_dia_matrix_format_container_v<SourceType> &&
53 Morpheus::is_coo_matrix_format_container_v<DestinationType> &&
54 Morpheus::has_generic_backend_v<ExecSpace> &&
55 Morpheus::has_access_v<ExecSpace, SourceType, DestinationType>>* =
56 nullptr) {
57 throw Morpheus::NotImplementedException("convert<Kokkos>");
58}
59
60template <typename ExecSpace, typename SourceType, typename DestinationType>
61inline void convert(
62 const SourceType&, DestinationType&,
63 typename std::enable_if_t<
64 Morpheus::is_coo_matrix_format_container_v<SourceType> &&
65 Morpheus::is_dia_matrix_format_container_v<DestinationType> &&
66 Morpheus::has_generic_backend_v<ExecSpace> &&
67 Morpheus::has_access_v<ExecSpace, SourceType, DestinationType>>* =
68 nullptr) {
69 throw Morpheus::NotImplementedException("convert<Kokkos>");
70}
71
72} // namespace Impl
73} // namespace Morpheus
74
75#endif // MORPHEUS_DIA_KOKKOS_CONVERT_IMPL_HPP
Definition: Morpheus_Exceptions.hpp:43
Generic Morpheus interfaces.
Definition: dummy.cpp:24