File indexing completed on 2024-04-06 12:31:42
0001 #ifndef TrackingTools_ESProducers_TransientTrackBuilderESProducer_h
0002 #define TrackingTools_ESProducers_TransientTrackBuilderESProducer_h
0003
0004 #include "FWCore/Framework/interface/ESProducer.h"
0005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0006
0007 #include "TrackingTools/Records/interface/TransientTrackRecord.h"
0008 #include "TrackingTools/TransientTrack/interface/TransientTrackBuilder.h"
0009
0010 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
0011 #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h"
0012
0013 #include <memory>
0014
0015 class TransientTrackBuilderESProducer : public edm::ESProducer {
0016 public:
0017 TransientTrackBuilderESProducer(const edm::ParameterSet &p);
0018
0019 std::unique_ptr<TransientTrackBuilder> produce(const TransientTrackRecord &);
0020
0021 static void fillDescriptions(edm::ConfigurationDescriptions &descriptions);
0022
0023 private:
0024 edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> magToken_;
0025 edm::ESGetToken<GlobalTrackingGeometry, GlobalTrackingGeometryRecord> geomToken_;
0026 };
0027
0028 #endif