|
A library for working with phylogenetic and population genetic data.
v0.32.0
|
|
Go to the documentation of this file. 1 #ifndef GENESIS_UTILS_IO_BASE_OUTPUT_TARGET_H_
2 #define GENESIS_UTILS_IO_BASE_OUTPUT_TARGET_H_
97 out_stream_() << content;
107 return out_stream_();
119 return out_stream_().flush();
131 return target_name_();
143 return target_string_();
153 virtual std::ostream& out_stream_() = 0;
154 virtual std::string target_name_()
const = 0;
155 virtual std::string target_string_()
const = 0;
162 #endif // include guard
virtual ~BaseOutputTarget()
std::string target_name() const
Get a name of the output target. This is intended for user output.
BaseOutputTarget()=default
Provides functions for accessing the file system.
Abstract base class for writing data to an output target.
BaseOutputTarget & operator<<(T const &content)
Output stream operator template that simply forwards to the underlying ostream() object.
std::ostream & ostream()
Get the underlying output stream that is used for writing.
Container namespace for all symbols of genesis in order to keep them separate when used as a library.
std::string target_string() const
Get a string representing the output target.
BaseOutputTarget & operator=(BaseOutputTarget const &)=default
std::ostream & flush()
Flush output stream buffer.