Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:20:53

0001 #include "L1Trigger/L1TMuonBarrel/interface/L1TMuonBarrelKalmanTrackFinder.h"
0002 
0003 L1TMuonBarrelKalmanTrackFinder::L1TMuonBarrelKalmanTrackFinder(const edm::ParameterSet& iConfig)
0004     : verbose_(iConfig.getParameter<int>("verbose")) {
0005   std::vector<int> sectors = iConfig.getParameter<std::vector<int> >("sectorsToProcess");
0006   for (const auto sector : sectors)
0007     sectors_.push_back(
0008         L1TMuonBarrelKalmanSectorProcessor(iConfig.getParameter<edm::ParameterSet>("sectorSettings"), sector));
0009 }
0010 
0011 L1TMuonBarrelKalmanTrackFinder::~L1TMuonBarrelKalmanTrackFinder() {}
0012 
0013 L1MuKBMTrackCollection L1TMuonBarrelKalmanTrackFinder::process(L1TMuonBarrelKalmanAlgo* trackMaker,
0014                                                                const L1MuKBMTCombinedStubRefVector& stubsAll,
0015                                                                int bx) {
0016   L1MuKBMTrackCollection pretracks;
0017   for (auto& sector : sectors_) {
0018     L1MuKBMTrackCollection tmp = sector.process(trackMaker, stubsAll, bx);
0019     if (!tmp.empty())
0020       pretracks.insert(pretracks.end(), tmp.begin(), tmp.end());
0021   }
0022   if (verbose_) {
0023     printf(" -----Track Finder Kalman Tracks (Uncleaned!)-----\n");
0024     for (const auto& track1 : pretracks)
0025       printf("Kalman Track charge=%d pt=%f eta=%f phi=%f curvature=%d curvature STA =%d stubs=%d chi2=%d pts=%f %f\n",
0026              track1.charge(),
0027              track1.pt(),
0028              track1.eta(),
0029              track1.phi(),
0030              track1.curvatureAtVertex(),
0031              track1.curvatureAtMuon(),
0032              int(track1.stubs().size()),
0033              track1.approxChi2(),
0034              track1.pt(),
0035              track1.ptUnconstrained());
0036   }
0037   return pretracks;
0038 }