File indexing completed on 2024-04-06 12:31:31
0001 #ifndef GsfCombinedMaterialEffectsUpdator_h_
0002 #define GsfCombinedMaterialEffectsUpdator_h_
0003
0004 #include "TrackingTools/GsfTracking/interface/GsfMaterialEffectsUpdator.h"
0005 #include "DataFormats/GeometryCommonDetAlgo/interface/DeepCopyPointerByClone.h"
0006
0007
0008
0009
0010 class GsfCombinedMaterialEffectsUpdator final : public GsfMaterialEffectsUpdator {
0011 public:
0012 GsfCombinedMaterialEffectsUpdator* clone() const override { return new GsfCombinedMaterialEffectsUpdator(*this); }
0013
0014 public:
0015
0016 GsfCombinedMaterialEffectsUpdator(GsfMaterialEffectsUpdator& msUpdator, GsfMaterialEffectsUpdator& elUpdator);
0017
0018
0019 void compute(const TrajectoryStateOnSurface&, const PropagationDirection, Effect[]) const override;
0020
0021 private:
0022
0023 DeepCopyPointerByClone<GsfMaterialEffectsUpdator> theMSUpdator;
0024 DeepCopyPointerByClone<GsfMaterialEffectsUpdator> theELUpdator;
0025 };
0026
0027 #endif