Multiscale Universal Interface  2.0
A Concurrent Framework for Coupling Heterogeneous Solvers
stream.h File Reference

Defines base stream class container_stream and associated functors. More...

#include <memory>
#include <algorithm>
#include "../general/endian_traits.h"
Include dependency graph for stream.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  mui::istream
 
class  mui::ostream
 
class  mui::iostream
 
class  mui::container_stream< Seq, Alloc >
 
class  mui::iitr_stream< ConstInputIterator >
 
class  mui::oitr_stream< OutputIterator >
 
class  mui::ocount_stream
 

Namespaces

 mui
 

Functions

template<typename ConstInputIterator >
iitr_stream< ConstInputIterator > mui::make_istream (ConstInputIterator begin)
 
template<typename OutputIterator >
oitr_stream< OutputIterator > mui::make_ostream (OutputIterator cur)
 
std::size_t mui::streamed_size ()
 
template<typename T , typename... Args>
std::size_t mui::streamed_size (const T &a, const Args &... args)
 
template<typename T , typename std::enable_if< endian_traits< T >::convert==false >::type * = nullptr>
istream & mui::operator>> (istream &stream, T &dest)
 
template<typename T , typename std::enable_if< endian_traits< T >::convert==false >::type * = nullptr>
ostream & mui::operator<< (ostream &stream, const T &src)
 
template<typename F , typename S >
istream & mui::operator>> (istream &stream, std::pair< F, S > &pair)
 
template<typename F , typename S >
ostream & mui::operator<< (ostream &stream, const std::pair< F, S > &pair)
 
template<typename T >
istream & mui::operator>> (istream &stream, std::complex< T > &cx)
 
template<typename T >
ostream & mui::operator<< (ostream &stream, const std::complex< T > &cx)
 

Detailed Description

Defines base stream class container_stream and associated functors.

Author
S. Kudo
Date
18 March 2014

container_stream is akin to std::stringstream. Its functionality is to serialize & deserialize data to container<char>.