Go to the documentation of this file.00001 #ifndef CSCDigitizer_CSCDbStripConditions_h
00002 #define CSCDigitizer_CSCDbStripConditions_h
00003
00004 #include "SimMuon/CSCDigitizer/src/CSCStripConditions.h"
00005 #include "CalibMuon/CSCCalibration/interface/CSCConditions.h"
00006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00007
00008 class CSCDbStripConditions : public CSCStripConditions
00009 {
00010 public:
00011 explicit CSCDbStripConditions(const edm::ParameterSet & pset);
00012 virtual ~CSCDbStripConditions();
00013
00015 virtual void initializeEvent(const edm::EventSetup & es);
00016
00018 virtual float gain(const CSCDetId & detId, int channel) const;
00020 virtual float gainSigma(const CSCDetId & detId, int channel) const {return 0.005;}
00021
00023 virtual float pedestal(const CSCDetId & detId, int channel) const;
00024 virtual float pedestalSigma(const CSCDetId & detId, int channel) const;
00025
00026 virtual void crosstalk(const CSCDetId&detId, int channel,
00027 double stripLength, bool leftRight,
00028 float & capacitive, float & resistive) const;
00029
00031 virtual bool isInBadChamber( const CSCDetId& id ) const;
00032
00033 private:
00034 virtual void fetchNoisifier(const CSCDetId & detId, int istrip);
00035
00036 CSCConditions theConditions;
00037
00038
00039 float theCapacitiveCrosstalk;
00040
00041
00042 float theResistiveCrosstalkScaling;
00043
00044 float theGainsConstant;
00045 bool doCorrelatedNoise_;
00046 };
00047
00048 #endif
00049
00050