Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:17:32

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 #ifndef QA_JET_RHOSINEVENT_H
0004 #define QA_JET_RHOSINEVENT_H
0005 
0006 #include "JetQADefs.h"
0007 
0008 #include <fun4all/SubsysReco.h>
0009 
0010 #include <string>
0011 #include <utility>  // std::pair, std::make_pair
0012 #include <vector>
0013 
0014 
0015 class Fun4AllHistoManager;
0016 class PHCompositeNode;
0017 class TH1;
0018 class TriggerAnalyzer;
0019 
0020 /// \class RhosinEvent
0021 /// \brief SubsysReco module that plots tower rho information
0022 /// \author: Tanner Mengel
0023 
0024 class RhosinEvent : public SubsysReco
0025 {
0026  public:
0027   RhosinEvent(
0028       const std::string &moduleName = "RhosinEvent",
0029       const std::string &tag = "AllTrig");
0030   ~RhosinEvent() override{};
0031 
0032   void add_mult_rho_node(const std::string &name)
0033   {
0034     m_do_mult_rho = true;
0035     m_mult_rho_node = name;
0036   }
0037   void add_area_rho_node(const std::string &name)
0038   {
0039     m_do_area_rho = true;
0040     m_area_rho_node = name;
0041   }
0042   void setTrgToSelect(const uint32_t trig = JetQADefs::GL1::MBDNSJet1)
0043   {
0044     m_doTrgSelect = true;
0045     m_trgToSelect = trig;
0046   }
0047 
0048   // standard Fun4All functions
0049   int Init(PHCompositeNode *topNode) override;
0050   int process_event(PHCompositeNode *topNode) override;
0051   int End(PHCompositeNode *topNode) override;
0052 
0053  private:
0054   //! Module name, and histogram tag
0055   std::string m_moduleName;
0056   std::string m_histTag;
0057   // std::string m_outputFileName{"RhosinEvent.root"};
0058 
0059   bool m_do_mult_rho{true};
0060   bool m_do_area_rho{true};
0061   std::string m_mult_rho_node{"TowerRho_MULT"};
0062   std::string m_area_rho_node{"TowerRho_AREA"};
0063 
0064   // trigger selection
0065   bool m_doTrgSelect {false};
0066   uint32_t m_trgToSelect {JetQADefs::GL1::MBDNSJet1};
0067 
0068   Fun4AllHistoManager *m_manager{nullptr};
0069   TriggerAnalyzer *m_analyzer{nullptr};
0070   // histos
0071   TH1 *h1_mult_rho{nullptr};
0072   TH1 *h1_mult_rho_sigma{nullptr};
0073   TH1 *h1_area_rho{nullptr};
0074   TH1 *h1_area_rho_sigma{nullptr};
0075 };
0076 
0077 #endif  // QA_JET_RHOSINEVENT_H