44 for (
int ibx=-1; ibx<=1; ibx++) {
53 int psb_ett = psb2.
aData(4);
54 int ett_rank = psb_ett & 0xfff;
58 int psb_htt = psb2.
bData(4);
59 int htt_rank = psb_htt & 0xfff;
63 int psb_etmis = psb2.
aData(5);
64 int etmis_rank = psb_etmis & 0xfff;
65 int psb_etmis_phi = psb2.
bData(5) & 0x7F ;
70 int psb_htmis = psb2.
aData(3);
71 int htmis_rank = (psb_htmis >> 5) & 0x7f;
72 int htmis_phi = psb_htmis & 0x1F ;
75 gt_.
OvHTM = (psb_htmis >> 12) & 0x1 ;
81 std::vector<int> psbel;
82 psbel.push_back(psb.
aData(4));
83 psbel.push_back(psb.
aData(5));
84 psbel.push_back(psb.
bData(4));
85 psbel.push_back(psb.
bData(5));
86 std::vector<int>::const_iterator ipsbel;
87 for(ipsbel=psbel.begin(); ipsbel!=psbel.end(); ipsbel++) {
88 float rank = (*ipsbel)&0x3f;
92 gt_.
Phiel.push_back(((*ipsbel)>>10)&0x1f);
93 gt_.
Etael.push_back(( ((*ipsbel>>9)&1) ? 10-(((*ipsbel)>>6)&7) : (((*ipsbel)>>6)&7)+11 ));
98 psbel.push_back(psb.
aData(6));
99 psbel.push_back(psb.
aData(7));
100 psbel.push_back(psb.
bData(6));
101 psbel.push_back(psb.
bData(7));
102 for(ipsbel=psbel.begin(); ipsbel!=psbel.end(); ipsbel++) {
103 float rank = (*ipsbel)&0x3f;
107 gt_.
Phiel.push_back(((*ipsbel)>>10)&0x1f);
108 gt_.
Etael.push_back(( ((*ipsbel>>9)&1) ? 10-(((*ipsbel)>>6)&7) : (((*ipsbel)>>6)&7)+11 ));
115 std::vector<int> psbjet;
116 psbjet.push_back(psb.
aData(2));
117 psbjet.push_back(psb.
aData(3));
118 psbjet.push_back(psb.
bData(2));
119 psbjet.push_back(psb.
bData(3));
120 std::vector<int>::const_iterator ipsbjet;
121 for(ipsbjet=psbjet.begin(); ipsbjet!=psbjet.end(); ipsbjet++) {
122 float rank = (*ipsbjet)&0x3f;
126 gt_.
Phijet.push_back(((*ipsbjet)>>10)&0x1f);
127 gt_.
Etajet.push_back(( ((*ipsbjet>>9)&1) ? 10-(((*ipsbjet)>>6)&7) : (((*ipsbjet)>>6)&7)+11 ));
135 psbjet.push_back(psb2.
aData(6));
136 psbjet.push_back(psb2.
aData(7));
137 psbjet.push_back(psb2.
bData(6));
138 psbjet.push_back(psb2.
bData(7));
139 for(ipsbjet=psbjet.begin(); ipsbjet!=psbjet.end(); ipsbjet++) {
140 float rank = (*ipsbjet)&0x3f;
144 gt_.
Phijet.push_back(((*ipsbjet)>>10)&0x1f);
145 gt_.
Etajet.push_back(( ((*ipsbjet>>9)&1) ? 10-(((*ipsbjet)>>6)&7) : (((*ipsbjet)>>6)&7)+11 ));
154 psbjet.push_back(psb.
aData(0));
155 psbjet.push_back(psb.
aData(1));
156 psbjet.push_back(psb.
bData(0));
157 psbjet.push_back(psb.
bData(1));
158 for(ipsbjet=psbjet.begin(); ipsbjet!=psbjet.end(); ipsbjet++) {
159 float rank = (*ipsbjet)&0x3f;
163 gt_.
Phijet.push_back(((*ipsbjet)>>10)&0x1f);
164 gt_.
Etajet.push_back(( ((*ipsbjet>>9)&1) ? 3-(((*ipsbjet)>>6)&7) : (((*ipsbjet)>>6)&7)+18 ));
183 for(
int iebx=0; iebx<5; iebx++)
189 DecisionWord::const_iterator GTdbitItr;
190 for(GTdbitItr = gtDecisionWord.begin(); GTdbitItr != gtDecisionWord.end(); GTdbitItr++) {
192 if(dbitNumber<64) {
gt_.
tw1[iebx] |= (1LL<<dbitNumber); }
193 else {
gt_.
tw2[iebx] |= (1LL<<(dbitNumber-64)); }
200 TechnicalTriggerWord::const_iterator GTtbitItr;
201 for(GTtbitItr = gtTTWord.begin(); GTtbitItr != gtTTWord.end(); GTtbitItr++) {
203 gt_.
tt[iebx] |= (1LL<<dbitNumber);
const cms_uint16_t bData(int iB) const
get/set B_DATA_CH_IB
const TechnicalTriggerWord & technicalTriggerWord(int bxInEventValue) const
const cms_uint16_t aData(int iA) const
get/set A_DATA_CH_IA
std::vector< bool > DecisionWord
typedefs
std::vector< bool > TechnicalTriggerWord
technical trigger bits (64 bits)
const L1GtPsbWord gtPsbWord(cms_uint16_t boardIdValue, int bxInEventValue) const
get / set PSB word (record) in the GT readout record
const DecisionWord & decisionWord(int bxInEventValue) const
const L1GtFdlWord gtFdlWord(int bxInEventValue) const
get / set FDL word (record) in the GT readout record
L1AnalysisGTDataFormat gt_