File indexing completed on 2025-08-14 08:14:26
0001
0002 #ifndef LASERCLUSTERQA_H
0003 #define LASERCLUSTERQA_H
0004
0005
0006 #include <fun4all/SubsysReco.h>
0007
0008 #include <tpc/TpcDistortionCorrection.h>
0009 #include <tpc/TpcDistortionCorrectionContainer.h>
0010
0011 #include <string>
0012
0013 class PHCompositeNode;
0014 class LaserClusterContainer;
0015 class EventHeader;
0016
0017 class TFile;
0018 class TH1D;
0019 class TH2D;
0020
0021 class laserClusterQA : public SubsysReco
0022 {
0023
0024 public:
0025 laserClusterQA(const std::string &name = "laserClusterQA");
0026
0027 ~laserClusterQA() override = default;
0028
0029 void setOutfile(const std::string &outname)
0030 {
0031 m_output = outname;
0032 }
0033
0034 void setPedestal(int ped)
0035 {
0036 m_pedestal = ped;
0037 }
0038
0039 int InitRun(PHCompositeNode *topNode) override;
0040
0041 int process_event(PHCompositeNode *topNode) override;
0042
0043 int End(PHCompositeNode *topNode) override;
0044
0045 private:
0046
0047 TH2D *h;
0048 TH2D *hSpot[5];
0049
0050 TH1D *adcSpectrum;
0051 TH2D *adcSpecClus;
0052 TH2D *adcSpecHit;
0053
0054 TH1D *adcSpecSpot[5];
0055
0056 int m_pedestal = 0;
0057
0058 int n1700Total = 0;
0059
0060 std::string m_output = "laserClusterQA.root";
0061
0062 TpcDistortionCorrection m_distortionCorrection;
0063
0064 TpcDistortionCorrectionContainer *m_dcc_in_module_edge{nullptr};
0065 TpcDistortionCorrectionContainer *m_dcc_in_static{nullptr};
0066
0067 };
0068
0069 #endif