11 thePedestalCovarianceSum(0),
13 thePedestalTimeCorrelationPlot(
nullptr),
14 thePedestalNeighborCorrelationPlot(
nullptr),
15 theNDigisPerChamberPlot(
nullptr)
34 for(
int i = 0;
i < 10; ++
i)
37 sprintf(title1,
"CSCStripDigiResolution%d",
i+1);
49 edm::LogError(
"CSCDigiValidation") <<
"Cannot get strips by label " 53 unsigned nDigisPerEvent = 0;
56 std::vector<CSCStripDigi>::const_iterator digiItr = (*j).second.first;
57 std::vector<CSCStripDigi>::const_iterator
last = (*j).second.second;
58 int nDigis = last-digiItr;
59 nDigisPerEvent += nDigis;
62 double maxAmplitude = 0.;
65 for( ; digiItr !=
last; ++digiItr) {
67 std::vector<int> adcCounts = digiItr->getADCCounts();
72 if(adcCounts[4]-pedestal > maxAmplitude)
75 maxAmplitude = adcCounts[4]-
pedestal;
116 const CSCLayer * layer,
int chamberType)
edm::InputTag theInputTag
MonitorElement * theNDigisPerEventPlot
MonitorElement * theRatio4to5Plot
std::vector< int > const & getADCCounts() const
Get ADC readings.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
void bookHistograms(DQMStore::IBooker &, bool doSim)
MonitorElement * theRatio6to5Plot
void fillSignalPlots(const CSCStripDigi &digi)
float xOfStrip(int strip, float y=0.) const
Local3DPoint localPosition() const
CSCStripDigiValidation(const edm::InputTag &inputTag, edm::ConsumesCollector &&iC)
edm::EDGetTokenT< CSCStripDigiCollection > strips_Token_
MonitorElement * thePedestalPlot
MonitorElement * theNDigisPerLayerPlot
MonitorElement * book1D(Args &&...args)
void plotResolution(const PSimHit &hit, int strip, const CSCLayer *layer, int chamberType)
MonitorElement * theAmplitudePlot
void analyze(const edm::Event &e, const edm::EventSetup &) override
MonitorElement * theResolutionPlots[10]
~CSCStripDigiValidation() override
void fillPedestalPlots(const CSCStripDigi &digi)
const CSCLayerGeometry * geometry() const