...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::mpi::packed_oarchive — An archive that packs binary data into an MPI buffer.
// In header: <boost/mpi/packed_oarchive.hpp> class packed_oarchive : public oprimitive, public shared_ptr_helper { public: // construct/copy/destruct packed_oarchive(MPI_Comm const &, buffer_type &, unsigned int = boost::archive::no_header); packed_oarchive(MPI_Comm const &, unsigned int = boost::archive::no_header); // public member functions template<typename T> void save_override(T const &, int, mpl::false_); template<typename T> void save_override(T const &, int, mpl::true_); template<typename T> void save_override(T const &, int); void save_override(const archive::class_id_optional_type &, int); void save_override(const archive::class_name_type &, int); void save_override(archive::class_id_type &, int); };
The packed_iarchive
class is an Archiver (as in the Boost.Serialization library) that packs binary data into a buffer for transmission via MPI. It can operate on any Serializable data type and will use the MPI_Pack
function of the underlying MPI implementation to perform serialization.
packed_oarchive
public
construct/copy/destructpacked_oarchive(MPI_Comm const & comm, buffer_type & b, unsigned int flags = boost::archive::no_header);
Construct a
for transmission over the given MPI communicator and with an initial buffer.packed_oarchive
Parameters: |
|
packed_oarchive(MPI_Comm const & comm, unsigned int flags = boost::archive::no_header);
Construct a
for transmission over the given MPI communicator.packed_oarchive
Parameters: |
|
packed_oarchive
public member functionstemplate<typename T> void save_override(T const & x, int version, mpl::false_);
template<typename T> void save_override(T const & x, int, mpl::true_);
template<typename T> void save_override(T const & x, int version);
void save_override(const archive::class_id_optional_type &, int);
void save_override(const archive::class_name_type & t, int);
void save_override(archive::class_id_type & t, int version);