A library for working with phylogenetic and population genetic data.
v0.32.0
GzipOutputTarget Class Referencefinal

#include <genesis/utils/io/gzip_output_target.hpp>

Inherits BaseOutputTarget.

Detailed Description

Output target for writing byte data to a gzip/zlib-compressed target.

This output target is a wrapper that takes some other output target (FileOutputTarget, StringOutputTarget, StreamOutputTarget, etc), and compresses using the gzip format on the fly while writing to that other target.

The class can be moved, but not copied, because of the internal state that is kept for compression, and which would mess up the output if copied.

Definition at line 61 of file gzip_output_target.hpp.

Public Member Functions

 GzipOutputTarget (GzipOutputTarget &&)=default
 
 GzipOutputTarget (GzipOutputTarget const &)=delete
 
 GzipOutputTarget (std::shared_ptr< BaseOutputTarget > output_target, GzipCompressionLevel compression_level=GzipCompressionLevel::kDefaultCompression)
 Construct the output target using another output target (FileOutputTarget, StringOutputTarget, StreamOutputTarget, etc), and add gzip/zlib compression on top, using the specified GzipCompressionLevel%. More...
 
 ~GzipOutputTarget () override=default
 
GzipOutputTargetoperator= (GzipOutputTarget &&)=default
 
GzipOutputTargetoperator= (GzipOutputTarget const &)=delete
 
- Public Member Functions inherited from BaseOutputTarget
 BaseOutputTarget ()=default
 
 BaseOutputTarget (BaseOutputTarget &&)=default
 
 BaseOutputTarget (BaseOutputTarget const &)=default
 
virtual ~BaseOutputTarget ()
 
std::ostream & flush ()
 Flush output stream buffer. More...
 
template<typename T >
BaseOutputTargetoperator<< (T const &content)
 Output stream operator template that simply forwards to the underlying ostream() object. More...
 
BaseOutputTargetoperator= (BaseOutputTarget &&)=default
 
BaseOutputTargetoperator= (BaseOutputTarget const &)=default
 
std::ostream & ostream ()
 Get the underlying output stream that is used for writing. More...
 
std::string target_name () const
 Get a name of the output target. This is intended for user output. More...
 
std::string target_string () const
 Get a string representing the output target. More...
 

Constructor & Destructor Documentation

◆ GzipOutputTarget() [1/3]

GzipOutputTarget ( std::shared_ptr< BaseOutputTarget output_target,
GzipCompressionLevel  compression_level = GzipCompressionLevel::kDefaultCompression 
)
inlineexplicit

Construct the output target using another output target (FileOutputTarget, StringOutputTarget, StreamOutputTarget, etc), and add gzip/zlib compression on top, using the specified GzipCompressionLevel%.

Definition at line 74 of file gzip_output_target.hpp.

◆ GzipOutputTarget() [2/3]

GzipOutputTarget ( GzipOutputTarget const &  )
delete

◆ GzipOutputTarget() [3/3]

◆ ~GzipOutputTarget()

~GzipOutputTarget ( )
overridedefault

Member Function Documentation

◆ operator=() [1/2]

GzipOutputTarget& operator= ( GzipOutputTarget &&  )
default

◆ operator=() [2/2]

GzipOutputTarget& operator= ( GzipOutputTarget const &  )
delete

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