00001 #ifndef _CR_VOLUMEMULTIPLESCATTERINGESTIMATOR_H_ 00002 #define _CR_VOLUMEMULTIPLESCATTERINGESTIMATOR_H_ 00003 00010 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h" 00011 #include "DataFormats/TrajectorySeed/interface/PropagationDirection.h" 00012 #include "TrackingTools/MaterialEffects/interface/VolumeMaterialEffectsEstimator.h" 00013 00014 class VolumeMaterialEffectsEstimate; 00015 class VolumeMediumProperties; 00016 00017 class VolumeMultipleScatteringEstimator : public VolumeMaterialEffectsEstimator 00018 { 00019 public: 00021 VolumeMultipleScatteringEstimator ( float mass ) : 00022 VolumeMaterialEffectsEstimator(mass) {} 00023 00024 virtual ~VolumeMultipleScatteringEstimator () {} 00025 00027 virtual VolumeMaterialEffectsEstimate estimate (const TrajectoryStateOnSurface refTSOS, 00028 double pathLength, 00029 const VolumeMediumProperties& medium) const; 00030 00031 virtual VolumeMultipleScatteringEstimator* clone() const; 00032 }; 00033 00034 #endif