SdCalibrator.h
Go to the documentation of this file.
1 #ifndef _SdCalibratorOG_SdCalibrator_h_
2 #define _SdCalibratorOG_SdCalibrator_h_
3 
4 #include <fwk/VModule.h>
5 #include <sevt/Station.h>
6 #include <utl/Is.h>
7 
8 
9 namespace sevt {
10  class PMTRecData;
11 }
12 
13 namespace SdCalibratorOG {
14 
68  class SdCalibrator : public fwk::VModule {
69 
70  public:
71  fwk::VModule::ResultFlag Init() override;
72  fwk::VModule::ResultFlag Run(evt::Event& event) override;
73  fwk::VModule::ResultFlag Finish() override { return eSuccess; }
74 
75  private:
77  void ApplyTimeCorrection(sevt::Station& station);
79 
80  //bool ApplyStartTimeCorrection(sevt::Station& station);
81  void SumPMTComponents(sevt::Station& station) const;
82 
83  // new offline calibration
84  bool CopySmallPMTCalibData(sevt::Station& station);
86  bool ComputeBaselines(sevt::Station& station) const;
87  bool ComputeBaseline(const sevt::Station& station, sevt::PMT& pmt, const sdet::PMTConstants::PMTGain gain) const;
88  bool MakeComponentVEMTraces(sevt::PMT& pmt) const;
89  int BuildSignals(sevt::Station& station) const;
90  bool BuildSignals(sevt::PMT& pmt, const unsigned int traceLength, const int saturationValue) const;
91  bool MergeSignals(sevt::Station& station) const;
92  bool SelectSignal(sevt::Station& station) const;
93  void TreatSaturated(sevt::Station& station) const;
94 
96  const double binTiming,
97  const unsigned int startBin,
98  const unsigned int startIntegration,
99  const unsigned int endIntegration,
100  const double traceIntegral) const;
101 
102  bool IsTestStation(const int id) const { return utl::Is(id).In(fTestStations); }
103 
104  // XML config
106 
107  typedef std::pair<double, double> PairD;
109  double fPeakFitChi2Accept = 0;
124  std::set<int> fTestStations;
132 
133  bool fToldYaPeak = false;
134  bool fToldYaCharge = false;
135  bool fToldYaShape = false;
136 
137  bool fIsUUB = false;
138 
140 
141  REGISTER_MODULE("SdCalibratorOG", SdCalibrator);
142 
143  };
144 
145 }
146 
147 
148 #endif
bool fIncludeWaterCherenkovDetectorInScintillatorStartStopDetermination
Definition: SdCalibrator.h:130
class to hold data at PMT level
Definition: SEvent/PMT.h:28
IsProxy< T > Is(const T &x)
Definition: Is.h:46
Report success to RunController.
Definition: VModule.h:62
Time interval defined by two TimeStamps.
Definition: TimeRange.h:23
void TreatSaturated(sevt::Station &station) const
bool SelectSignal(sevt::Station &station) const
bool MergeSignals(sevt::Station &station) const
int BuildSignals(sevt::Station &station) const
Performs calibration and signal analysis of the SD event.
Definition: SdCalibrator.h:68
bool MakeComponentVEMTraces(sevt::PMT &pmt) const
int gain
Definition: dump1090.h:241
A TimeStamp holds GPS second and nanosecond for some event.
Definition: TimeStamp.h:110
void CalculatePeakAndCharge(sevt::Station &station)
class to hold data at Station level
class to hold reconstructed data at PMT level
Definition: PMTRecData.h:38
fwk::VModule::ResultFlag Run(evt::Event &event) override
Run: invoked once per event.
REGISTER_MODULE("SdCalibratorOG", SdCalibrator)
std::set< int > fTestStations
Definition: SdCalibrator.h:124
std::pair< double, double > PairD
Definition: SdCalibrator.h:107
Module interface.
Definition: VModule.h:53
bool IsTestStation(const int id) const
Definition: SdCalibrator.h:102
void MakeFlatBaseline(sevt::PMT &pmt, const sdet::PMTConstants::PMTGain gain) const
void ApplyTimeCorrection(sevt::Station &station)
Calculate corrected nanosecond from raw GPS parameter.
fwk::VModule::ResultFlag Finish() override
Finish: invoked at end of the run (NOT end of the event)
Definition: SdCalibrator.h:73
const utl::TimeRange kCommsCrisis
Definition: SdCalibrator.h:139
ResultFlag
Flag returned by module methods to the RunController.
Definition: VModule.h:60
bool ComputeBaselines(sevt::Station &station) const
void ComputeShapeRiseFallPeak(sevt::PMTRecData &pmtRecData, const double binTiming, const unsigned int startBin, const unsigned int startIntegration, const unsigned int endIntegration, const double traceIntegral) const
bool ComputeBaseline(const sevt::Station &station, sevt::PMT &pmt, const sdet::PMTConstants::PMTGain gain) const
bool CopySmallPMTCalibData(sevt::Station &station)
fwk::VModule::ResultFlag Init() override
Initialize: invoked at beginning of run (NOT beginning of event)
Definition: SdCalibrator.cc:88
void SumPMTComponents(sevt::Station &station) const

, generated on Tue Sep 26 2023.