10 #ifndef AMESOS2_TACHO_TYPEMAP_HPP
11 #define AMESOS2_TACHO_TYPEMAP_HPP
14 #ifdef HAVE_TEUCHOS_COMPLEX
18 #include <Teuchos_as.hpp>
19 #ifdef HAVE_TEUCHOS_COMPLEX
20 #include <Teuchos_SerializationTraits.hpp>
23 #include "Amesos2_TypeMap.hpp"
27 template <
class,
class>
class TachoSolver;
35 struct TypeMap<TachoSolver,float>
38 typedef float magnitude_type;
42 struct TypeMap<TachoSolver,double>
45 typedef double magnitude_type;
49 #ifdef HAVE_TEUCHOS_COMPLEX
53 struct TypeMap<TachoSolver,std::complex<float> >
55 typedef Kokkos::complex<float> type;
56 typedef float magnitude_type;
60 struct TypeMap<TachoSolver,std::complex<double> >
62 typedef Kokkos::complex<double> type;
63 typedef double magnitude_type;
67 struct TypeMap<TachoSolver,Kokkos::complex<float> >
69 typedef Kokkos::complex<float> type;
70 typedef float magnitude_type;
74 struct TypeMap<TachoSolver,Kokkos::complex<double> >
76 typedef Kokkos::complex<double> type;
77 typedef double magnitude_type;
80 #endif // HAVE_TEUCHOS_COMPLEX
87 #endif // AMESOS2_TACHO_TYPEMAP_HPP