EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
JetHepMCLoader.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file JetHepMCLoader.h
1 // $Id: $
2 
11 #ifndef G4JET_JETHEPMCLOADER_H
12 #define G4JET_JETHEPMCLOADER_H
13 
14 #include "Jet.h"
15 
16 #include <fun4all/SubsysReco.h>
17 #include <string>
18 #include <vector>
19 
21 class PHCompositeNode;
22 
42 class JetHepMCLoader : public SubsysReco
43 {
44  public:
46  JetHepMCLoader(const std::string &jetInputCategory);
47  ~JetHepMCLoader() override;
48 
49  int Init(PHCompositeNode *topNode) override;
50  int InitRun(PHCompositeNode *topNode) override;
51  int process_event(PHCompositeNode *topNode) override;
52  int End(PHCompositeNode *topNode) override;
53 
65  void addJet(
66  const std::string &name,
67  int embeddingID,
69  double parameter,
70  int tagPID,
71  int tagStatus);
72 
73  void saveQAPlots(bool b = true) { m_saveQAPlots = b; }
74 
75  private:
76  int CreateNodes(PHCompositeNode *topNode);
78 
79  std::string m_jetInputCategory;
80 
82 
84  {
86  std::string m_name;
87 
90 
92  std::string m_algorithmName;
93 
95 
97  double m_parameter;
98 
100  int m_tagPID;
101 
104  };
105 
106  std::vector<hepmc_jet_src> m_jetSrc;
107 };
108 
109 #endif /* JETHEPMCLOADER_H_ */