10#ifndef TPETRA_DETAILS_MPITYPETRAITS_HPP
11#define TPETRA_DETAILS_MPITYPETRAITS_HPP
37#include "TpetraCore_config.h"
38#ifdef HAVE_TPETRACORE_MPI
40#include "Kokkos_Complex.hpp"
41#include "Teuchos_Details_MpiTypeTraits.hpp"
53class MpiTypeTraits< ::Kokkos::complex<double> > {
56 static const bool hasMpi3 =
true;
58 static const bool hasMpi3 =
false;
63 static const bool isSpecialized =
true;
67 static const bool needsFree = !hasMpi3;
70 static MPI_Datatype getType(const ::Kokkos::complex<double>& z);
73 static MPI_Datatype getType();
77class MpiTypeTraits< ::Kokkos::complex<float> > {
80 static const bool hasMpi3 =
true;
82 static const bool hasMpi3 =
false;
87 static const bool isSpecialized =
true;
91 static const bool needsFree = !hasMpi3;
94 static MPI_Datatype getType(const ::Kokkos::complex<float>& z);
97 static MPI_Datatype getType();
107using ::Teuchos::Details::MpiTypeTraits;
Implementation details of Tpetra.
Namespace Tpetra contains the class and methods constituting the Tpetra library.