File indexing completed on 2025-08-05 08:11:14
0001 #ifndef TRIGGERPERFORMANCE_H
0002 #define TRIGGERPERFORMANCE_H
0003
0004 #include <fun4all/SubsysReco.h>
0005 #include <calotrigger/TriggerAnalyzer.h>
0006 #include <string>
0007 #include <array>
0008 #include "TMath.h"
0009
0010 class Fun4AllHistoManager;
0011 class PHCompositeNode;
0012 class TowerInfoContainer;
0013 class JetContainer;
0014
0015 class TriggerPerformance : public SubsysReco
0016 {
0017 public:
0018
0019 TriggerPerformance(const std::string &name = "TriggerPerformance", const std::string &outfilename = "trees_trigger.root");
0020
0021 virtual ~TriggerPerformance();
0022
0023 int Init(PHCompositeNode *topNode) override;
0024
0025 int InitRun(PHCompositeNode *topNode) override;
0026
0027 int process_event(PHCompositeNode *topNode) override;
0028
0029 void GetNodes (PHCompositeNode *topNode);
0030
0031 int ResetEvent(PHCompositeNode *topNode) override;
0032
0033 int EndRun(const int runnumber) override;
0034
0035 int End(PHCompositeNode *topNode) override;
0036
0037 int Reset(PHCompositeNode * ) override;
0038
0039 void UseEmulator(bool use) { m_useEmulator = use; }
0040 private:
0041 bool m_useEmulator{false};
0042 TriggerAnalyzer *triggeranalyzer{nullptr};;
0043 int _verbosity;
0044 std::string _foutname;
0045 std::string _nodename;
0046 std::string m_calo_nodename;
0047 int _i_event;
0048 Fun4AllHistoManager *hm{nullptr};
0049 std::array<std::string, 4> m_jet_triggernames;
0050 std::array<int, 4> m_jet_prescales;
0051 std::array<std::string, 4> m_photon_triggernames;
0052 std::array<int, 4> m_photon_prescales;
0053 std::array<std::string, 4> m_photon_emu_triggernames;
0054 std::array<std::string, 4> m_jet_emu_triggernames;
0055 int m_mbd_prescale;
0056
0057
0058 };
0059
0060 #endif