16 std::vector<L1MuGMTReadoutRecord> gmt_records = gmtrc->
getRecords();
17 std::vector<L1MuGMTReadoutRecord>::const_iterator igmtrr;
18 for(igmtrr=gmt_records.begin(); igmtrr!=gmt_records.end(); igmtrr++) {
20 std::vector<L1MuRegionalCand>::const_iterator iter1;
21 std::vector<L1MuRegionalCand> rmc;
23 if(igmtrr->getBxInEvent()==0) {
33 rmc = igmtrr->getDTBXCands();
34 for(iter1=rmc.begin(); iter1!=rmc.end(); iter1++) {
35 if ( (
unsigned)
gmt_.
Ndt < maxDTBX && !(*iter1).empty() ) {
38 gmt_.
Etadt.push_back(
float((*iter1).etaValue()));
39 gmt_.
Phidt.push_back(
float((*iter1).phiValue()));
40 gmt_.
Ptdt.push_back(
float((*iter1).ptValue()));
42 gmt_.
Etadt.push_back(
float((*iter1).eta_packed()));
43 gmt_.
Phidt.push_back(
float((*iter1).phi_packed()));
44 gmt_.
Ptdt.push_back(
float((*iter1).pt_packed()));
46 gmt_.
Chadt.push_back((*iter1).chargeValue());
if(!(*iter1).chargeValid())
gmt_.
Chadt.push_back(0);
49 gmt_.
Dwdt.push_back((*iter1).getDataWord());
61 rmc = igmtrr->getCSCCands();
62 for(iter1=rmc.begin(); iter1!=rmc.end(); iter1++) {
63 if ( (
unsigned)
gmt_.
Ncsc < maxCSC && !(*iter1).empty() ) {
72 gmt_.
Ptcsc.push_back((*iter1).pt_packed());
74 gmt_.
Chacsc.push_back((*iter1).chargeValue());
if(!(*iter1).chargeValid())
gmt_.
Chacsc.push_back(0);
76 gmt_.
Dwcsc.push_back((*iter1).getDataWord());
88 rmc = igmtrr->getBrlRPCCands();
89 for(iter1=rmc.begin(); iter1!=rmc.end(); iter1++) {
90 if ( (
unsigned)
gmt_.
Nrpcb < maxRPC && !(*iter1).empty() ) {
103 gmt_.
Dwrpcb.push_back((*iter1).getDataWord());
114 rmc = igmtrr->getFwdRPCCands();
115 for(iter1=rmc.begin(); iter1!=rmc.end(); iter1++) {
116 if ( (
unsigned)
gmt_.
Nrpcf < maxRPC && !(*iter1).empty() ) {
129 gmt_.
Dwrpcf.push_back((*iter1).getDataWord());
139 std::vector<L1MuGMTExtendedCand>::const_iterator gmt_iter;
140 std::vector<L1MuGMTExtendedCand> exc = igmtrr->getGMTCands();
141 for(gmt_iter=exc.begin(); gmt_iter!=exc.end(); gmt_iter++) {
142 if ( (
unsigned)
gmt_.
N < maxGMT && !(*gmt_iter).empty() ) {
145 gmt_.
Eta.push_back((*gmt_iter).etaValue());
146 gmt_.
Phi.push_back((*gmt_iter).phiValue());
147 gmt_.
Pt.push_back((*gmt_iter).ptValue());
149 gmt_.
Eta.push_back((*gmt_iter).etaIndex());
150 gmt_.
Phi.push_back((*gmt_iter).phiIndex());
151 gmt_.
Pt.push_back((*gmt_iter).ptIndex());
153 gmt_.
Cha.push_back((*gmt_iter).charge());
if(!(*gmt_iter).charge_valid())
gmt_.
Cha.push_back(0);
154 gmt_.
Qual.push_back((*gmt_iter).quality());
155 gmt_.
Det.push_back((*gmt_iter).detector());
156 gmt_.
Rank.push_back((*gmt_iter).rank());
157 gmt_.
Isol.push_back((*gmt_iter).isol());
158 gmt_.
Mip.push_back((*gmt_iter).mip());
159 gmt_.
Dw.push_back((*gmt_iter).getDataWord());
166 if ( (*gmt_iter).isMatchedCand() || (*gmt_iter).isRPC() ) {
167 if((*gmt_iter).isFwd()) {
174 if ( (*gmt_iter).isMatchedCand() || ( !(*gmt_iter).isRPC() ) ) {
175 if ( (*gmt_iter).isFwd() ) {
176 gmt_.
IdxCSC.back() = (*gmt_iter).getDTCSCIndex();
L1AnalysisGMTDataFormat gmt_
std::vector< L1MuGMTReadoutRecord > const & getRecords() const
void Set(const L1MuGMTReadoutCollection *gmtrc, unsigned maxDTBX, unsigned maxCSC, unsigned maxRPC, unsigned maxGMT, bool physVal)