00001 #ifndef _CR_MULTIPLESCATTERINGUPDATOR_H_ 00002 #define _CR_MULTIPLESCATTERINGUPDATOR_H_ 00003 00012 #include "TrackingTools/MaterialEffects/interface/MaterialEffectsUpdator.h" 00013 #include "FWCore/Utilities/interface/Visibility.h" 00014 00015 class MultipleScatteringUpdator : public MaterialEffectsUpdator 00016 { 00017 virtual MultipleScatteringUpdator* clone() const { 00018 return new MultipleScatteringUpdator(*this); 00019 } 00020 00021 public: 00026 MultipleScatteringUpdator(double mass, double ptMin=-1. ) : 00027 MaterialEffectsUpdator(mass), 00028 thePtMin(ptMin) {} 00030 ~MultipleScatteringUpdator() {} 00032 virtual double deltaP (const TrajectoryStateOnSurface&, const PropagationDirection) const { 00033 return 0.; 00034 } 00035 00036 private: 00037 // here comes the actual computation of the values 00038 virtual void compute (const TrajectoryStateOnSurface&, const PropagationDirection) const dso_internal; 00039 00040 00041 private: 00042 00043 double thePtMin; 00044 00045 }; 00046 00047 #endif