diff --git a/Generators/AtlasHepMC/AtlasHepMC/IO_GenEvent.h b/Generators/AtlasHepMC/AtlasHepMC/IO_GenEvent.h index c835adb2b578c432113887e3db28cb054f460cfa..04dd2c9f6b91111edaaa491f080268a419c50173 100644 --- a/Generators/AtlasHepMC/AtlasHepMC/IO_GenEvent.h +++ b/Generators/AtlasHepMC/AtlasHepMC/IO_GenEvent.h @@ -15,6 +15,27 @@ namespace HepMC { typedef HepMC3::WriterAsciiHepMC2 WriterAsciiHepMC2; typedef HepMC3::ReaderAsciiHepMC2 ReaderAsciiHepMC2; +class IO_GenEvent { +public: + IO_GenEvent( const std::string& filename="IO_GenEvent.dat", + std::ios::openmode mode=std::ios::out ) { + m_writer=new HepMC3::WriterAsciiHepMC2(filename); + } + IO_GenEvent( std::ostream & os ) { + m_writer=new HepMC3::WriterAsciiHepMC2(os); + } + ~IO_GenEvent() { + if(m_writer) { + m_writer->close(); + delete m_writer; + } + } + void write_event( const HepMC3::GenEvent* evt ) { + m_writer->write_event(*evt); + } +private: + HepMC3::WriterAsciiHepMC2 *m_writer; +}; } #else #include "HepMC/IO_GenEvent.h" diff --git a/Generators/AtlasHepMC/AtlasHepMC/IteratorRange.h b/Generators/AtlasHepMC/AtlasHepMC/IteratorRange.h index 4f8674320ca5ca3d45e9ffd9552d7586a6db30b9..98422d0a128ba000a75c8db78437f19e70d21374 100644 --- a/Generators/AtlasHepMC/AtlasHepMC/IteratorRange.h +++ b/Generators/AtlasHepMC/AtlasHepMC/IteratorRange.h @@ -5,5 +5,13 @@ #ifndef ATLASHEPMC_ITERATORRANGE_H #define ATLASHEPMC_ITERATORRANGE_H +#ifdef HEPMC3 +namespace HepMC { +enum IteratorRange { parents, children, family, + ancestors, descendants, relatives + }; +} +#else #include "HepMC/IteratorRange.h" #endif +#endif