CMS 3D CMS Logo

RPLinearChargeDivider.h
Go to the documentation of this file.
1 #ifndef SimPPS_RPDigiProducer_RP_LINEAR_CHARGE_DIVIDER_H
2 #define SimPPS_RPDigiProducer_RP_LINEAR_CHARGE_DIVIDER_H
3 
8 
9 namespace CLHEP {
10  class HepRandomEngine;
11 }
12 
14 public:
15  RPLinearChargeDivider(const edm::ParameterSet& params, CLHEP::HepRandomEngine& eng, RPDetId det_id);
18 
19 private:
20  CLHEP::HepRandomEngine& rndEngine_;
22 
26  double deltaCut_;
27  double pitch_;
28  double thickness_;
30  std::unique_ptr<SiG4UniversalFluctuation> fluctuate_;
32 
33  void FluctuateEloss(int pid,
34  double particleMomentum,
35  double eloss,
36  double length,
37  int NumberOfSegs,
39 };
40 
41 #endif //SimPPS_RPDigiProducer_RP_LINEAR_CHARGE_DIVIDER_H
simromanpot::energy_path_distribution the_energy_path_distribution_
std::unique_ptr< SiG4UniversalFluctuation > fluctuate_
uint32_t RPDetId
Definition: RPSimTypes.h:12
simromanpot::energy_path_distribution divide(const PSimHit &hit)
RPLinearChargeDivider(const edm::ParameterSet &params, CLHEP::HepRandomEngine &eng, RPDetId det_id)
void FluctuateEloss(int pid, double particleMomentum, double eloss, double length, int NumberOfSegs, simromanpot::energy_path_distribution &elossVector)
std::vector< RPEnergyDepositUnit > energy_path_distribution
Definition: RPSimTypes.h:17
CLHEP::HepRandomEngine & rndEngine_