File indexing completed on 2025-08-05 08:13:23
0001
0002
0003 #ifndef TOWERRHOANA_H
0004 #define TOWERRHOANA_H
0005
0006 #include <fun4all/SubsysReco.h>
0007
0008 #include <string>
0009 #include <utility> // std::pair, std::make_pair
0010 #include <vector>
0011
0012 class PHCompositeNode;
0013
0014 class TH1;
0015
0016
0017
0018
0019
0020
0021 class TowerRhoAna : public SubsysReco
0022 {
0023
0024 public:
0025
0026 TowerRhoAna(const std::string &outputfilename = "TowerRhoAna.root");
0027 ~TowerRhoAna() override {};
0028
0029 void add_mult_rho_node(const std::string &name)
0030 {
0031 m_do_mult_rho = true;
0032 m_mult_rho_node = name;
0033 }
0034 void add_area_rho_node(const std::string &name)
0035 {
0036 m_do_area_rho = true;
0037 m_area_rho_node = name;
0038 }
0039
0040
0041 int Init(PHCompositeNode *topNode) override;
0042 int process_event(PHCompositeNode *topNode) override;
0043 int End(PHCompositeNode *topNode) override;
0044
0045
0046 private:
0047
0048
0049 std::string m_outputFileName{ "TowerRhoAna.root"};
0050
0051 bool m_do_mult_rho{false};
0052 bool m_do_area_rho{false};
0053 std::string m_mult_rho_node{};
0054 std::string m_area_rho_node{};
0055
0056
0057
0058 TH1 * h1_mult_rho{nullptr};
0059 TH1 * h1_mult_rho_sigma{nullptr};
0060 TH1 * h1_area_rho{nullptr};
0061 TH1 * h1_area_rho_sigma{nullptr};
0062
0063
0064
0065 };
0066
0067 #endif