dune-fem 2.8-git
Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Related Functions | List of all members
Dune::Fem::SIONlibOutStream Class Reference

output stream writing into a single file with the SIONlib (http://www2.fz-juelich.de/jsc/sionlib/) More...

#include <dune/fem/io/streams/sionlibstreams.hh>

Inheritance diagram for Dune::Fem::SIONlibOutStream:
Inheritance graph

Public Types

typedef StandardOutStreamTraits Traits
 type of the traits More...
 
typedef Traits::OutStreamType OutStreamType
 type of the implementation (Barton-Nackman) More...
 
typedef ThisType OutStreamInterfaceType
 type of the interface More...
 

Public Member Functions

 SIONlibOutStream (const std::string &filename, const int rank, MPICommunicatorType mpiComm, ParameterReader parameter=Parameter::container())
 constructor More...
 
 SIONlibOutStream (const std::string &filename, ParameterReader parameter=Parameter::container())
 
 SIONlibOutStream (const std::string &filename, const int rank, ParameterReader parameter=Parameter::container())
 
 ~SIONlibOutStream ()
 destructor writing internal data buffer to the file via SIONlib More...
 
std::ostream & stream ()
 
void flush ()
 flush the stream More...
 
void writeDouble (const double value)
 write a double to the stream More...
 
void writeFloat (const float value)
 write a float to the stream More...
 
void writeInt (const int value)
 write an int to the stream More...
 
void writeChar (const char value)
 write a char to the stream More...
 
void writeBool (const bool value)
 write a char to the stream More...
 
void writeString (const std::string &s)
 write a string to the stream More...
 
void writeUnsignedInt (unsigned int value)
 write an unsigned int to the stream More...
 
void writeUnsignedInt64 (uint64_t value)
 write an uint64_t to the stream More...
 

Protected Member Functions

std::ostream & dataStream ()
 
void writeFile ()
 
bool valid () const
 
template<class T >
void writePrimitive (const T &value)
 
void writeError () const
 
const Implementation & asImp () const
 
Implementation & asImp ()
 

Static Protected Member Functions

static const Implementation & asImp (const ThisType &other)
 
static Implementation & asImp (ThisType &other)
 
static const TraitsImp::OutStreamType & asImp (const ThisType &other)
 
static TraitsImp::OutStreamType & asImp (ThisType &other)
 

Protected Attributes

std::stringstream * data_
 standard file stream More...
 
const std::string filename_
 
MPICommunicatorType mpiComm_
 
const int rank_
 
const int numFiles_
 
const int blockSize_
 
std::ostream & stream_
 

Related Functions

(Note that these are not member functions.)

OutStreamInterface< StreamTraits > & operator<< (OutStreamInterface< StreamTraits > &out, const DiscreteFunctionInterface< Impl > &df)
 write a discrete function into an output stream More...
 

Detailed Description

output stream writing into a single file with the SIONlib (http://www2.fz-juelich.de/jsc/sionlib/)

Note
This stream directly stores the binary representation of the data. The binary representation of the stored data is always that of the current machine. On read the data is converted accordingly on machines with different endianess.
Newly added:

Member Typedef Documentation

◆ OutStreamInterfaceType

typedef ThisType Dune::Fem::OutStreamInterface< StandardOutStreamTraits >::OutStreamInterfaceType
inherited

type of the interface

◆ OutStreamType

type of the implementation (Barton-Nackman)

◆ Traits

type of the traits

Constructor & Destructor Documentation

◆ SIONlibOutStream() [1/3]

Dune::Fem::SIONlibOutStream::SIONlibOutStream ( const std::string &  filename,
const int  rank,
MPICommunicatorType  mpiComm,
ParameterReader  parameter = Parameter::container() 
)
inline

constructor

Parameters
[in]filenamename of a global file to write to
[in]rankprocess rank (defaults to MPIManager::rank())
[in]mpiCommMPI communicator (defaults to MPIHelper :: getCommunicator() )
Note
The filename must be the same on all ranks.

◆ SIONlibOutStream() [2/3]

Dune::Fem::SIONlibOutStream::SIONlibOutStream ( const std::string &  filename,
ParameterReader  parameter = Parameter::container() 
)
inline

◆ SIONlibOutStream() [3/3]

Dune::Fem::SIONlibOutStream::SIONlibOutStream ( const std::string &  filename,
const int  rank,
ParameterReader  parameter = Parameter::container() 
)
inline

◆ ~SIONlibOutStream()

Dune::Fem::SIONlibOutStream::~SIONlibOutStream ( )
inline

destructor writing internal data buffer to the file via SIONlib

Member Function Documentation

◆ asImp() [1/6]

Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( )
inlineprotectedinherited

◆ asImp() [2/6]

const Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( ) const
inlineprotectedinherited

◆ asImp() [3/6]

static const Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( const ThisType other)
inlinestaticprotectedinherited

◆ asImp() [4/6]

static const TraitsImp::OutStreamType & Dune::Fem::BartonNackmanInterface< OutStreamInterface< StandardOutStreamTraits > , TraitsImp::OutStreamType >::asImp ( const ThisType other)
inlinestaticprotectedinherited

◆ asImp() [5/6]

static Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( ThisType other)
inlinestaticprotectedinherited

◆ asImp() [6/6]

static TraitsImp::OutStreamType & Dune::Fem::BartonNackmanInterface< OutStreamInterface< StandardOutStreamTraits > , TraitsImp::OutStreamType >::asImp ( ThisType other)
inlinestaticprotectedinherited

◆ dataStream()

std::ostream & Dune::Fem::SIONlibOutStream::dataStream ( )
inlineprotected

◆ flush()

void Dune::Fem::StandardOutStream::flush ( )
inlineinherited

flush the stream

By calling the flush method, the user can ensure that the stream is actually transferred (e.g., written to disk)

◆ stream()

std::ostream & Dune::Fem::StandardOutStream::stream ( )
inlineinherited

return reference to internal ostream

◆ valid()

bool Dune::Fem::StandardOutStream::valid ( ) const
inlineprotectedinherited

◆ writeBool()

void Dune::Fem::StandardOutStream::writeBool ( const bool  value)
inlineinherited

write a char to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeChar()

void Dune::Fem::StandardOutStream::writeChar ( const char  value)
inlineinherited

write a char to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeDouble()

void Dune::Fem::StandardOutStream::writeDouble ( const double  value)
inlineinherited

write a double to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeError()

void Dune::Fem::OutStreamInterface< StandardOutStreamTraits >::writeError ( ) const
inlineprotectedinherited

◆ writeFile()

void Dune::Fem::SIONlibOutStream::writeFile ( )
inlineprotected

◆ writeFloat()

void Dune::Fem::StandardOutStream::writeFloat ( const float  value)
inlineinherited

write a float to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeInt()

void Dune::Fem::StandardOutStream::writeInt ( const int  value)
inlineinherited

write an int to the stream

Parameters
[in]valuevalue to write to the stream

◆ writePrimitive()

template<class T >
void Dune::Fem::StandardOutStream::writePrimitive ( const T &  value)
inlineprotectedinherited

◆ writeString()

void Dune::Fem::StandardOutStream::writeString ( const std::string &  s)
inlineinherited

write a string to the stream

Parameters
[in]sstring to write to the stream

◆ writeUnsignedInt()

void Dune::Fem::StandardOutStream::writeUnsignedInt ( unsigned int  value)
inlineinherited

write an unsigned int to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeUnsignedInt64()

void Dune::Fem::StandardOutStream::writeUnsignedInt64 ( uint64_t  value)
inlineinherited

write an uint64_t to the stream

Parameters
[in]valuevalue to write to the stream

Friends And Related Function Documentation

◆ operator<<()

OutStreamInterface< StreamTraits > & operator<< ( OutStreamInterface< StreamTraits > &  out,
const DiscreteFunctionInterface< Impl > &  df 
)
related

write a discrete function into an output stream

Parameters
[in]outstream to write to
[in]dfdiscrete function to write
Returns
the output stream (for concatenation)

Member Data Documentation

◆ blockSize_

const int Dune::Fem::SIONlibOutStream::blockSize_
protected

◆ data_

std::stringstream* Dune::Fem::SIONlibOutStream::data_
protected

standard file stream

◆ filename_

const std::string Dune::Fem::SIONlibOutStream::filename_
protected

◆ mpiComm_

MPICommunicatorType Dune::Fem::SIONlibOutStream::mpiComm_
protected

◆ numFiles_

const int Dune::Fem::SIONlibOutStream::numFiles_
protected

◆ rank_

const int Dune::Fem::SIONlibOutStream::rank_
protected

◆ stream_

std::ostream& Dune::Fem::StandardOutStream::stream_
protectedinherited

The documentation for this class was generated from the following file: