ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HepMCFlowAfterBurner.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file HepMCFlowAfterBurner.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 
4 #ifndef PHHEPMC_HEPMCFLOWAFTERBURNER_H
5 #define PHHEPMC_HEPMCFLOWAFTERBURNER_H
6 
7 #include <fun4all/SubsysReco.h>
8 
9 #include <string>
10 
11 class PHCompositeNode;
12 
14 {
15  public:
16  HepMCFlowAfterBurner(const std::string &name = "HEPMCFLOWAFTERBURNER");
17  ~HepMCFlowAfterBurner() override {}
18 
19  int Init(PHCompositeNode *) override;
20  int process_event(PHCompositeNode *) override;
21 
22  void Print(const std::string &what = "ALL") const override;
23 
24  void setAlgorithmName(const std::string &name);
25 
26  void setMinEta(const float f)
27  {
28  mineta = f;
29  }
30  void setMaxEta(const float f)
31  {
32  maxeta = f;
33  }
34  void setMinPt(const float f)
35  {
36  minpt = f;
37  }
38  void setMaxPt(const float f)
39  {
40  maxpt = f;
41  }
42  void setSeed(const long il);
43 
44  void SaveRandomState(const std::string &savefile = "HepMCFlowAfterBurner.ransave");
45  void RestoreRandomState(const std::string &savefile = "HepMCFlowAfterBurner.ransave");
46 
47  protected:
48  std::string config_filename;
49  std::string algorithmName;
50 
51  float mineta;
52  float maxeta;
53 
54  float minpt;
55  float maxpt;
56 
57  int seedset;
58  long seed;
59  long randomSeed;
60 };
61 
62 #endif