CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EnergyLossUpdator.h
Go to the documentation of this file.
1 #ifndef _CR_ENERGYLOSSUPDATOR_H_
2 #define _CR_ENERGYLOSSUPDATOR_H_
3 
17 
18 class MediumProperties;
19 
21 {
22  public:
23  virtual EnergyLossUpdator* clone() const {
24  return new EnergyLossUpdator(*this);
25  }
26 
27 public:
28  EnergyLossUpdator( double mass ) :
29  MaterialEffectsUpdator(mass) {}
30 
31  // here comes the actual computation of the values
32  virtual void compute (const TrajectoryStateOnSurface&,
33  const PropagationDirection, Effect & effect) const;
34 
35 private:
36  // Internal routine for ionization acc. to Bethe-Bloch
37  void computeBetheBloch (const LocalVector&, const MediumProperties&, Effect & effect) const dso_internal;
38  // Internal routine for energy loss by electrons due to radiation
39  void computeElectrons (const LocalVector&, const MediumProperties&,
40  const PropagationDirection, Effect & effect) const dso_internal;
41 
42 };
43 
44 #endif
void computeBetheBloch(const LocalVector &, const MediumProperties &, Effect &effect) const
materialEffect::Effect Effect
virtual EnergyLossUpdator * clone() const
PropagationDirection
void computeElectrons(const LocalVector &, const MediumProperties &, const PropagationDirection, Effect &effect) const
EnergyLossUpdator(double mass)
#define dso_internal
virtual void compute(const TrajectoryStateOnSurface &, const PropagationDirection, Effect &effect) const