EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Pythia6.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file Pythia6.h
1 
10 #ifndef INCLUDE_EICSMEAR_ERHIC_PYTHIA6_H_
11 #define INCLUDE_EICSMEAR_ERHIC_PYTHIA6_H_
12 
13 #include <memory>
14 #include <string>
15 
16 #include <Rtypes.h> // For ClassDef macro
17 
18 class TFile;
19 class TTree;
20 
21 namespace erhic {
22 
23 class EventPythia;
24 class EventMCFilterABC;
25 class VirtualEvent;
26 class VirtualEventFactory;
27 
34 class Pythia6 {
35  public:
46  Pythia6(TFile* file,
48  int nEvents,
49  const std::string& treeName = "EICTree",
50  const std::string& branchName = "event",
51  int printInterval = 1000);
52 
56  virtual ~Pythia6();
57 
64  virtual bool Run();
65 
66  protected:
68  TFile* mFile;
69  TTree* mTree;
70  const int mNEvents;
72  int mNTrials;
73  std::unique_ptr<VirtualEventFactory> mFactory;
74 
75  ClassDef(erhic::Pythia6, 1)
76 };
77 
78 } // namespace erhic
79 
80 #endif // INCLUDE_EICSMEAR_ERHIC_PYTHIA6_H_