Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:29:13

0001 #ifndef ParticleKinematicLinearizedTrackStateFactory_H
0002 #define ParticleKinematicLinearizedTrackStateFactory_H
0003 
0004 #include "RecoVertex/VertexPrimitives/interface/LinearizedTrackState.h"
0005 #include "DataFormats/GeometrySurface/interface/ReferenceCounted.h"
0006 #include "RecoVertex/KinematicFitPrimitives/interface/ParticleKinematicLinearizedTrackState.h"
0007 #include "RecoVertex/VertexTools/interface/AbstractLTSFactory.h"
0008 
0009 class ParticleKinematicLinearizedTrackStateFactory : public AbstractLTSFactory<6> {
0010   /**
0011  * Class building LinearizedTrackState needed for
0012  * Kalman based vertex fit out of track(helix like) KinematicParticle
0013  */
0014 
0015 public:
0016   /**
0017  * Method constructing KinearizedTrackState out of
0018  * KinematicParticle and Linearization point.
0019  */
0020   RefCountedLinearizedTrackState linearizedTrackState(const GlobalPoint& linP, RefCountedKinematicParticle& prt) const;
0021 
0022   RefCountedLinearizedTrackState linearizedTrackState(const GlobalPoint& linP,
0023                                                       const reco::TransientTrack& track) const override;
0024 
0025   RefCountedLinearizedTrackState linearizedTrackState(const GlobalPoint& linP,
0026                                                       const reco::TransientTrack& track,
0027                                                       const TrajectoryStateOnSurface& tsos) const override;
0028 
0029   const ParticleKinematicLinearizedTrackStateFactory* clone() const override;
0030 };
0031 #endif