CMS 3D CMS Logo

GsfPropagatorWithMaterial.h
Go to the documentation of this file.
1 #ifndef GsfPropagatorWithMaterial_h_
2 #define GsfPropagatorWithMaterial_h_
3 
9 
10 class MagneticField;
11 
12 // #include "Utilities/Timing/interface/TimingReport.h"
13 
24 public:
25  // Constructors
33 
35 
38 
41  std::pair<TrajectoryStateOnSurface, double> propagateWithPath(const TrajectoryStateOnSurface&,
42  const Plane&) const override;
43 
46  std::pair<TrajectoryStateOnSurface, double> propagateWithPath(const TrajectoryStateOnSurface&,
47  const Cylinder&) const override;
48 
52  std::pair<TrajectoryStateOnSurface, double> propagateWithPath(const FreeTrajectoryState&,
53  const Plane&) const override;
57  std::pair<TrajectoryStateOnSurface, double> propagateWithPath(const FreeTrajectoryState&,
58  const Cylinder&) const override;
59 
61 
63 
78 
79  GsfPropagatorWithMaterial* clone() const override {
81  }
82 
83  const MagneticField* magneticField() const override { return theGeometricalPropagator->magneticField(); }
84 
85 private:
86  // /// Definition of timers (temporary)
87  // void defineTimer();
89  std::pair<TrajectoryStateOnSurface, double> convoluteWithMaterial(
90  const std::pair<TrajectoryStateOnSurface, double>&) const;
94  bool materialAtSource() const;
95 
96 private:
97  // Geometrical propagator
99  // Material effects & convolution
101  // Use material at source?
103 
104  typedef std::pair<TrajectoryStateOnSurface, double> TsosWP;
105  typedef std::vector<TrajectoryStateOnSurface> MultiTSOS;
106 
107  // static TimingReport::Item* propWithPathTimer1;
108  // static TimingReport::Item* propWithPathTimer2;
109 };
110 
111 #endif
Propagator.h
GsfPropagatorWithMaterial::GsfPropagatorWithMaterial
GsfPropagatorWithMaterial(const Propagator &Propagator, const GsfMaterialEffectsUpdator &MEUpdator)
Definition: GsfPropagatorWithMaterial.cc:11
GsfPropagatorAdapter.h
GsfPropagatorWithMaterial::geometricalPropagator
const Propagator & geometricalPropagator() const
Access to the geometrical propagator.
Definition: GsfPropagatorWithMaterial.h:75
DeepCopyPointerByClone.h
GsfPropagatorWithMaterial::fromDirection
Definition: GsfPropagatorWithMaterial.h:64
GsfPropagatorWithMaterial::materialAtSource
bool materialAtSource() const
Inclusion of material at the source?
Definition: GsfPropagatorWithMaterial.cc:123
GsfPropagatorWithMaterial::MaterialLocation
MaterialLocation
Definition: GsfPropagatorWithMaterial.h:64
GsfPropagatorWithMaterial::setPropagationDirection
void setPropagationDirection(PropagationDirection dir) override
Definition: GsfPropagatorWithMaterial.cc:101
Propagator
Definition: Propagator.h:44
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
DeepCopyPointerByClone< GsfPropagatorAdapter >
GsfPropagatorWithMaterial::convolutionWithMaterial
const FullConvolutionWithMaterial & convolutionWithMaterial() const
Access to the convolutor and thus to the material effects.
Definition: GsfPropagatorWithMaterial.h:77
GsfPropagatorWithMaterial::propagateWithPath
std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const TrajectoryStateOnSurface &, const Plane &) const override
Definition: GsfPropagatorWithMaterial.cc:25
FullConvolutionWithMaterial.h
GsfPropagatorWithMaterial::~GsfPropagatorWithMaterial
~GsfPropagatorWithMaterial() override
Definition: GsfPropagatorWithMaterial.h:34
GsfPropagatorWithMaterial::atDestination
Definition: GsfPropagatorWithMaterial.h:64
GsfPropagatorAdapter::magneticField
const MagneticField * magneticField() const override
Definition: GsfPropagatorAdapter.h:54
AlignmentTrackSelector_cfi.phiMax
phiMax
Definition: AlignmentTrackSelector_cfi.py:17
GsfPropagatorWithMaterial::convoluteStateWithMaterial
TrajectoryStateOnSurface convoluteStateWithMaterial(const TrajectoryStateOnSurface, const PropagationDirection) const
Convolution of state with material effects.
Definition: GsfPropagatorWithMaterial.cc:115
GsfPropagatorWithMaterial::MultiTSOS
std::vector< TrajectoryStateOnSurface > MultiTSOS
Definition: GsfPropagatorWithMaterial.h:105
GsfPropagatorWithMaterial::clone
GsfPropagatorWithMaterial * clone() const override
Definition: GsfPropagatorWithMaterial.h:79
GsfPropagatorWithMaterial::theConvolutor
DeepCopyPointerByClone< FullConvolutionWithMaterial > theConvolutor
Definition: GsfPropagatorWithMaterial.h:100
GsfPropagatorWithMaterial::magneticField
const MagneticField * magneticField() const override
Definition: GsfPropagatorWithMaterial.h:83
GsfPropagatorWithMaterial::convoluteWithMaterial
std::pair< TrajectoryStateOnSurface, double > convoluteWithMaterial(const std::pair< TrajectoryStateOnSurface, double > &) const
Convolution of state+path with material effects.
Definition: GsfPropagatorWithMaterial.cc:106
FullConvolutionWithMaterial
Definition: FullConvolutionWithMaterial.h:15
GsfMaterialEffectsUpdator
Definition: GsfMaterialEffectsUpdator.h:15
Propagator::propagate
TrajectoryStateOnSurface propagate(STA const &state, SUR const &surface) const
Definition: Propagator.h:50
GsfPropagatorWithMaterial::setMaterialLocation
void setMaterialLocation(const MaterialLocation location)
Definition: GsfPropagatorWithMaterial.h:73
GsfPropagatorWithMaterial::atSource
Definition: GsfPropagatorWithMaterial.h:64
FreeTrajectoryState
Definition: FreeTrajectoryState.h:27
GsfPropagatorAdapter::setMaxDirectionChange
bool setMaxDirectionChange(float phiMax) override
Definition: GsfPropagatorAdapter.h:45
GsfPropagatorWithMaterial::theGeometricalPropagator
DeepCopyPointerByClone< GsfPropagatorAdapter > theGeometricalPropagator
Definition: GsfPropagatorWithMaterial.h:98
PropagationDirection
PropagationDirection
Definition: PropagationDirection.h:4
Plane
Definition: Plane.h:16
GsfPropagatorWithMaterial::setMaxDirectionChange
bool setMaxDirectionChange(float phiMax) override
Definition: GsfPropagatorWithMaterial.h:60
Propagator::propagateWithPath
virtual std::pair< TrajectoryStateOnSurface, double > propagateWithPath(const FreeTrajectoryState &, const Surface &) const final
Definition: Propagator.cc:10
EcalCondDBWriter_cfi.location
location
Definition: EcalCondDBWriter_cfi.py:63
Cylinder
Definition: Cylinder.h:19
GsfMaterialEffectsUpdator.h
GsfPropagatorWithMaterial
Definition: GsfPropagatorWithMaterial.h:23
GsfPropagatorWithMaterial::TsosWP
std::pair< TrajectoryStateOnSurface, double > TsosWP
Definition: GsfPropagatorWithMaterial.h:104
GsfPropagatorAdapter
Definition: GsfPropagatorAdapter.h:14
MagneticField
Definition: MagneticField.h:19
GsfPropagatorWithMaterial::theMaterialLocation
MaterialLocation theMaterialLocation
Definition: GsfPropagatorWithMaterial.h:102
DeadROC_duringRun.dir
dir
Definition: DeadROC_duringRun.py:23