Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
JetScapeWriterAsciiGZ.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file JetScapeWriterAsciiGZ.h
1 // -----------------------------------------
2 // JetScape (modular/task) based framework
3 // Intial Design: Joern Putschke (2017)
4 // (Wayne State University)
5 // -----------------------------------------
6 // License and Doxygen-like Documentation to be added ...
7 
8 
9 // jetscape writer ascii + gzip class
10 
11 #ifndef JETSCAPEWRITERASCIIGZ_H
12 #define JETSCAPEWRITERASCIIGZ_H
13 
14 #include "gzstream.h"
15 
16 #include <fstream>
17 #include <string>
18 
19 #include "JetScapeWriter.h"
20 
21 namespace Jetscape {
22 
23 // Maybe a templeate for Ascii and AsciiGZ !? Or in general !???
24 
26 {
27 
28  public:
29 
31  JetScapeWriterAsciiGZ(string m_file_name_out);
32  virtual ~JetScapeWriterAsciiGZ();
33 
34  void Init();
35  void Exec();
36 
37  bool GetStatus() {return output_file.good();}
38  void Close() {output_file.close();}
39 
40  void Write(weak_ptr<PartonShower> ps);
41  void Write(weak_ptr<Parton> p);
42  void Write(weak_ptr<Vertex> v);
43  void Write(weak_ptr<Hadron> h);
44  void WriteHeaderToFile();
45 
46  void Write(string s) {output_file<<s<<endl;}
47  void WriteComment(string s) {output_file<<"# "<<s<<endl;}
48  void WriteWhiteSpace(string s) {output_file<<s<<" ";}
49  void WriteEvent();
50 
51  private:
52 
54  //int m_precision; //!< Output precision
55 
56 };
57 
58 } // end namespace Jetscape
59 
60 #endif