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 *);
90 template class EpetraExportT<int, default_node_type >;
91 template RCP<const Export<int, int, default_node_type> > toXpetra<int,default_node_type>(
const Epetra_Export *);
92 #endif // HAVE_XPETRA_TPETRA
95 #ifndef XPETRA_EPETRA_NO_64BIT_GLOBAL_INDICES
96 #ifdef HAVE_XPETRA_TPETRA
97 #include "TpetraCore_config.h"
98 #if ((defined(EPETRA_HAVE_OMP) && !defined(HAVE_TPETRA_INST_OPENMP)) || \
99 (!defined(EPETRA_HAVE_OMP) && !defined(HAVE_TPETRA_INST_SERIAL)))
100 template class EpetraExportT<long long, Xpetra::EpetraNode >;
101 template RCP<const Export<int, long long, Xpetra::EpetraNode> > toXpetra<long long,Xpetra::EpetraNode>(
const Epetra_Export *);
104 #ifdef HAVE_TPETRA_INST_SERIAL
105 template class EpetraExportT<long long, Kokkos::Compat::KokkosSerialWrapperNode >;
106 template RCP<const Export<int,long long,Kokkos::Compat::KokkosSerialWrapperNode > > toXpetra<long long,Kokkos::Compat::KokkosSerialWrapperNode >(
const Epetra_Export *);
108 #ifdef HAVE_TPETRA_INST_PTHREAD
109 template class EpetraExportT<long long, Kokkos::Compat::KokkosThreadsWrapperNode>;
110 template RCP<const Export<int,long long,Kokkos::Compat::KokkosThreadsWrapperNode> > toXpetra<long long,Kokkos::Compat::KokkosThreadsWrapperNode >(
const Epetra_Export *);
112 #ifdef HAVE_TPETRA_INST_OPENMP
113 template class EpetraExportT<long long, Kokkos::Compat::KokkosOpenMPWrapperNode >;
114 template RCP<const Export<int, long long, Kokkos::Compat::KokkosOpenMPWrapperNode> > toXpetra<long long,Kokkos::Compat::KokkosOpenMPWrapperNode>(
const Epetra_Export *);
116 #ifdef HAVE_TPETRA_INST_CUDA
117 typedef Kokkos::Compat::KokkosCudaWrapperNode default_node_type;
118 template class EpetraExportT<long long, default_node_type >;
119 template RCP<const Export<int, long long, default_node_type> > toXpetra<long long,default_node_type>(
const Epetra_Export *);
124 template class EpetraExportT<long long, default_node_type >;
125 template RCP<const Export<int, long long, default_node_type> > toXpetra<long long,default_node_type>(
const Epetra_Export *);
126 #endif // HAVE_XPETRA_TPETRA
RCP< const CrsGraph< int, GlobalOrdinal, Node > > toXpetra(const Epetra_CrsGraph &g)