File indexing completed on 2024-09-07 04:37:00
0001 #ifndef L1T_OmtfP1_L1TMuonOverlapPhase1TrackProducer_H
0002 #define L1T_OmtfP1_L1TMuonOverlapPhase1TrackProducer_H
0003
0004 #include "L1Trigger/L1TMuonOverlapPhase1/interface/Omtf/OMTFReconstruction.h"
0005
0006 #include "DataFormats/L1TMuon/interface/RegionalMuonCand.h"
0007 #include "DataFormats/L1TMuon/interface/RegionalMuonCandFwd.h"
0008
0009 #include "FWCore/Framework/interface/Frameworkfwd.h"
0010 #include "FWCore/Framework/interface/Event.h"
0011 #include "FWCore/Framework/interface/EventSetup.h"
0012 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0013 #include "FWCore/Framework/interface/one/EDProducer.h"
0014
0015 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambPhContainer.h"
0016 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambThContainer.h"
0017 #include "DataFormats/CSCDigi/interface/CSCCorrelatedLCTDigiCollection.h"
0018 #include "DataFormats/RPCDigi/interface/RPCDigiCollection.h"
0019
0020
0021
0022
0023
0024
0025
0026 class L1TMuonOverlapPhase1TrackProducer : public edm::one::EDProducer<edm::one::WatchRuns> {
0027 public:
0028 L1TMuonOverlapPhase1TrackProducer(const edm::ParameterSet&);
0029
0030 ~L1TMuonOverlapPhase1TrackProducer() override;
0031
0032 void beginJob() override;
0033
0034 void endJob() override;
0035
0036 void beginRun(edm::Run const& run, edm::EventSetup const& iSetup) override;
0037
0038 void endRun(edm::Run const& run, edm::EventSetup const& iSetup) override {}
0039
0040 void produce(edm::Event&, const edm::EventSetup&) override;
0041
0042 private:
0043
0044
0045 MuStubsInputTokens muStubsInputTokens;
0046
0047 edm::ESGetToken<L1TMuonOverlapParams, L1TMuonOverlapParamsRcd> omtfParamsEsToken;
0048
0049
0050 MuonGeometryTokens muonGeometryTokens;
0051
0052
0053 edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> magneticFieldEsToken;
0054 edm::ESGetToken<Propagator, TrackingComponentsRecord> propagatorEsToken;
0055
0056 OMTFReconstruction omtfReconstruction;
0057 };
0058
0059 #endif