51 template<
class GlobalOrdinal,
class Node>
52 RCP<const Export<int, GlobalOrdinal, Node> >
toXpetra(
const Epetra_Export *exp) {
54 RCP<const Epetra_Export> eexp = rcp(
new Epetra_Export(*exp));
61 #ifndef XPETRA_EPETRA_NO_32BIT_GLOBAL_INDICES 62 #ifdef HAVE_XPETRA_TPETRA 63 #include "TpetraCore_config.h" 64 #if ((defined(EPETRA_HAVE_OMP) && !defined(HAVE_TPETRA_INST_OPENMP)) || \ 65 (!defined(EPETRA_HAVE_OMP) && !defined(HAVE_TPETRA_INST_SERIAL))) 66 template class EpetraExportT<int, Xpetra::EpetraNode >;
67 template RCP<const Export<int, int, Xpetra::EpetraNode> > toXpetra<int,Xpetra::EpetraNode>(
const Epetra_Export *);
70 #ifdef HAVE_TPETRA_INST_SERIAL 71 template class EpetraExportT<int, Kokkos::Compat::KokkosSerialWrapperNode >;
72 template RCP<const Export<int,int,Kokkos::Compat::KokkosSerialWrapperNode > > toXpetra<int,Kokkos::Compat::KokkosSerialWrapperNode >(
const Epetra_Export *);
74 #ifdef HAVE_TPETRA_INST_PTHREAD 75 template class EpetraExportT<int, Kokkos::Compat::KokkosThreadsWrapperNode>;
76 template RCP<const Export<int,int,Kokkos::Compat::KokkosThreadsWrapperNode> > toXpetra<int,Kokkos::Compat::KokkosThreadsWrapperNode >(
const Epetra_Export *);
78 #ifdef HAVE_TPETRA_INST_OPENMP 79 template class EpetraExportT<int, Kokkos::Compat::KokkosOpenMPWrapperNode >;
80 template RCP<const Export<int, int, Kokkos::Compat::KokkosOpenMPWrapperNode> > toXpetra<int,Kokkos::Compat::KokkosOpenMPWrapperNode>(
const Epetra_Export *);
82 #ifdef HAVE_TPETRA_INST_CUDA 83 typedef Kokkos::Compat::KokkosCudaWrapperNode default_node_type;
84 template class EpetraExportT<int, default_node_type >;
85 template RCP<const Export<int, int, default_node_type> > toXpetra<int,default_node_type>(
const Epetra_Export *);
87 #ifdef HAVE_TPETRA_INST_HIP 88 typedef Kokkos::Compat::KokkosHIPWrapperNode default_node_type;
89 template class EpetraExportT<int, default_node_type >;
90 template RCP<const Export<int, int, default_node_type> > toXpetra<int,default_node_type>(
const Epetra_Export *);
95 template class EpetraExportT<int, default_node_type >;
96 template RCP<const Export<int, int, default_node_type> > toXpetra<int,default_node_type>(
const Epetra_Export *);
97 #endif // HAVE_XPETRA_TPETRA 100 #ifndef XPETRA_EPETRA_NO_64BIT_GLOBAL_INDICES 101 #ifdef HAVE_XPETRA_TPETRA 102 #include "TpetraCore_config.h" 103 #if ((defined(EPETRA_HAVE_OMP) && !defined(HAVE_TPETRA_INST_OPENMP)) || \ 104 (!defined(EPETRA_HAVE_OMP) && !defined(HAVE_TPETRA_INST_SERIAL))) 105 template class EpetraExportT<long long, Xpetra::EpetraNode >;
106 template RCP<const Export<int, long long, Xpetra::EpetraNode> > toXpetra<long long,Xpetra::EpetraNode>(
const Epetra_Export *);
109 #ifdef HAVE_TPETRA_INST_SERIAL 110 template class EpetraExportT<long long, Kokkos::Compat::KokkosSerialWrapperNode >;
111 template RCP<const Export<int,long long,Kokkos::Compat::KokkosSerialWrapperNode > > toXpetra<long long,Kokkos::Compat::KokkosSerialWrapperNode >(
const Epetra_Export *);
113 #ifdef HAVE_TPETRA_INST_PTHREAD 114 template class EpetraExportT<long long, Kokkos::Compat::KokkosThreadsWrapperNode>;
115 template RCP<const Export<int,long long,Kokkos::Compat::KokkosThreadsWrapperNode> > toXpetra<long long,Kokkos::Compat::KokkosThreadsWrapperNode >(
const Epetra_Export *);
117 #ifdef HAVE_TPETRA_INST_OPENMP 118 template class EpetraExportT<long long, Kokkos::Compat::KokkosOpenMPWrapperNode >;
119 template RCP<const Export<int, long long, Kokkos::Compat::KokkosOpenMPWrapperNode> > toXpetra<long long,Kokkos::Compat::KokkosOpenMPWrapperNode>(
const Epetra_Export *);
121 #ifdef HAVE_TPETRA_INST_CUDA 122 typedef Kokkos::Compat::KokkosCudaWrapperNode default_node_type;
123 template class EpetraExportT<long long, default_node_type >;
124 template RCP<const Export<int, long long, default_node_type> > toXpetra<long long,default_node_type>(
const Epetra_Export *);
126 #ifdef HAVE_TPETRA_INST_HIP 127 typedef Kokkos::Compat::KokkosHIPWrapperNode default_node_type;
128 template class EpetraExportT<long long, default_node_type >;
129 template RCP<const Export<int, long long, default_node_type> > toXpetra<long long,default_node_type>(
const Epetra_Export *);
134 template class EpetraExportT<long long, default_node_type >;
135 template RCP<const Export<int, long long, default_node_type> > toXpetra<long long,default_node_type>(
const Epetra_Export *);
136 #endif // HAVE_XPETRA_TPETRA
RCP< const CrsGraph< int, GlobalOrdinal, Node > > toXpetra(const Epetra_CrsGraph &g)