24#ifndef MORPHEUS_DENSEMATRIX_KOKKOS_CONVERT_IMPL_HPP
25#define MORPHEUS_DENSEMATRIX_KOKKOS_CONVERT_IMPL_HPP
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>
36template <
typename ExecSpace,
typename SourceType,
typename DestinationType>
38 const SourceType&, DestinationType&, DenseMatrixTag, DenseMatrixTag,
39 typename std::enable_if<
40 Morpheus::is_dense_matrix_format_container_v<SourceType> &&
41 Morpheus::is_dense_matrix_format_container_v<DestinationType> &&
42 Morpheus::has_generic_backend_v<ExecSpace> &&
43 Morpheus::has_access_v<ExecSpace, SourceType, DestinationType>>::type* =
48template <
typename ExecSpace,
typename SourceType,
typename DestinationType>
50 const SourceType&, DestinationType&,
51 typename std::enable_if<
52 Morpheus::is_dense_matrix_format_container_v<SourceType> &&
53 Morpheus::is_dense_vector_format_container_v<DestinationType> &&
54 Morpheus::has_generic_backend_v<ExecSpace> &&
55 Morpheus::has_access_v<ExecSpace, SourceType, DestinationType>>::type* =
60template <
typename ExecSpace,
typename SourceType,
typename DestinationType>
62 const SourceType&, DestinationType&,
63 typename std::enable_if<
64 Morpheus::is_dense_matrix_format_container_v<SourceType> &&
65 Morpheus::is_coo_matrix_format_container_v<DestinationType> &&
66 Morpheus::has_generic_backend_v<ExecSpace> &&
67 Morpheus::has_access_v<ExecSpace, SourceType, DestinationType>>::type* =
72template <
typename ExecSpace,
typename SourceType,
typename DestinationType>
74 const SourceType&, DestinationType&,
75 typename std::enable_if<
76 Morpheus::is_coo_matrix_format_container_v<SourceType> &&
77 Morpheus::is_dense_matrix_format_container_v<DestinationType> &&
78 Morpheus::has_generic_backend_v<ExecSpace> &&
79 Morpheus::has_access_v<ExecSpace, SourceType, DestinationType>>::type* =
Definition: Morpheus_Exceptions.hpp:43
Generic Morpheus interfaces.
Definition: dummy.cpp:24