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 }
0046
0047 #endif