dune-fem 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Related Functions | List of all members
Dune::Fem::OutStreamInterface< TraitsImp > Class Template Reference

abstract interface for an output stream More...

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

Inheritance diagram for Dune::Fem::OutStreamInterface< TraitsImp >:
Inheritance graph

Public Types

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

Public Member Functions

void flush ()
 flush the stream
 
void writeDouble (const double value)
 write a double to the stream
 
void writeFloat (const float value)
 write a float to the stream
 
void writeInt (const int value)
 write an int to the stream
 
void writeChar (const char value)
 write a char to the stream
 
void writeBool (const bool value)
 write a bool to the stream
 
void writeString (const std::string &s)
 write a string to the stream
 
void writeUnsignedInt (unsigned int value)
 write an unsigned int to the stream
 
void writeUnsignedInt64 (uint64_t value)
 write an uint64_t to the stream
 

Protected Member Functions

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)
 

Related Functions

(Note that these are not member functions.)

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

Detailed Description

template<class TraitsImp>
class Dune::Fem::OutStreamInterface< TraitsImp >

abstract interface for an output stream

An output stream provides methods to write the basic C++ types into the stream. Based on this information, more complicated types can be written to the stream by using these basic output operations.

Normally, the output methods of the stream are not used directly, but the operator << ist used to write information into the stream. This operator should also be overloaded for all types that should be writeable.

Unlike STL streams, dune-fem output streams throw a StreamError exception when a writing operation fails. Since the program is automatically aborted, if the exception is not caught, careless programming will not result in corrupted data files.

An interface class:

Member Typedef Documentation

◆ OutStreamInterfaceType

template<class TraitsImp >
typedef ThisType Dune::Fem::OutStreamInterface< TraitsImp >::OutStreamInterfaceType

type of the interface

◆ OutStreamType

template<class TraitsImp >
typedef Traits::OutStreamType Dune::Fem::OutStreamInterface< TraitsImp >::OutStreamType

type of the implementation (Barton-Nackman)

◆ Traits

template<class TraitsImp >
typedef TraitsImp Dune::Fem::OutStreamInterface< TraitsImp >::Traits

type of the traits

Member Function Documentation

◆ asImp() [1/6]

template<class TraitsImp >
Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( )
inlineprotected

◆ asImp() [2/6]

template<class TraitsImp >
const Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( ) const
inlineprotected

◆ asImp() [3/6]

template<class TraitsImp >
static const Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( const ThisType other)
inlinestaticprotected

◆ asImp() [4/6]

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

◆ asImp() [5/6]

template<class TraitsImp >
static Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( ThisType other)
inlinestaticprotected

◆ asImp() [6/6]

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

◆ flush()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::flush ( )
inline

flush the stream

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

◆ writeBool()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeBool ( const bool  value)
inline

write a bool to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeChar()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeChar ( const char  value)
inline

write a char to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeDouble()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeDouble ( const double  value)
inline

write a double to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeError()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeError ( ) const
inlineprotected

◆ writeFloat()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeFloat ( const float  value)
inline

write a float to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeInt()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeInt ( const int  value)
inline

write an int to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeString()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeString ( const std::string &  s)
inline

write a string to the stream

Parameters
[in]sstring to write to the stream

◆ writeUnsignedInt()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeUnsignedInt ( unsigned int  value)
inline

write an unsigned int to the stream

Parameters
[in]valuevalue to write to the stream

◆ writeUnsignedInt64()

template<class TraitsImp >
void Dune::Fem::OutStreamInterface< TraitsImp >::writeUnsignedInt64 ( uint64_t  value)
inline

write an uint64_t to the stream

Parameters
[in]valuevalue to write to the stream

Friends And Related Function Documentation

◆ operator<<()

template<class StreamTraits , class Impl >
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)

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