Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:27:58

0001 #ifndef CkfTrackCandidateMaker_h
0002 #define CkfTrackCandidateMaker_h
0003 
0004 #include "FWCore/Framework/interface/stream/EDProducer.h"
0005 #include "FWCore/Framework/interface/Event.h"
0006 #include "FWCore/Framework/interface/EventSetup.h"
0007 
0008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0009 
0010 #include "TrackingTools/TrajectoryCleaning/interface/TrajectoryCleaner.h"
0011 
0012 #include "MagneticField/Engine/interface/MagneticField.h"
0013 #include "TrackingTools/DetLayers/interface/NavigationSchool.h"
0014 #include "RecoTracker/TkDetLayers/interface/GeometricSearchTracker.h"
0015 
0016 #include "RecoTracker/CkfPattern/interface/RedundantSeedCleaner.h"
0017 #include "RecoTracker/CkfPattern/interface/CkfTrackCandidateMakerBase.h"
0018 #include "DataFormats/TrackCandidate/interface/TrackCandidateCollection.h"
0019 #include "DataFormats/TrackReco/interface/SeedStopInfo.h"
0020 
0021 class TransientInitialStateEstimator;
0022 
0023 namespace cms {
0024   class dso_internal CkfTrackCandidateMaker : public edm::stream::EDProducer<>, public CkfTrackCandidateMakerBase {
0025   public:
0026     explicit CkfTrackCandidateMaker(const edm::ParameterSet& conf)
0027         : CkfTrackCandidateMakerBase(conf, consumesCollector()) {
0028       produces<TrackCandidateCollection>();
0029       produces<std::vector<SeedStopInfo> >();
0030     }
0031 
0032     ~CkfTrackCandidateMaker() override { ; }
0033 
0034     static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) {
0035       edm::ParameterSetDescription desc;
0036       desc.setComment("Make Ckf track candidates");
0037       CkfTrackCandidateMakerBase::fillPSetDescription(desc);
0038       descriptions.addWithDefaultLabel(desc);
0039     }
0040 
0041     void beginRun(edm::Run const& r, edm::EventSetup const& es) override { beginRunBase(r, es); }
0042 
0043     void produce(edm::Event& e, const edm::EventSetup& es) override { produceBase(e, es); }
0044   };
0045 }  // namespace cms
0046 
0047 #endif