CMS 3D CMS Logo

CombinedMaterialEffectsUpdator.h

Go to the documentation of this file.
00001 #ifndef _CR_COMBINEDMATERIALEFFECTSUPDATOR_H_
00002 #define _CR_COMBINEDMATERIALEFFECTSUPDATOR_H_
00003 
00015 #include "TrackingTools/MaterialEffects/interface/MultipleScatteringUpdator.h"
00016 #include "TrackingTools/MaterialEffects/interface/EnergyLossUpdator.h"
00017 #include "TrackingTools/MaterialEffects/interface/MaterialEffectsUpdator.h"
00018 
00019 class CombinedMaterialEffectsUpdator : public MaterialEffectsUpdator
00020 {  
00021  public:
00022 #ifndef CMS_NO_RELAXED_RETURN_TYPE
00023   virtual CombinedMaterialEffectsUpdator* clone() const
00024 #else
00025   virtual MaterialEffectsUpdator* clone() const
00026 #endif
00027   {
00028     return new CombinedMaterialEffectsUpdator(*this);
00029   }
00030 
00031 public:
00033   CombinedMaterialEffectsUpdator( float mass ) :
00034     MaterialEffectsUpdator(mass),
00035     theMSUpdator(mass),
00036     theELUpdator(mass) {}
00037 
00038  private:
00039   // here comes the actual computation of the values
00040   virtual void compute (const TrajectoryStateOnSurface&, const PropagationDirection) const;
00041   
00042  private:
00043   // objects used for calculations of multiple scattering and energy loss
00044   MultipleScatteringUpdator theMSUpdator;
00045   EnergyLossUpdator theELUpdator;
00046 };
00047 
00048 #endif

Generated on Tue Jun 9 17:48:22 2009 for CMSSW by  doxygen 1.5.4