MADNESS
0.10.1
|
Archive allowing deserialization and point-to-point communication between processes with MPI. More...
#include <mpi_archive.h>
Public Member Functions | |
MPIRawInputArchive (World &world, const ProcessID &src, int tag=SafeMPI::MPIAR_TAG) | |
Construct an archive for receiving data via MPI. More... | |
template<class T > | |
std::enable_if< is_trivially_serializable< T >::value, void >::type | load (T *t, long n) const |
Receive data from the source process and deserialize it. More... | |
Public Member Functions inherited from madness::archive::BaseArchive | |
BaseArchive () | |
Private Attributes | |
ProcessID | src |
The source process. More... | |
int | tag |
MPI communication tag. More... | |
World * | world |
The world. More... | |
Additional Inherited Members | |
Public Types inherited from madness::archive::BaseInputArchive | |
using | is_loading = std::true_type |
Type used by Boost.Serialization to determine if this object is an input archive. More... | |
Public Types inherited from madness::archive::BaseArchive | |
using | is_loading = std::false_type |
Type used by Boost.Serialization to determine if this object is an input archive. More... | |
using | is_saving = std::false_type |
Type used by Boost.Serialization to determine if this object is an output archive. More... | |
Static Public Attributes inherited from madness::archive::BaseInputArchive | |
static constexpr bool | is_input_archive = true |
Flag to determine if this object is an input archive. More... | |
Static Public Attributes inherited from madness::archive::BaseArchive | |
static constexpr bool | is_archive = true |
Flag to determine if this object is an archive. More... | |
static constexpr bool | is_input_archive = false |
Flag to determine if this object is an input archive. More... | |
static constexpr bool | is_output_archive = false |
Flag to determine if this object is an output archive. More... | |
static constexpr bool | is_parallel_archive = false |
Flag to determine if this object is a parallel archive. More... | |
Archive allowing deserialization and point-to-point communication between processes with MPI.
|
inline |
Construct an archive for receiving data via MPI.
[in] | world | The world. |
[in] | src | The source process. |
[in] | tag | MPI communication tag. |
|
inline |
Receive data from the source process and deserialize it.
The function only appears (due to enable_if
) if T
is fundamental.
T | The data type to receive. |
[out] | t | Pointer to where the data should be stored. |
[in] | n | The number of data items to receive. |
References madness::World::mpi, madness::WorldMpiInterface::Recv(), src, tag, and world.
|
private |
The source process.
Referenced by load().
|
private |
MPI communication tag.
Referenced by load().