File indexing completed on 2025-08-05 08:17:36
0001
0002
0003 #ifndef TPCRAWHITQA_H
0004 #define TPCRAWHITQA_H
0005
0006 #include <tpc/TpcMap.h>
0007
0008 #include <fun4all/SubsysReco.h>
0009
0010 #include <string>
0011 #include <vector>
0012
0013 class TH1;
0014 class TH2;
0015 class TpcRawHitContainer;
0016
0017 class TpcRawHitQA : public SubsysReco
0018 {
0019 public:
0020 TpcRawHitQA(const std::string& name = "TpcRawHitQA");
0021
0022 ~TpcRawHitQA() override = default;
0023
0024 int InitRun(PHCompositeNode* topNode) override;
0025 int process_event(PHCompositeNode* topNode) override;
0026 int EndRun(const int runnumber) override;
0027
0028 void setPresample(bool value)
0029 {
0030 longPresample = value;
0031 }
0032
0033 private:
0034 void createHistos();
0035 std::string getHistoPrefix() const;
0036
0037 TpcMap M;
0038
0039 std::vector<TpcRawHitContainer*> rawhitcont_vec;
0040
0041 TH1* h_nhits_sectors[24]{nullptr};
0042 TH2* h_nhits_sectors_fees[24]{nullptr};
0043 TH1* h_nhits_sectors_laser[24]{nullptr};
0044 TH2* h_nhits_sectors_fees_laser[24]{nullptr};
0045 TH1* h_nhits_sam[24][3]{{nullptr}};
0046 TH1* h_adc[24][3]{{nullptr}};
0047 TH2* h_xy_N{nullptr};
0048 TH2* h_xy_S{nullptr};
0049
0050 int FEE_R[26]{2, 2, 1, 1, 1, 3, 3, 3, 3, 3, 3, 2, 2, 1, 2, 2, 1, 1, 2, 2, 3, 3, 3, 3, 3, 3};
0051 int FEE_map[26]{4, 5, 0, 2, 1, 11, 9, 10, 8, 7, 6, 0, 1, 3, 7, 6, 5, 4, 3, 2, 0, 2, 1, 3, 5, 4};
0052
0053 bool longPresample = false;
0054 };
0055
0056 #endif