File indexing completed on 2025-08-06 08:14:17
0001
0002
0003 #ifndef JETSEEDCOUNT_H
0004 #define JETSEEDCOUNT_H
0005
0006 #include <fun4all/SubsysReco.h>
0007 #include <jetbase/Jetv1.h>
0008 #include <jetbase/Jetv2.h>
0009 #include <fastjet/PseudoJet.hh>
0010
0011 #include <string>
0012 #include <vector>
0013
0014 #include <TFile.h>
0015 #include <TH1F.h>
0016 #include <TH2D.h>
0017
0018 class PHCompositeNode;
0019 class TTree;
0020 class JetSeedCount : public SubsysReco
0021 {
0022 public:
0023
0024 JetSeedCount(const std::string &recojetname = "AntiKt_Tower_r04",
0025 const std::string &truthjetname = "AntiKt_Truth_r04",
0026 const std::string &outputfilename = "myjetanalysis.root");
0027
0028 ~JetSeedCount() override;
0029
0030 void
0031 setEtaRange(double low, double high)
0032 {
0033 m_etaRange.first = low;
0034 m_etaRange.second = high;
0035 }
0036 void
0037 setPtRange(double low, double high)
0038 {
0039 m_ptRange.first = low;
0040 m_ptRange.second = high;
0041 }
0042
0043 int Init(PHCompositeNode *topNode) override;
0044
0045 int InitRun(PHCompositeNode *topNode) override;
0046
0047 int process_event(PHCompositeNode *topNode) override;
0048
0049
0050 int ResetEvent(PHCompositeNode *topNode) override;
0051
0052
0053 int EndRun(const int runnumber) override;
0054
0055
0056 int End(PHCompositeNode *topNode) override;
0057
0058
0059 int Reset(PHCompositeNode * ) override;
0060
0061 void Print(const std::string &what = "ALL") const override;
0062
0063 private:
0064 std::string m_recoJetName;
0065 std::string m_truthJetName;
0066 std::string m_outputFileName;
0067 std::pair<double, double> m_etaRange;
0068 std::pair<double, double> m_ptRange;
0069 std::vector<double> m_RawEta;
0070 std::vector<double> m_RawPhi;
0071 std::vector<double> m_SubEta;
0072 std::vector<double> m_SubPhi;
0073 std::vector<int> m_centrality;
0074 std::vector<int> m_centrality_diff;
0075
0076 int m_event = 0;
0077 int m_seed_sub;
0078 int m_seed_raw;
0079 double z_vtx;
0080 std::vector<int> m_raw_counts;
0081 std::vector<int> m_sub_counts;
0082 std::vector<double> m_rawpt;
0083 std::vector<double> m_subpt;
0084 std::vector<double> m_rawpt_all;
0085 std::vector<double> m_subpt_all;
0086 std::vector<double> m_rawenergy;
0087 std::vector<double> m_subenergy;
0088 std::vector<double> m_rawcent;
0089 std::vector<double> m_subcent;
0090 };
0091
0092 #endif