5 #ifndef BPP_IO_OUTPUTSTREAM_H 6 #define BPP_IO_OUTPUTSTREAM_H 9 #include "../Clonable.h" 123 mutable std::unique_ptr<std::ostream>
stream_;
130 stream_ = std::move(stlos.
stream_);
285 std::string
str()
const {
return dynamic_cast<const std::ostringstream*
>(stream_)->
str();}
290 #endif // BPP_IO_OUTPUTSTREAM_H OutputStream & operator<<(const bool &message)
virtual bool isScientificNotationEnabled() const
StlOutputStream * clone() const
Create a copy of this object and send a pointer to it.
StlOutputStream & flush()
NullOutputStream & operator<<(const char *message)
OutputStream * clone() const =0
Create a copy of this object and send a pointer to it.
virtual OutputStream & enableScientificNotation(bool yn)
StlOutputStreamWrapper & operator<<(const std::string &message)
virtual OutputStream & operator<<(const std::string &message)=0
virtual int getPrecision() const =0
Helper implementation of the OutputStream interface.
OutputStream & operator<<(const unsigned int &message)
virtual OutputStream & flush()=0
StlOutputStream(std::unique_ptr< std::ostream > stream)
NullOutputStream & operator<<(const unsigned int &message)
NullOutputStream * clone() const
Create a copy of this object and send a pointer to it.
StlOutputStream & operator<<(const unsigned int &message)
StlOutputStream & operator<<(const char &message)
OutputStream & operator<<(const std::string &message)
OutputStream & operator<<(const long int &message)
std::unique_ptr< std::ostream > stream_
OutputStream & operator<<(const unsigned long int &message)
NullOutputStream & endLine()
NullOutputStream & operator<<(const unsigned long int &message)
OutputStream & operator<<(const char *message)
virtual OutputStream & enableScientificNotation(bool yn)=0
StlOutputStreamWrapper & operator<<(const int &message)
StlOutputStream & operator<<(const double &message)
StlOutputStream & operator<<(const int &message)
OutputStream & operator<<(const unsigned long int &message)
OutputStream & operator<<(const bool &message)
StlOutputStreamWrapper(std::ostream *stream)
NullOutputStream & operator<<(const int &message)
virtual OutputStream & setPrecision(int digit)=0
OutputStream & operator<<(const long double &message)
virtual bool isScientificNotationEnabled() const =0
OutputStream & operator<<(const char &message)
StlOutputStreamWrapper & operator<<(const bool &message)
StlOutputStreamWrapper & operator=(const StlOutputStreamWrapper &stlos)
StlOutputStream & operator=(const StlOutputStream &stlos)
StlOutputStream & operator<<(const bool &message)
StlOutputStreamWrapper & operator<<(const unsigned long int &message)
OutputStream & setPrecision(int digit)
NullOutputStream & operator<<(const std::string &message)
StlOutputStreamWrapper & operator<<(const char *message)
NullOutputStream & operator<<(const long double &message)
StlOutputStreamWrapper & operator<<(const long int &message)
OutputStream & operator<<(const double &message)
StdErr * clone() const
Create a copy of this object and send a pointer to it.
StlOutputStream & operator<<(const unsigned long int &message)
OutputStream & operator<<(const std::string &message)
virtual OutputStream & endLine()=0
StlOutputStreamWrapper & operator<<(const char &message)
StlOutputStreamWrapper & flush()
OutputStream & operator<<(const int &message)
STL wrapper for output stream.
The Clonable interface (allow an object to be cloned).
StlOutputStream & endLine()
OutputStream & operator<<(const long double &message)
StlOutputStream & operator<<(const long double &message)
Null output stream (swich off output).
NullOutputStream & operator<<(const double &message)
NullOutputStream & flush()
StlOutputStreamWrapper & operator<<(const long double &message)
StlOutputStreamWrapper * clone() const
Create a copy of this object and send a pointer to it.
OutputStream & operator<<(const long int &message)
OutputStream & operator<<(const unsigned int &message)
StlOutputStream & operator<<(const char *message)
StlOutputStreamWrapper & operator<<(const unsigned int &message)
NullOutputStream & operator<<(const char &message)
OutputStream & operator<<(const char *message)
StlOutputStream & operator<<(const long int &message)
StlOutputStreamWrapper & endLine()
NullOutputStream & operator<<(const long int &message)
NullOutputStream & operator<<(const bool &message)
StlOutputStream(const StlOutputStream &stlos)
OutputStream & operator<<(const int &message)
OutputStream & operator<<(const double &message)
StlOutputStream & operator<<(const std::string &message)
OutputStream & operator<<(const char &message)
StlOutputStreamWrapper & operator<<(const double &message)
StdOut * clone() const
Create a copy of this object and send a pointer to it.
StlOutputStreamWrapper(const StlOutputStreamWrapper &stlos)