Back to home page

sPhenix code displayed by LXR

 
 

    


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

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
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  // TPCRAWHITQA_H