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 <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

 walberla
 \file TimestepTracker.h \ingroup lbm \author Frederik Hennig frede.nosp@m.rik..nosp@m.henni.nosp@m.g@fa.nosp@m.u.de
 
 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)
 
SendBuffer & walberla::mpi::operator<< (SendBuffer &buf, const RandomUUID &uuid)
 
RecvBuffer & walberla::mpi::operator>> (RecvBuffer &buf, RandomUUID &uuid)