File indexing completed on 2024-04-06 12:20:49
0001 #ifndef L1TMUONBARRELKALMANSTUBPROCESSOR
0002 #define L1TMUONBARRELKALMANSTUBPROCESSOR
0003
0004 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambPhDigi.h"
0005 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambPhContainer.h"
0006 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambThDigi.h"
0007 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambThContainer.h"
0008 #include "DataFormats/L1TMuon/interface/L1MuKBMTCombinedStub.h"
0009 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0010 #include "CondFormats/L1TObjects/interface/L1TMuonBarrelParams.h"
0011 #include "CondFormats/DataRecord/interface/L1TMuonBarrelParamsRcd.h"
0012
0013 class L1MuDTTFMasks;
0014
0015 class L1TMuonBarrelKalmanStubProcessor {
0016 public:
0017 L1TMuonBarrelKalmanStubProcessor();
0018 L1TMuonBarrelKalmanStubProcessor(const edm::ParameterSet&);
0019
0020 ~L1TMuonBarrelKalmanStubProcessor();
0021
0022 L1MuKBMTCombinedStubCollection makeStubs(const L1MuDTChambPhContainer*,
0023 const L1MuDTChambThContainer*,
0024 const L1TMuonBarrelParams&);
0025 void makeInputPattern(const L1MuDTChambPhContainer* phiContainer,
0026 const L1MuDTChambThContainer* etaContainer,
0027 int sector);
0028
0029 private:
0030 bool isGoodPhiStub(const L1MuDTChambPhDigi*);
0031 L1MuKBMTCombinedStub buildStub(const L1MuDTChambPhDigi&, const L1MuDTChambThDigi*);
0032 L1MuKBMTCombinedStub buildStubNoEta(const L1MuDTChambPhDigi&);
0033
0034 int calculateEta(uint, int, uint, uint);
0035 int minPhiQuality_;
0036 int minBX_;
0037 int maxBX_;
0038 std::vector<int> eta1_;
0039 std::vector<int> eta2_;
0040 std::vector<int> eta3_;
0041
0042 bool disableMasks_;
0043 int verbose_;
0044
0045
0046
0047 };
0048
0049 #endif