CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EcalUncalibRecHitWorkerGlobal.h
Go to the documentation of this file.
1 #ifndef RecoLocalCalo_EcalRecProducers_EcalUncalibRecHitRecWorkerGlobal_hh
2 #define RecoLocalCalo_EcalRecProducers_EcalUncalibRecHitRecWorkerGlobal_hh
3 
30 
31 
32 namespace edm {
33  class Event;
34  class EventSetup;
35  class ParameterSet;
36 }
37 
39 
40  public:
43 
44  void set(const edm::EventSetup& es);
46 
47  protected:
48 
49  double pedVec[3];
50  double pedRMSVec[3];
51  double gainRatios[3];
52 
55 
56  template < class C > int isSaturated(const C & digi);
57 
58  double timeCorrectionEB(float ampliEB);
59  double timeCorrectionEE(float ampliEE);
60 
61  // weights method
68  const EEShape testbeamEEShape; // used in the chi2
69  const EBShape testbeamEBShape; // can be replaced by simple shape arrays of float in the future
70 
71  // determie which of the samples must actually be used by ECAL local reco
73 
74  // ratio method
75  std::vector<double> EBtimeFitParameters_;
76  std::vector<double> EEtimeFitParameters_;
77  std::vector<double> EBamplitudeFitParameters_;
78  std::vector<double> EEamplitudeFitParameters_;
79  std::pair<double,double> EBtimeFitLimits_;
80  std::pair<double,double> EEtimeFitLimits_;
83  std::vector<double> EBtimeCorrAmplitudeBins_;
84  std::vector<double> EBtimeCorrShiftBins_;
85  std::vector<double> EEtimeCorrAmplitudeBins_;
86  std::vector<double> EEtimeCorrShiftBins_;
89 
91  double EBtimeNconst_;
93  double EEtimeNconst_;
105 
106  // leading edge method
109  std::vector<double> ebPulseShape_;
110  std::vector<double> eePulseShape_;
113 
114  // chi2 method
119  std::vector<double> EBchi2Parameters_;
120  std::vector<double> EEchi2Parameters_;
121 };
122 
123 #endif
edm::ESHandle< EcalTimeOffsetConstant > offtime
bool run(const edm::Event &evt, const EcalDigiCollection::const_iterator &digi, EcalUncalibratedRecHitCollection &result)
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
EcalUncalibRecHitWorkerGlobal(const edm::ParameterSet &)
std::pair< double, double > EBtimeFitLimits_
EcalUncalibRecHitRecWeightsAlgo< EBDataFrame > weightsMethod_barrel_
std::pair< double, double > EEtimeFitLimits_
EcalUncalibRecHitRatioMethodAlgo< EEDataFrame > ratioMethod_endcap_
EcalUncalibRecHitLeadingEdgeAlgo< EBDataFrame > leadingEdgeMethod_barrel_
EcalUncalibRecHitRatioMethodAlgo< EBDataFrame > ratioMethod_barrel_
edm::ESHandle< EcalGainRatios > gains
EcalUncalibRecHitLeadingEdgeAlgo< EEDataFrame > leadingEdgeMethod_endcap_
edm::ESHandle< EcalPedestals > peds
tuple result
Definition: query.py:137
edm::ESHandle< EcalTBWeights > wgts
edm::ESHandle< EcalWeightXtalGroups > grps
Definition: EBShape.h:6
math::Matrix< 10, 10 >::type EcalChi2WeightMatrix
Definition: EcalWeightSet.h:21
const EcalWeightSet::EcalChi2WeightMatrix * chi2mat[2]
const EcalWeightSet::EcalWeightMatrix * weights[2]
void set(const edm::EventSetup &es)
edm::ESHandle< EcalTimeCalibConstants > itime
EcalUncalibRecHitRecWeightsAlgo< EEDataFrame > weightsMethod_endcap_
math::Matrix< 3, 10 >::type EcalWeightMatrix
Definition: EcalWeightSet.h:20
edm::ESHandle< EcalSampleMask > sampleMaskHand_
Definition: EEShape.h:6