CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/SimTracker/SiStripDigitizer/interface/SiTrivialInduceChargeOnStrips.h

Go to the documentation of this file.
00001 #ifndef Tracker_SiTrivialInduceChargeOnStrips_H
00002 #define Tracker_SiTrivialInduceChargeOnStrips_H
00003 
00004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00005 #include "SimTracker/SiStripDigitizer/interface/SiInduceChargeOnStrips.h"
00006 
00007 class SiTrivialInduceChargeOnStrips: public SiInduceChargeOnStrips {
00008  public:
00009   SiTrivialInduceChargeOnStrips(const edm::ParameterSet& conf,double g);
00010   virtual ~SiTrivialInduceChargeOnStrips() {}
00011   void  induce(SiChargeCollectionDrifter::collection_type collection_points,
00012                const StripGeomDetUnit& det,
00013                std::vector<double>& localAmplitudes,
00014                size_t& recordMinAffectedStrip,
00015                size_t& recordMaxAffectedStrip);
00016   
00017  private:
00018   double chargeDeposited(size_t strip, 
00019                          size_t Nstrips, 
00020                          double amplitude, 
00021                          double chargeSpread, 
00022                          double chargePosition) const;
00023   static unsigned int typeOf(const StripGeomDetUnit&);
00024   static unsigned int indexOf(const std::string&);
00025   static const std::string type[];
00026   static const int Ntypes;
00027   std::vector<std::vector<double> > signalCoupling; 
00028   
00029   const double Nsigma;
00030   const double geVperElectron;
00031 };
00032 
00033 #endif