Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:28:59

0001 #ifndef TrackRefitter_h
0002 #define TrackRefitter_h
0003 
0004 /** \class TrackRefitter
0005  *  Refit Tracks: Produce Tracks from TrackCollection. It performs a new final fit on a TrackCollection.
0006  *
0007  *  \author cerati
0008  */
0009 
0010 #include "FWCore/Framework/interface/stream/EDProducer.h"
0011 #include "RecoTracker/TrackProducer/interface/KfTrackProducerBase.h"
0012 #include "RecoTracker/TrackProducer/interface/TrackProducerAlgorithm.h"
0013 
0014 class TrackRefitter : public KfTrackProducerBase, public edm::stream::EDProducer<> {
0015 public:
0016   /// Constructor
0017   explicit TrackRefitter(const edm::ParameterSet& iConfig);
0018 
0019   /// Implementation of produce method
0020   void produce(edm::Event&, const edm::EventSetup&) override;
0021 
0022 private:
0023   TrackProducerAlgorithm<reco::Track> theAlgo;
0024   enum Constraint { none, momentum, vertex, trackParameters };
0025   Constraint constraint_;
0026   edm::EDGetToken trkconstrcoll_;
0027 
0028   const edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> ttopoToken_;
0029 };
0030 
0031 #endif