15#ifndef dealii_trilinos_utilities_h
16#define dealii_trilinos_utilities_h
22#ifdef DEAL_II_WITH_TRILINOS
25# include <Epetra_Comm.h>
26# include <Epetra_Map.h>
27# include <Teuchos_Comm.hpp>
28# include <Teuchos_RCP.hpp>
30# ifdef DEAL_II_WITH_MPI
31# include <Epetra_MpiComm.h>
33# include <Epetra_SerialComm.h>
36# ifdef DEAL_II_TRILINOS_WITH_TPETRA
37# include <Teuchos_RCPDecl.hpp>
54#ifdef DEAL_II_WITH_TRILINOS
94 const Teuchos::RCP<const Teuchos::Comm<int>> &
193#ifdef DEAL_II_TRILINOS_WITH_TPETRA
204 const Teuchos::RCP<
const Teuchos::Comm<int>> &teuchos_comm);
219# if defined(DOXYGEN) || !DEAL_II_TRILINOS_VERSION_GTE(14, 0, 0)
220 template <
class T,
class... Args>
224 using Teuchos::make_rcp;
233# if !DEAL_II_TRILINOS_VERSION_GTE(14, 0, 0)
234 template <
class T,
class... Args>
235 inline Teuchos::RCP<T>
238 return Teuchos::RCP<T>(
new T(std::forward<Args>(args)...));
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_DISABLE_EXTRA_DIAGNOSTICS
#define DEAL_II_NAMESPACE_CLOSE
#define DEAL_II_ENABLE_EXTRA_DIAGNOSTICS
Teuchos::RCP< T > make_rcp(Args &&...args)
void destroy_communicator(Epetra_Comm &communicator)
Epetra_Map duplicate_map(const Epetra_BlockMap &map, const Epetra_Comm &comm)
unsigned int get_this_mpi_process(const Epetra_Comm &mpi_communicator)
unsigned int get_n_mpi_processes(const Epetra_Comm &mpi_communicator)
const Epetra_Comm & comm_self()
MPI_Comm teuchos_comm_to_mpi_comm(const Teuchos::RCP< const Teuchos::Comm< int > > &teuchos_comm)
const Teuchos::RCP< const Teuchos::Comm< int > > & tpetra_comm_self()
Epetra_Comm * duplicate_communicator(const Epetra_Comm &communicator)
const Epetra_Comm & comm_world()
*braid_SplitCommworld & comm