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:
21  CLHEP::HepRandomEngine& rndEngine_;
23 
27  double deltaCut_;
28  double pitch_;
29  double thickness_;
31  std::unique_ptr<SiG4UniversalFluctuation> fluctuate_;
33 
34  void FluctuateEloss(int pid,
35  double particleMomentum,
36  double eloss,
37  double length,
38  int NumberOfSegs,
40 };
41 
42 #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:11
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)
const edm::ParameterSet & params_
std::vector< RPEnergyDepositUnit > energy_path_distribution
Definition: RPSimTypes.h:16
CLHEP::HepRandomEngine & rndEngine_