Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:19:54

0001 // -----------------------------------------
0002 // JetScape (modular/task) based framework
0003 // Intial Design: Joern Putschke (2017)
0004 //                (Wayne State University)
0005 // -----------------------------------------
0006 // License and Doxygen-like Documentation to be added ...
0007 
0008 
0009 // jetscape writer ascii + gzip class
0010 
0011 #ifndef JETSCAPEWRITERASCIIGZ_H
0012 #define JETSCAPEWRITERASCIIGZ_H
0013 
0014 #include "gzstream.h"
0015 
0016 #include <fstream>
0017 #include <string>
0018 
0019 #include "JetScapeWriter.h"
0020 
0021 namespace Jetscape {
0022 
0023 // Maybe a templeate for Ascii and AsciiGZ !? Or in general !???
0024 
0025 class JetScapeWriterAsciiGZ : public JetScapeWriter
0026 {
0027 
0028  public:
0029 
0030   JetScapeWriterAsciiGZ() {};
0031   JetScapeWriterAsciiGZ(string m_file_name_out);
0032   virtual ~JetScapeWriterAsciiGZ();
0033 
0034   void Init();
0035   void Exec();
0036   
0037   bool GetStatus() {return output_file.good();}
0038   void Close() {output_file.close();}
0039 
0040   void Write(weak_ptr<PartonShower> ps);
0041   void Write(weak_ptr<Parton> p);
0042   void Write(weak_ptr<Vertex> v);
0043   void Write(weak_ptr<Hadron> h);
0044   void WriteHeaderToFile();
0045 
0046   void Write(string s) {output_file<<s<<endl;}
0047   void WriteComment(string s) {output_file<<"# "<<s<<endl;}
0048   void WriteWhiteSpace(string s) {output_file<<s<<" ";}
0049   void WriteEvent();
0050  
0051  private:
0052 
0053   ogzstream output_file; //!< Output file
0054   //int m_precision; //!< Output precision
0055   
0056 };
0057 
0058 } // end namespace Jetscape
0059 
0060 #endif