Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 09:21:21

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   TH2* h_nhits_sectors_fees_sampas[24][26]{{nullptr}};
0046   TH1* h_nhits_sam[24][3]{{nullptr}};
0047   TH1* h_adc[24][3]{{nullptr}};
0048   TH2* h_xy_N{nullptr};
0049   TH2* h_xy_S{nullptr};
0050 
0051   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};
0052   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};
0053 
0054   bool longPresample = false;
0055 };
0056 
0057 #endif  // TPCRAWHITQA_H

0058