CMS 3D CMS Logo

ChargeDividerFP420.h
Go to the documentation of this file.
1 #ifndef ChargeDividerFP420_h
2 #define ChargeDividerFP420_h
3 
5 
8 //#include "SimG4CMS/FP420/interface/FP420G4HitCollection.h"
9 //#include "SimG4CMS/FP420/interface/FP420G4Hit.h"
12 
14 public:
15  explicit ChargeDividerFP420(double pit, double az420, double azD2, double azD3, int);
16 
17  ~ChargeDividerFP420() override;
18 
19  // CDividerFP420::ionization_type divide(const SimHit&, const StripDet& det);
20  CDividerFP420::ionization_type divide(const PSimHit &, const double &) override;
21 
22 private:
23  double pitchcur; // is really moduleThickness here !!!
24  double z420; // dist between centers of 1st and 2nd stations
25  double zD2; // dist between centers of 1st and 2nd stations
26  double zD3; // dist between centers of 1st and 3rd stations
27 
28  float PeakShape(const PSimHit &);
29  float DeconvolutionShape(const PSimHit &);
30  float TimeResponse(const PSimHit &);
31  void fluctuateEloss(
32  int particleId, float momentum, float eloss, float length, int NumberOfSegmentation, float elossVector[]);
33  // static SimpleConfigurable<bool> peakMode;
34  bool peakMode;
35  bool decoMode;
36  // static SimpleConfigurable<bool> fluctuateCharge;
38  // static SimpleConfigurable<int> chargeDivisionsPerStrip;
40  float zStationBegPos[4];
41  // static SimpleConfigurable<double> deltaCut ;
42  double deltaCut;
44  // HepPDTable * particleTable;
45  int verbosity;
46 };
47 
48 #endif
ChargeDividerFP420(double pit, double az420, double azD2, double azD3, int)
std::vector< EnergySegmentFP420 > ionization_type
Definition: CDividerFP420.h:14
float DeconvolutionShape(const PSimHit &)
void fluctuateEloss(int particleId, float momentum, float eloss, float length, int NumberOfSegmentation, float elossVector[])
float TimeResponse(const PSimHit &)
float PeakShape(const PSimHit &)
CDividerFP420::ionization_type divide(const PSimHit &, const double &) override
~ChargeDividerFP420() override