waLBerla 7.3
Loading...
Searching...
No Matches
BufferDataTypeExtensions.h File Reference

Detailed Description

Streaming Operators, to store/extract compound data types into Buffers.

Author
Martin Bauer marti.nosp@m.n.ba.nosp@m.uer@f.nosp@m.au.d.nosp@m.e
Christian Godenschwager chris.nosp@m.tian.nosp@m..gode.nosp@m.nsch.nosp@m.wager.nosp@m.@fau.nosp@m..de
#include "RecvBuffer.h"
#include "SendBuffer.h"
#include "core/Conversion.h"
#include "core/DataTypes.h"
#include "core/math/Uint.h"
#include "core/RandomUUID.h"
#include <array>
#include <deque>
#include <limits>
#include <list>
#include <map>
#include <optional>
#include <set>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>

Classes

struct  walberla::mpi::BufferSizeTrait< std::pair< T1, T2 > >
struct  walberla::mpi::BufferSizeTrait< std::array< T, N > >
struct  walberla::mpi::BufferSizeTrait< std::vector< T, A > >
struct  walberla::mpi::BufferSizeTrait< std::basic_string< T > >
struct  walberla::mpi::BufferSizeTrait< std::deque< T, A > >
struct  walberla::mpi::BufferSizeTrait< std::list< T, A > >
struct  walberla::mpi::BufferSizeTrait< std::set< T, C, A > >
struct  walberla::mpi::BufferSizeTrait< std::unordered_set< T, C, A > >
struct  walberla::mpi::BufferSizeTrait< std::multiset< T, C, A > >
struct  walberla::mpi::BufferSizeTrait< std::map< K, T, C, A > >
struct  walberla::mpi::BufferSizeTrait< std::unordered_map< K, T, C, A > >
struct  walberla::mpi::BufferSizeTrait< std::multimap< K, T, C, A > >
struct  walberla::mpi::BufferSizeTrait< RandomUUID >

Namespaces

namespace  walberla
 Storage for detected contacts which can be used to perform actions for all contacts, e.g.
namespace  walberla::mpi

Functions

template<typename T, typename G, typename T1, typename T2>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::pair< T1, T2 > &pair)
template<typename T, typename T1, typename T2>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::pair< T1, T2 > &pair)
template<typename T, typename G, typename Cont>
void walberla::mpi::sendNonResizableContainer (GenericSendBuffer< T, G > &buf, const Cont &container)
template<typename T, typename Cont>
void walberla::mpi::recvNonResizableContainer (GenericRecvBuffer< T > &buf, Cont &container)
template<typename T, typename G, typename CT, std::size_t N>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::array< CT, N > &array)
template<typename T, typename CT, std::size_t N>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::array< CT, N > &array)
template<typename T, typename G, typename Cont>
void walberla::mpi::sendContainer (GenericSendBuffer< T, G > &buf, const Cont &container)
template<typename T, typename Cont>
void walberla::mpi::recvContainer (GenericRecvBuffer< T > &buf, Cont &container)
template<typename T, typename G, typename CT, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::vector< CT, CA > &c)
template<typename T, typename CT, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::vector< CT, CA > &c)
template<typename T, typename G, typename CT>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::basic_string< CT > &c)
template<typename T, typename CT>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::basic_string< CT > &c)
template<typename T, typename G, typename CT, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::deque< CT, CA > &c)
template<typename T, typename CT, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::deque< CT, CA > &c)
template<typename T, typename G, typename CT, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::list< CT, CA > &c)
template<typename T, typename CT, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::list< CT, CA > &c)
template<typename T, typename G>
GenericSendBuffer< T, G > & walberla::mpi::packBoolVectorWithoutSize (GenericSendBuffer< T, G > &buf, const std::vector< bool > &bools)
template<typename T>
GenericRecvBuffer< T > & walberla::mpi::unpackBoolVectorWithoutSize (GenericRecvBuffer< T > &buf, std::vector< bool > &bools, size_t size)
template<typename T, typename G>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::vector< bool > &bools)
template<typename T>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::vector< bool > &bools)
template<typename T, typename G, typename Cont>
void walberla::mpi::sendAssocContainer (GenericSendBuffer< T, G > &buf, const Cont &container)
template<typename T, typename Cont>
void walberla::mpi::recvAssocContainer (GenericRecvBuffer< T > &buf, Cont &container)
template<typename T, typename Cont>
void walberla::mpi::recvMap (GenericRecvBuffer< T > &buf, Cont &container)
template<typename T, typename G, typename CK, typename CC, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::set< CK, CC, CA > &c)
template<typename T, typename CK, typename CC, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::set< CK, CC, CA > &c)
template<typename T, typename G, typename CK, typename CC, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::unordered_set< CK, CC, CA > &c)
template<typename T, typename CK, typename CC, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::unordered_set< CK, CC, CA > &c)
template<typename T, typename G, typename CK, typename CC, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::multiset< CK, CC, CA > &c)
template<typename T, typename CK, typename CC, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::multiset< CK, CC, CA > &c)
template<typename T, typename G, typename CK, typename CT, typename CC, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::map< CK, CT, CC, CA > &c)
template<typename T, typename CK, typename CT, typename CC, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::map< CK, CT, CC, CA > &c)
template<typename T, typename G, typename CK, typename CT, typename CC, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::unordered_map< CK, CT, CC, CA > &c)
template<typename T, typename CK, typename CT, typename CC, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::unordered_map< CK, CT, CC, CA > &c)
template<typename T, typename G, typename CK, typename CT, typename CC, typename CA>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::multimap< CK, CT, CC, CA > &c)
template<typename T, typename CK, typename CT, typename CC, typename CA>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::multimap< CK, CT, CC, CA > &c)
template<typename T, typename G, typename OT>
GenericSendBuffer< T, G > & walberla::mpi::operator<< (GenericSendBuffer< T, G > &buf, const std::optional< OT > &o)
template<typename T, typename OT>
GenericRecvBuffer< T > & walberla::mpi::operator>> (GenericRecvBuffer< T > &buf, std::optional< OT > &o)
SendBufferwalberla::mpi::operator<< (SendBuffer &buf, const RandomUUID &uuid)
RecvBufferwalberla::mpi::operator>> (RecvBuffer &buf, RandomUUID &uuid)