CMS 3D CMS Logo

L1AnalysisL1UpgradeTfMuon.cc
Go to the documentation of this file.
2 #include <cmath>
4 {
5 }
6 
8 {
9 
10 }
11 
13 {
14  for (int ibx = muon.getFirstBX(); ibx <= muon.getLastBX(); ++ibx) {
15  for (l1t::RegionalMuonCandBxCollection::const_iterator it = muon.begin(ibx); it != muon.end(ibx) && l1upgradetfmuon_.nTfMuons < maxL1UpgradeTfMuon; ++it){
16  if (it->hwPt() > 0) {
17 
18  l1upgradetfmuon_.tfMuonHwPt.push_back(it->hwPt());
19  l1upgradetfmuon_.tfMuonHwEta.push_back(it->hwEta());
20  l1upgradetfmuon_.tfMuonHwPhi.push_back(it->hwPhi());
21  l1upgradetfmuon_.tfMuonGlobalPhi.push_back(l1t::MicroGMTConfiguration::calcGlobalPhi(it->hwPhi(),it->trackFinderType(),it->processor()));
22  l1upgradetfmuon_.tfMuonHwSign.push_back(it->hwSign());
23  l1upgradetfmuon_.tfMuonHwSignValid.push_back(it->hwSignValid());
24  l1upgradetfmuon_.tfMuonHwQual.push_back(it->hwQual());
25  l1upgradetfmuon_.tfMuonLink.push_back(it->link());
26  l1upgradetfmuon_.tfMuonProcessor.push_back(it->processor());
27  l1upgradetfmuon_.tfMuonTrackFinderType.push_back(it->trackFinderType());
28  l1upgradetfmuon_.tfMuonHwHF.push_back(it->hwHF());
29  l1upgradetfmuon_.tfMuonBx.push_back(ibx);
30  std::map<int, int> trAdd;
31  trAdd = it->trackAddress();
32  int wheel = pow(-1,trAdd[0]) * trAdd[1];
33  l1upgradetfmuon_.tfMuonWh.push_back(wheel);
34  l1upgradetfmuon_.tfMuonTrAdd.push_back(trAdd[2]);
35  l1upgradetfmuon_.tfMuonTrAdd.push_back(trAdd[3]);
36  l1upgradetfmuon_.tfMuonTrAdd.push_back(trAdd[4]);
37  l1upgradetfmuon_.tfMuonTrAdd.push_back(trAdd[5]);
38 
39 
41  }
42  }
43  }
44 }
45 
const_iterator end(int bx) const
L1AnalysisL1UpgradeTfMuonDataFormat l1upgradetfmuon_
static int calcGlobalPhi(int locPhi, tftype t, int proc)
int getFirstBX() const
int getLastBX() const
const_iterator begin(int bx) const
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
void SetTfMuon(const l1t::RegionalMuonCandBxCollection &muon, unsigned maxL1UpgradeTfMuon)
std::vector< RegionalMuonCand >::const_iterator const_iterator
Definition: BXVector.h:20