#include <EBDataFrame.h>
Public Types | |
typedef EcalDataFrame | Base |
typedef EBDetId | key_type |
For the sorted collection. | |
Public Member Functions | |
EBDataFrame () | |
EBDataFrame (edm::DataFrame const &base) | |
EBDataFrame (EcalDataFrame const &base) | |
key_type | id () const |
float | spikeEstimator () const |
virtual | ~EBDataFrame () |
Definition at line 14 of file EBDataFrame.h.
typedef EcalDataFrame EBDataFrame::Base |
Definition at line 18 of file EBDataFrame.h.
typedef EBDetId EBDataFrame::key_type |
For the sorted collection.
Definition at line 17 of file EBDataFrame.h.
EBDataFrame::EBDataFrame | ( | ) | [inline] |
Definition at line 20 of file EBDataFrame.h.
{}
EBDataFrame::EBDataFrame | ( | edm::DataFrame const & | base | ) | [inline] |
Definition at line 22 of file EBDataFrame.h.
EBDataFrame::EBDataFrame | ( | EcalDataFrame const & | base | ) | [inline] |
Definition at line 23 of file EBDataFrame.h.
virtual EBDataFrame::~EBDataFrame | ( | ) | [inline, virtual] |
Definition at line 30 of file EBDataFrame.h.
{}
key_type EBDataFrame::id | ( | void | ) | const [inline] |
Reimplemented from EcalDataFrame.
Definition at line 32 of file EBDataFrame.h.
References EcalDataFrame::id().
Referenced by EBSelectiveReadoutTask::anaDigi(), EcalDigisValidation::analyze(), EcalBarrelDigisValidation::analyze(), EcalTPGAnalyzer::analyze(), EBSelectiveReadoutTask::analyze(), EcalMixingModuleValidation::analyze(), EcalTrigPrimAnalyzerMIPs::analyze(), EcalSelectiveReadoutValidation::analyzeEB(), TowerBlockFormatter::DigiToRaw(), GlobalDigisAnalyzer::fillECal(), GlobalDigisProducer::fillECal(), EcalSimRawData::getEbDigi(), operator<<(), EcalTBWeightUncalibRecHitProducer::produce(), EcalTBReadout::readOut(), EcalSelectiveReadoutValidation::setTtEtSums(), and EcalSelectiveReadoutSuppressor::setTtFlags().
{ return Base::id(); }
float EBDataFrame::spikeEstimator | ( | ) | const |
estimator for a signal being a spike based on ratios between 4th, 5th and 6th sample
Definition at line 5 of file EBDataFrame.cc.
References ecalMGPA::adc(), EcalMGPASample::adc(), i, EcalDataFrame::sample(), and EcalDataFrame::size().
{ if ( size() != 10 ) { edm::LogError("InvalidNumberOfSamples") << "This method only applies to signals sampled 10 times (" << size() << " samples found)"; return 10.; } // skip faulty channels if ( sample(5).adc() == 0 ) return 10.; size_t imax = 0; int maxAdc = 0; for ( int i = 0; i < size(); ++i ) { if ( sample(i).adc() > maxAdc ) { imax = i; maxAdc = sample(i).adc(); } } // skip early signals if ( imax < 4 ) return 10.; float ped = 1./3. * (sample(0).adc() + sample(1).adc() + sample(2).adc()); return 0.18*(sample(4).adc()-ped)/(sample(5).adc()-ped) + (sample(6).adc()-ped)/(sample(5).adc()-ped); }