CMS 3D CMS Logo

CSCStripConditions.h
Go to the documentation of this file.
1 #ifndef CSCDigitizer_CSCStripConditions_h
2 #define CSCDigitizer_CSCStripConditions_h
3 
8 
9 namespace CLHEP {
10  class HepRandomEngine;
11 }
12 
14 public:
18 
19  virtual ~CSCStripConditions();
20 
22  void noisify(const CSCDetId &detId, CSCAnalogSignal &signal, CLHEP::HepRandomEngine *);
23 
24  virtual void initializeEvent(const edm::EventSetup &es) {}
25 
28  virtual float gain(const CSCDetId &detId, int channel) const = 0;
29  virtual float gainSigma(const CSCDetId &detId, int channel) const = 0;
30  virtual float smearedGain(const CSCDetId &detId, int channel, CLHEP::HepRandomEngine *) const;
31 
33  virtual float pedestal(const CSCDetId &detId, int channel) const = 0;
34  virtual float pedestalSigma(const CSCDetId &detId, int channel) const = 0;
35 
37  float analogNoise(const CSCDetId &detId, int channel) const;
38 
39  virtual void crosstalk(const CSCDetId &detId,
40  int channel,
41  double stripLength,
42  bool leftRight,
43  float &capacitive,
44  float &resistive) const = 0;
45 
47  virtual bool isInBadChamber(const CSCDetId &id) const { return false; }
48 
49 protected:
50  virtual void fetchNoisifier(const CSCDetId &detId, int istrip) = 0;
51 
52  CSCCorrelatedNoisifier *theNoisifier;
53 };
54 
55 #endif
adds noise to the given frame.
Definition: EcalCoder.h:12
virtual void initializeEvent(const edm::EventSetup &es)
math::ErrorD< 8 >::type CSCCorrelatedNoiseMatrix
ROOT::Math::SMatrix< double, N, N, ROOT::Math::MatRepSym< double, N > > type
Definition: Error.h:21
CSCCorrelatedNoisifier * theNoisifier
CorrelatedNoisifier< CSCCorrelatedNoiseMatrix > CSCCorrelatedNoisifier
virtual bool isInBadChamber(const CSCDetId &id) const
is supplied layer/chamber flagged as bad? (default impl. is no)