Loading...
Searching...
No Matches
Opm::Mpi::detail::Packing< true, T > Struct Template Reference

Packaging for pod data. More...

`#include <MPIPacker.hpp>`

## Static Public Member Functions

static std::size_t | packSize (const T &data, Parallel::MPIComm comm)
| Calculates the pack size for a POD.
static std::size_t | packSize (const T *, std::size_t n, Parallel::MPIComm comm)
| Calculates the pack size for an array of POD.
static void | pack (const T &data, std::vector< char > &buffer, std::size_t &position, Parallel::MPIComm comm)
| Pack a POD.
static void | pack (const T *data, std::size_t n, std::vector< char > &buffer, std::size_t &position, Parallel::MPIComm comm)
| Pack an array of POD.
static void | unpack (T &data, const std::vector< char > &buffer, std::size_t &position, Parallel::MPIComm comm)
| Unpack a POD.
static void | unpack (T *data, std::size_t n, const std::vector< char > &buffer, std::size_t &position, Parallel::MPIComm comm)
| Unpack an array of POD.

## Detailed Description

template<class T>
struct Opm::Mpi::detail::Packing< true, T >

Packaging for pod data.

## Member Function Documentation

## pack() [1/2]

template<class T>

void Opm::Mpi::detail::Packing< true, T >::pack | ( | const T & | data,
|  | std::vector< char > & | buffer,
|  | std::size_t & | position,
|  | Parallel::MPIComm | comm )

inline static

Pack a POD.

Parameters

  data | The variable to pack
  buffer | Buffer to pack into
  position | Position in buffer to use
  comm | The communicator to use

## pack() [2/2]

template<class T>

void Opm::Mpi::detail::Packing< true, T >::pack | ( | const T * | data,
|  | std::size_t | n,
|  | std::vector< char > & | buffer,
|  | std::size_t & | position,
|  | Parallel::MPIComm | comm )

inline static

Pack an array of POD.

Parameters

  data | The array to pack
  n | Length of array
  buffer | Buffer to pack into
  position | Position in buffer to use
  comm | The communicator to use

## packSize() [1/2]

template<class T>

std::size_t Opm::Mpi::detail::Packing< true, T >::packSize | ( | const T & | data,
|  | Parallel::MPIComm | comm )

inline static

Calculates the pack size for a POD.

Parameters

  data | The data to pack
  comm | The communicator to use

## packSize() [2/2]

template<class T>

std::size_t Opm::Mpi::detail::Packing< true, T >::packSize | ( | const T * | ,
|  | std::size_t | n,
|  | Parallel::MPIComm | comm )

inline static

Calculates the pack size for an array of POD.

Parameters

  data | The array to pack
  n | Length of array
  comm | The communicator to use

## unpack() [1/2]

template<class T>

void Opm::Mpi::detail::Packing< true, T >::unpack | ( | T & | data,
|  | const std::vector< char > & | buffer,
|  | std::size_t & | position,
|  | Parallel::MPIComm | comm )

inline static

Unpack a POD.

Parameters

  data | The variable to unpack
  buffer | Buffer to unpack from
  position | Position in buffer to use
  comm | The communicator to use

## unpack() [2/2]

template<class T>

void Opm::Mpi::detail::Packing< true, T >::unpack | ( | T * | data,
|  | std::size_t | n,
|  | const std::vector< char > & | buffer,
|  | std::size_t & | position,
|  | Parallel::MPIComm | comm )

inline static

Unpack an array of POD.

Parameters

  data | The array to unpack
  n | Length of array
  buffer | Buffer to unpack from
  position | Position in buffer to use
  comm | The communicator to use

The documentation for this struct was generated from the following files:

- opm/simulators/utils/MPIPacker.hpp
- opm/simulators/utils/MPIPacker.cpp