10#include <ecl/modules/eclAutocovarianceCalibrationC1Collector/eclAutocovarianceCalibrationC1Collector.h>
13#include <ecl/dataobjects/ECLDsp.h>
14#include <ecl/dataobjects/ECLElementNumbers.h>
17#include <framework/dataobjects/EventMetaData.h>
25REG_MODULE(eclAutocovarianceCalibrationC1Collector);
34 setDescription(
"Module to export histogram of noise level of ECL waveforms in delayed Bhabha events");
43 PPVsCrysID =
new TH2F(
"PPVsCrysID",
"Peak to peak amplitude for each crystal;crystal ID;Peak to peak Amplitude (ADC)",
46 registerObject<TH2F>(
"PPVsCrysID",
PPVsCrysID);
53 B2INFO(
"eclAutocovarianceCalibrationC1Collector: Experiment = " <<
m_evtMetaData->getExperiment() <<
" run = " <<
61 const int NumDsp =
m_eclDsps.getEntries();
68 const int id = aECLDsp.getCellId() - 1;
71 float PeakToPeak = (float) aECLDsp.computePeaktoPeakAmp();
84 getObjectPtr<TH2>(
"PPVsCrysID")->SetBinContent(i + 1, j + 1,
PPVsCrysID->GetBinContent(i + 1, j + 1));
void setDescription(const std::string &description)
Sets the description of the module.
void setPropertyFlags(unsigned int propertyFlags)
Sets the flags for the module properties.
@ c_ParallelProcessingCertified
This module can be run in parallel processing mode safely (All I/O must be done through the data stor...
eclAutocovarianceCalibrationC1CollectorModule()
Constructor.
StoreArray< ECLDsp > m_eclDsps
Required input array of ECLDSPs.
void startRun() override
Load run-dep payloads.
void collect() override
Select events and crystals and accumulate histograms.
StoreObjPtr< EventMetaData > m_evtMetaData
dataStore EventMetaData
void closeRun() override
save histograms
void prepare() override
Define histograms and read payloads from DB.
TH2F * PPVsCrysID
histogram of peak-to-peak amplitude vs crystalID (cellID-1)
const int MaxPeaktoPeakValue
histogram limit for peak-to-peak amplitude
#define REG_MODULE(moduleName)
Register the given module (without 'Module' suffix) with the framework.
const int c_NCrystals
Number of crystals.
Abstract base class for different kinds of events.