5#ifndef GKO_PUBLIC_CORE_DISTRIBUTED_BASE_HPP_
6#define GKO_PUBLIC_CORE_DISTRIBUTED_BASE_HPP_
9#include <ginkgo/config.hpp>
15#include <ginkgo/core/base/mpi.hpp>
19namespace experimental {
32class DistributedBase {
34 virtual ~DistributedBase() =
default;
36 DistributedBase(
const DistributedBase& other) =
default;
38 DistributedBase(DistributedBase&& other) =
default;
44 DistributedBase&
operator=(
const DistributedBase&) {
return *
this; }
50 DistributedBase&
operator=(DistributedBase&&) noexcept {
return *
this; }
A base class for distributed objects.
Definition base.hpp:32
DistributedBase & operator=(const DistributedBase &)
Copy assignment that doesn't change the used mpi::communicator.
Definition base.hpp:44
DistributedBase & operator=(DistributedBase &&) noexcept
Move assignment that doesn't change the used mpi::communicator.
Definition base.hpp:50
mpi::communicator get_communicator() const
Access the used mpi::communicator.
Definition base.hpp:56
A thin wrapper of MPI_Comm that supports most MPI calls.
Definition mpi.hpp:408
The distributed namespace.
Definition precision_dispatch.hpp:309
The Ginkgo namespace.
Definition abstract_factory.hpp:20