File indexing completed on 2024-04-06 12:20:55
0001 #ifndef L1TMuonEndCap_TrackFinder_h
0002 #define L1TMuonEndCap_TrackFinder_h
0003
0004 #include <array>
0005
0006 #include "FWCore/Framework/interface/Event.h"
0007 #include "FWCore/Framework/interface/EventSetup.h"
0008 #include "FWCore/Framework/interface/ConsumesCollector.h"
0009 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0010
0011 #include "L1Trigger/L1TMuonEndCap/interface/Common.h"
0012 #include "L1Trigger/L1TMuonEndCap/interface/EMTFSetup.h"
0013 #include "L1Trigger/L1TMuonEndCap/interface/EMTFSubsystemCollector.h"
0014 #include "L1Trigger/L1TMuonEndCap/interface/SectorProcessor.h"
0015
0016 class TrackFinder {
0017 public:
0018 explicit TrackFinder(const edm::ParameterSet& iConfig, edm::ConsumesCollector&& iConsumes);
0019 ~TrackFinder();
0020
0021 void process(
0022
0023 const edm::Event& iEvent,
0024 const edm::EventSetup& iSetup,
0025
0026 EMTFHitCollection& out_hits,
0027 EMTFTrackCollection& out_tracks);
0028
0029 private:
0030 EMTFSetup setup_;
0031
0032 emtf::sector_array<SectorProcessor> sector_processors_;
0033
0034
0035 const edm::EDGetToken tokenDTPhi_;
0036 const edm::EDGetToken tokenDTTheta_;
0037 const edm::EDGetToken tokenCSC_;
0038 const edm::EDGetToken tokenCSCComparator_;
0039 const edm::EDGetToken tokenRPC_;
0040 const edm::EDGetToken tokenCPPF_;
0041 const edm::EDGetToken tokenGEM_;
0042 const edm::EDGetToken tokenME0_;
0043
0044 int verbose_;
0045 };
0046
0047 #endif