CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GsfTrajectorySmoother.h
Go to the documentation of this file.
1 #ifndef GsfTrajectorySmoother_H_
2 #define GsfTrajectorySmoother_H_
3 
14 
16 
22 
23 private:
24 
27 
28 public:
29 
34  const TrajectoryStateUpdator& aUpdator,
35  const MeasurementEstimator& aEstimator,
36  const MultiTrajectoryStateMerger& merger,
37  float errorRescaling,
38  const bool materialBeforeUpdate = true,
39  const DetLayerGeometry* detLayerGeometry=0);
40 
41  virtual ~GsfTrajectorySmoother();
42 
43  virtual Trajectory trajectory(const Trajectory& aTraj) const;
44 
48  const Propagator* propagator() const {
49  if ( thePropagator) return thePropagator;
50  else return theGeomPropagator;
51  }
52  const TrajectoryStateUpdator* updator() const {return theUpdator;}
53  const MeasurementEstimator* estimator() const {return theEstimator;}
54 
55  virtual GsfTrajectorySmoother* clone() const
56  {
57  return new GsfTrajectorySmoother(*thePropagator,*theUpdator,*theEstimator,
58  *theMerger,theErrorRescaling,theMatBeforeUpdate,theGeometry);
59  }
60 
61 private:
65  const TrajectoryStateUpdator* theUpdator;
66  const MeasurementEstimator* theEstimator;
67  const MultiTrajectoryStateMerger* theMerger;
68 
69  bool theTiming;
72 
73  const DetLayerGeometry dummyGeometry;
74  const DetLayerGeometry* theGeometry;
75 
76 };
77 
78 #endif //TR_GsfTrajectorySmoother_H_
const TrajectoryStateUpdator * updator() const
GsfPropagatorWithMaterial * thePropagator
const FullConvolutionWithMaterial * theConvolutor
TrajectoryMeasurement TM
const GsfPropagatorAdapter * theGeomPropagator
virtual Trajectory trajectory(const Trajectory &) const =0
virtual GsfTrajectorySmoother * clone() const
TrajectoryStateOnSurface TSOS
const MeasurementEstimator * estimator() const
const Propagator * propagator() const
Unlimited (trivial) bounds.