6#ifndef HEPMC3_WRITERGZ_H 
    7#define HEPMC3_WRITERGZ_H 
   22#include "HepMC3/CompressedIO.h" 
   25template <
class T, Compression C = Compression::z> 
class WriterGZ : 
public Writer  {
 
   30    WriterGZ(
const std::string& filename, std::shared_ptr<GenRunInfo> run = std::shared_ptr<GenRunInfo>()) {
 
   31        m_zstr = std::shared_ptr< std::ostream >(
new ofstream(filename.c_str(), C));
 
 
   36    WriterGZ(std::ostream& stream, std::shared_ptr<GenRunInfo> run = std::shared_ptr<GenRunInfo>()) {
 
   37        m_zstr = std::shared_ptr< std::ostream >(
new ostream(stream, C));
 
 
   56        if(dynamic_pointer_cast<ofstream>(
m_zstr)) dynamic_pointer_cast<ofstream>(
m_zstr)->close();
 
 
   60    std::shared_ptr< std::ostream > 
m_zstr;  
 
 
Definition of class GenEvent.
Definition of class GenRunInfo.
Definition of interface Writer.
Stores event-related information.
std::shared_ptr< Writer > m_writer
actual writter
bool failed() override
Return status of the stream.
WriterGZ(const std::string &filename, std::shared_ptr< GenRunInfo > run=std::shared_ptr< GenRunInfo >())
Constructor.
void close() override
Close file stream.
WriterGZ(std::ostream &stream, std::shared_ptr< GenRunInfo > run=std::shared_ptr< GenRunInfo >())
Constructor from ostream.
std::shared_ptr< std::ostream > m_zstr
Stream to write.
void write_event(const GenEvent &evt) override
Write event to file.