ATLAS Offline Software
TGCSector.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "TrigT1TGC/TGCSector.h"
12 #include "TrigT1TGC/TGCASDOut.h"
17 #include "TrigT1TGC/TGCInnerSB.h"
23 
24 
25 #include <iostream>
26 
27 #include "GaudiKernel/ISvcLocator.h"
28 #include "GaudiKernel/Bootstrap.h"
29 #include "GaudiKernel/MsgStream.h"
30 #include "GaudiKernel/IMessageSvc.h"
31 
32 namespace LVL1TGCTrigger {
33 
35 {
36  int idPP,conPP,chPP;
37 
38  TGCSignalType signalType = ASDOut->GetSignalType();
39 
40  TGCReadoutIndex readoutIndex;
41  readoutIndex = ASDOut->GetTGCReadoutIndex();
42 
43  int layer = readoutIndex.GetLayerNumber();
44  int rNumber = readoutIndex.GetRNumber();
45  int ch = ASDOut->GetHitID();
46 
47  int PPType = getPatchPanelType(signalType,layer);
48  int notFound;
49  if (PPType<0){
50  notFound = -1;
51  } else {
52  notFound = m_ASDToPP[PPType]->getConnection(m_sideId,layer,rNumber,ch,&idPP,&conPP,&chPP);
53  }
54 
55  if (tgcArgs()->MSGLEVEL() <= MSG::DEBUG) {
56  IMessageSvc* msgSvc = 0;
57  ISvcLocator* svcLocator = Gaudi::svcLocator();
58  if (svcLocator->service("MessageSvc", msgSvc) == StatusCode::FAILURE) {
59  return -1;
60  };
61  MsgStream log(msgSvc, "LVL1TGCTrigger::TGCSector");
62  if (!notFound) {
63  log << MSG::DEBUG
64  << "signalType= " << ((signalType == WIRE) ? "Wire" : "Strip")
65  <<" layer= " <<layer <<" rNumber= " <<rNumber <<" ch= "<< ch
66  <<"id(PP)= " <<idPP <<" connector(PP)= " <<conPP <<" ch(PP)= " <<chPP
67  <<endmsg;
68  }
69  }
70 
71  if(!notFound){
72  m_PP[PPType][idPP]->setASDOut(chPP,conPP,ASDOut);
73  m_numberOfHit+=1;
74  return 0;
75  }
76  return -1;
77 }
78 
80 {
81  if((layer>=0)&&(layer<=2)){
82  if (signal == WIRE) return WTPP;
83  else return STPP;
84  } else if((layer>=3)&&(layer<=6)){
85  if (signal == WIRE) return WDPP;
86  else return SDPP;
87  } else if (layer<=8) {
88  if (signal == WIRE) return WIPP;
89  else return SIPP;
90  } else {
91  return NOPP;
92  }
93 }
94 
96 : m_regionType(TGCRegionType::FORWARD),
97  m_numberOfHit(0),
98  m_octantId(0), m_moduleId(0),
99  m_forwardBackward(ForwardSector),
100  m_SL(0), m_TMDB(0), m_NSW(0),m_BIS78(0),
101  m_tgcArgs(nullptr), m_dbMgr(nullptr)
102 {
103  for(unsigned int iPatchPanelType=0; iPatchPanelType<NumberOfPatchPanelType; iPatchPanelType++) {
104  m_ASDToPP[iPatchPanelType] = 0;
105  m_PP[iPatchPanelType].clear();
106  }
107  for(unsigned int iSlaveBoardType=0; iSlaveBoardType<NumberOfSlaveBoardType; iSlaveBoardType++) {
108  m_SB[iSlaveBoardType].clear();
109  }
110  for(unsigned int iHighPtBoardType=0; iHighPtBoardType<NumberOfHighPtBoardType; iHighPtBoardType++) {
111  m_HPB[iHighPtBoardType].clear();
112  }
113 }
114 
116  int idIn, TGCRegionType type,
117  TGCForwardBackwardType forwardBackward,
118  const TGCDatabaseManager* db,
119  std::shared_ptr<const LVL1TGC::TGCTMDB> tm,
120  std::shared_ptr<const LVL1TGC::TGCNSW> nsw,
121  std::shared_ptr<const LVL1TGC::TGCBIS78> bis78)
122  : m_id(idIn), m_regionType(type), m_numberOfHit(0),
123  m_TMDB(tm), m_NSW(nsw), m_BIS78(bis78),
124  m_tgcArgs(tgcargs), m_dbMgr(db)
125 {
126  m_sideId = static_cast<LVL1TGC::TGCSide>(idIn / NumberOfModule / NumberOfOctant);
128  m_moduleId = idIn%NumberOfModule;
129  m_forwardBackward = forwardBackward;
130 
131  int i;
132  if (m_moduleId < 9) {
133  for( i=0; i<=SDPP; i+=1) {
134  m_ASDToPP[i] = db->getConnectionASDToPP((TGCRegionType)m_regionType, i, forwardBackward);
135  }
136  for( i=WIPP; i<NumberOfPatchPanelType; i+=1) m_ASDToPP[i]=0;
137  } else {
138  // Inner Module
139  for( i=0; i<=SDPP; i+=1) m_ASDToPP[i]=0;
140  for( i=WIPP; i<NumberOfPatchPanelType; i+=1) {
141  m_ASDToPP[i] = db->getConnectionASDToPP((TGCRegionType)m_regionType, i, forwardBackward);
142  }
143  }
144 
145  const TGCConnectionPPToSL* PPToSL = db->getConnectionPPToSL(m_regionType);
146  // make PatchPanel Boards, Slave Boards, HighPt Boards, SectorLogic.
147  setModule(PPToSL);
148  // dumpModule();
149 
150  if (m_moduleId < 9) {
151  // set TMDB
152  m_SL->setTMDB(m_TMDB);
153 
154  // set NSW
155  m_SL->setNSW(m_NSW);
156 
157  // set BIS78
159  }
160 
161  // set connection between boards;
162  connectPPToSB(PPToSL->getPPToSB());
163  if (m_moduleId < 9) {
165  connectSBToHPB(PPToSL->getSBToHPB());
166  connectHPBToSL(PPToSL->getHPBToSL());
168  }
169 }
170 
172 {
173  if (m_moduleId <9) { // BW Sectors
174  // PP ASIC
175  for (int jpp=0; jpp <= SDPP; jpp++) {
176  m_PP[jpp].resize(connection->getPPToSB()->getNumber(jpp));
177  for (unsigned int i=0; i < m_PP[jpp].size(); i++) {
178  if (jpp==WTPP) { m_PP[jpp][i] = new TGCWireTripletPP(tgcArgs()); }
179  else if(jpp==WDPP) { m_PP[jpp][i] = new TGCWireDoubletPP(tgcArgs()); }
180  else if(jpp==STPP) { m_PP[jpp][i] = new TGCStripTripletPP(tgcArgs());}
181  else if(jpp==SDPP) { m_PP[jpp][i] = new TGCStripDoubletPP(tgcArgs());}
182  m_PP[jpp][i]->setId(connection->getPPToSB()->getId(jpp,i));
183  m_PP[jpp][i]->setType(jpp);
184  m_PP[jpp][i]->setRegion(m_regionType);
185  }
186  }
187  for (int jpp=WIPP; jpp<NumberOfPatchPanelType; jpp++) {
188  m_PP[jpp].clear();
189  }
190 
191  // SLB
192  for (int jsb=0; jsb <= SDSB; jsb++) {
193  m_SB[jsb].resize(connection->getSBToHPB()->getNumber(jsb));
194  for (unsigned int i=0; i < m_SB[jsb].size(); i++) {
195  if (jsb == WTSB) { m_SB[jsb][i] = new TGCWireTripletSB(); }
196  else if (jsb == WDSB) { m_SB[jsb][i] = new TGCWireDoubletSB(); }
197  else if (jsb == STSB) { m_SB[jsb][i] = new TGCStripTripletSB();}
198  else if (jsb == SDSB) { m_SB[jsb][i] = new TGCStripDoubletSB();}
199  m_SB[jsb][i]->setId(connection->getSBToHPB()->getId(jsb,i));
200  m_SB[jsb][i]->setType(jsb);
201  m_SB[jsb][i]->setRegion(m_regionType);
202  }
203  }
204  for (int jsb=WISB; jsb < NumberOfSlaveBoardType; jsb++) {
205  m_SB[jsb].clear();
206  }
207 
208  // HPT
209  for (int jhp=0; jhp<NumberOfHighPtBoardType; jhp++) {
210  m_HPB[jhp].resize(connection->getHPBToSL()->getNumber(jhp));
211  for (unsigned int i=0; i < m_HPB[jhp].size(); i++) {
212  if(jhp == WHPB) m_HPB[jhp][i] = new TGCWireHighPtBoard;
213  if(jhp == SHPB) m_HPB[jhp][i] = new TGCStripHighPtBoard;
214  m_HPB[jhp][i]->setId(connection->getHPBToSL()->getId(jhp,i));
215  m_HPB[jhp][i]->setType(jhp);
216  m_HPB[jhp][i]->setRegion(m_regionType);
217  }
218  }
219 
220  // Sector Logic
223  } else { // Inner Small Wheel
224  // PP ASIC
225  for (int jpp=0; jpp <= SDPP; jpp++) {
226  m_PP[jpp].clear();
227  }
228  for (int jpp=WIPP; jpp < NumberOfPatchPanelType; jpp++) {
229  m_PP[jpp].resize(connection->getPPToSB()->getNumber(jpp));
230  for (unsigned int i=0; i < m_PP[jpp].size(); i++) {
231  if (jpp == WIPP) { m_PP[jpp][i] = new TGCWireInnerPP(tgcArgs()); }
232  else if (jpp == SIPP) { m_PP[jpp][i] = new TGCStripInnerPP(tgcArgs()); }
233  m_PP[jpp][i]->setId(connection->getPPToSB()->getId(jpp,i));
234  m_PP[jpp][i]->setType(jpp);
235  m_PP[jpp][i]->setRegion(m_regionType);
236  }
237  }
238 
239  // SLB
240  for (int jsb=0; jsb<=SDSB; jsb+=1) {
241  m_SB[jsb].clear();
242  }
243  for (int jsb=WISB; jsb<NumberOfSlaveBoardType; jsb++) {
244  m_SB[jsb].resize(1);
245  m_SB[jsb][0] = new TGCInnerSB();
246  m_SB[jsb][0]->setType(jsb);
247  m_SB[jsb][0]->setRegion(m_regionType);
248  m_SB[jsb][0]->setId(0);
249  }
250 
251  // HPT
252  for(int jhp=0; jhp<NumberOfHighPtBoardType; jhp+=1){
253  m_HPB[jhp].clear();
254  }
255 
256  // no specific Sector Logic
257  m_SL = 0;
258  }
259 }
260 
262 {
263  int iPort;
264  int startType, endType;
265  if (m_moduleId <9) {
266  startType =0;
267  endType = SDPP;
268  } else {
269  startType = WIPP;
270  endType = SIPP;
271  }
272 
273  // set a Slave Board ID to connect for each Patch Panel.
274  // find the Slave Board and give a pointer of the Patch Panel to it.
275  for (int i=startType; i <= endType; i++) {
276 #ifdef TGCDEBUG
277  std::cerr << "connectionPPToSB :"
278  << " module:" << m_moduleId
279  << " type: " << i
280  << " #PP=" << m_PP[i].size()
281  << " #SB=" << m_SB[i].size()
282  << std::endl;
283 #endif
284  for(unsigned int iPP = 0; iPP < m_PP[i].size(); iPP++) {
285  for ( iPort = 0; iPort < connection->getNumberOfPort(); iPort += 1) {
286  m_PP[i][iPP]->setIdSlaveBoard(iPort,connection->getSBIdToPP(i,iPort,iPP));
287  for (unsigned int iSB = 0; iSB < m_SB[i].size(); iSB++) {
288  if (m_PP[i][iPP]->getIdSlaveBoard(iPort) == m_SB[i][iSB]->getId()) {
289  m_SB[i][iSB]->setPatchPanel(m_PP[i][iPP]);
290  break;
291  }
292  } // m_SB loop
293  } // Port loop
294  } // m_PP loop
295  } // type loop
296 
297 }
298 
299 
301 {
302  for (unsigned int iPP = 1; iPP < m_PP[WDPP].size(); iPP++) {
303  m_PP[WDPP][iPP-1]->setAdjacentPP(1,m_PP[WDPP][iPP]);
304  m_PP[WDPP][iPP]->setAdjacentPP(0,m_PP[WDPP][iPP-1]);
305  }
306 
307  for (unsigned int iPP = 1; iPP < m_PP[WTPP].size(); iPP++) {
308  m_PP[WTPP][iPP-1]->setAdjacentPP(1,m_PP[WTPP][iPP]);
309  m_PP[WTPP][iPP]->setAdjacentPP(0,m_PP[WTPP][iPP-1]);
310  }
311 
312  for (unsigned int iPP = 1; iPP < m_PP[STPP].size(); iPP++) {
313  m_PP[STPP][iPP-1]->setAdjacentPP(1,m_PP[STPP][iPP]);
314  m_PP[STPP][iPP]->setAdjacentPP(0,m_PP[STPP][iPP-1]);
315  }
316 
317  for (unsigned int iPP = 1; iPP < m_PP[SDPP].size(); iPP++) {
318  m_PP[SDPP][iPP-1]->setAdjacentPP(1,m_PP[SDPP][iPP]);
319  m_PP[SDPP][iPP]->setAdjacentPP(0,m_PP[SDPP][iPP-1]);
320  }
321 
322  for (int i=0; i<=SDPP; i++) {
323  for (TGCPatchPanel* ppasic : m_PP[i]) {
324  ppasic->connect();
325  }
326  }
327 }
328 
330 {
331  for (int i=0; i < NumberOfSlaveBoardType; i++) {
332  if ( i==WISB ) continue; // Inner m_SB is not connected to m_HPB
333  if ( i==SISB ) continue; // Inner m_SB is not connected to m_HPB
334 
335  for (unsigned int iSB = 0; iSB < m_SB[i].size(); iSB++) {
336  m_SB[i][iSB]->setIdHighPtBoard(connection->getHPBIdToSB(i,iSB));
337  int type = i/2; // ! assume HighPtBoardType=SlaveBoardType/2
338  for (unsigned int iHPB = 0; iHPB < m_HPB[type].size(); iHPB += 1){
339  if ( m_SB[i][iSB]->getIdHighPtBoard() == m_HPB[type].at(iHPB)->getId()) {
340  if((i==WDSB)||(i==SDSB))
341  m_HPB[type].at(iHPB)->setDSB(connection->getHPBPortToSB(i,iSB),m_SB[i][iSB]);
342  else if((i==WTSB)||(i==STSB))
343  m_HPB[type].at(iHPB)->setTSB(connection->getHPBPortToSB(i,iSB),m_SB[i][iSB]);
344  break;
345  }
346  }
347  }
348  }
349 }
350 
352 {
353  if (!m_SL) return;
354 
355  // set pointers of HighPtBoard to connect to SectorLogic
356  for (unsigned int iHPB = 0; iHPB < m_HPB[WHPB].size(); iHPB++){
357  m_SL->setWireHighPtBoard(connection->getSLPortToHPB(WHPB,iHPB), m_HPB[WHPB].at(iHPB));
358  }
359  for (unsigned int iHPB = 0; iHPB < m_HPB[SHPB].size(); iHPB++) {
360  m_SL->setStripHighPtBoard(m_HPB[SHPB].at(iHPB));
361  }
362 }
363 
365 {
366  switch(m_regionType){
368  // assume there are only two WireHighPtBoards.
369  if((m_HPB[WHPB][1]) && (m_HPB[WHPB][0])){
370  m_HPB[WHPB][0]->setAdjacentHPB(1,m_HPB[WHPB][1]);
371  m_HPB[WHPB][1]->setAdjacentHPB(0,m_HPB[WHPB][0]);
372  }
373  break;
375  if(m_HPB[WHPB][0]){
376  m_HPB[WHPB][0]->setAdjacentHPB(1,0);
377  }
378  break;
379  default:
380  break;
381  }
382 }
383 
385 {
386  // Don't delete m_ASDToPP! 22 May 2001 (MT, KH)
387  for (int i=0; i < NumberOfPatchPanelType; i++) {
388  for (unsigned int j=0; j<m_PP[i].size(); j++) {
389  if (m_PP[i][j] != nullptr) delete m_PP[i][j];
390  }
391  m_PP[i].clear();
392  }
393 
394  for (int i=0; i < NumberOfSlaveBoardType; i++) {
395  for (unsigned int j=0; j < m_SB[i].size(); j+=1) {
396  if(m_SB[i][j] != nullptr) delete m_SB[i][j];
397  }
398  m_SB[i].clear();
399  }
400 
401  for(int i=0; i<NumberOfHighPtBoardType; i+=1){
402  for(unsigned int j=0; j < m_HPB[i].size(); j+=1) {
403  if(m_HPB[i][j] != nullptr) delete m_HPB[i][j];
404  }
405  m_HPB[i].clear();
406  }
407  if (m_SL) delete m_SL;
408  m_SL = 0;
409 }
410 
412 {
413  std::cout << "Side:" << m_sideId << " Octant:" << m_octantId
414  << " ModuleId:" << m_moduleId << std::endl;
415 
416  std::cout << "PatchPanel NumberOfPatchPanelType: " << NumberOfPatchPanelType << std::endl;
417  for (int j=0; j < NumberOfPatchPanelType; j++) {
418  std::cout << "numberOfPP(index in a type): " << m_PP[j].size() << std::endl;
419  for (TGCPatchPanel* ppasic : m_PP[j]) {
420  std::cout << " Type:" << ppasic->getType();
421  std::cout << " Id:" << ppasic->getId();
422  std::cout << " Region:" << (ppasic->getRegion()==TGCRegionType::FORWARD ? "FWD" : "END");
423  std::cout << ((ppasic->getRegion() == TGCRegionType::ENDCAP) ? ":Endcap" : ":Forward") << std::endl;
424  }
425  }
426 
427  std::cout << "SlaveBoard NumberOfSlaveBoardType: " << NumberOfSlaveBoardType << std::endl;
428  for (int j=0; j < NumberOfSlaveBoardType; j++) {
429  std::cout << "numberOfSB(index in a type): " << m_SB[j].size() << std::endl;
430  for (unsigned int i=0; i < m_SB[j].size(); i++) { // index in a type
431  std::cout << " Type:" << m_SB[j][i]->getType();
432  std::cout << " Id:" << m_SB[j][i]->getId();
433  std::cout << " Region: " << ((m_SB[j][i]->getRegion() == TGCRegionType::ENDCAP) ? "Endcap" : "Forward") << std::endl;
434  }
435  }
436 
437  std::cout << "HighPtBoard NumberOfHighPtBoardType:" << NumberOfHighPtBoardType << std::endl;
438  for(int j=0; j<NumberOfHighPtBoardType; j+=1){
439  std::cout << "numberOfHPB(index in a type):" << m_HPB[j].size() << std::endl;
440  for(unsigned int i=0; i < m_HPB[j].size(); i+=1) {
441  std::cout << " Type:" << m_HPB[j][i]->getType();
442  std::cout << " Id:" << m_HPB[j][i]->getId();
443  std::cout << " Region:" << (m_HPB[j][i]->getRegion()==TGCRegionType::ENDCAP ? "Endcap" : "Forward") << std::endl;
444  }
445  }
446 
447  std::cout << "SectorLogic" << std::endl;
448  if (m_SL) {
449  std::cout << "SL:" << m_SL << std::endl;
450  std::cout << " Id:" << m_SL->getId();
451  std::cout << " Region:";
453  std::cout << "Endcap" << std::endl;
454  }else{
455  std::cout << "Forward" << std::endl;
456  }
457  } else {
458  std::cout << "NO SL" << std::endl;
459  }
460 }
461 
462 } // namespace LVL1TGCTrigger
LVL1TGCTrigger::TGCRegionType::ENDCAP
@ ENDCAP
LVL1TGCTrigger::TGCSector::STPP
@ STPP
Definition: TGCSector.h:36
LVL1TGCTrigger::TGCSector::m_SL
TGCSectorLogic * m_SL
Definition: TGCSector.h:118
LVL1TGCTrigger::TGCSectorLogic::getRegion
TGCRegionType getRegion() const
Definition: TGCSectorLogic.h:62
TGCASDOut.h
sendEI_SPB.ch
ch
Definition: sendEI_SPB.py:35
TGCStripDoubletSB.h
TGCStripHighPtBoard.h
LVL1TGCTrigger::SISB
@ SISB
Definition: TGCNumbering.h:57
LVL1TGCTrigger::TGCASDOut::GetTGCReadoutIndex
TGCReadoutIndex GetTGCReadoutIndex() const
Definition: TGCASDOut.h:33
LVL1TGCTrigger::NumberOfSlaveBoardType
@ NumberOfSlaveBoardType
Definition: TGCNumbering.h:57
LVL1TGCTrigger::TGCSector::NOPP
@ NOPP
Definition: TGCSector.h:35
TGCConnectionHPBToSL.h
LVL1TGCTrigger::TGCConnectionPPToSB::getSBIdToPP
int getSBIdToPP(int type, int port, int index) const
Definition: TGCConnectionPPToSB.h:34
LVL1TGCTrigger::TGCWireHighPtBoard
Definition: TGCWireHighPtBoard.h:14
LVL1TGCTrigger::TGCWireTripletPP
class TGCPatchPanel TGCWireTripletPP
Definition: TGCPatchPanel.h:22
TGCConnectionPPToSB.h
CaloCondBlobAlgs_fillNoiseFromASCII.db
db
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:43
LVL1TGCTrigger::TGCSector::getId
int getId() const
Definition: TGCSector.h:174
LVL1TGCTrigger::TGCSector::WTPP
@ WTPP
Definition: TGCSector.h:36
LVL1TGCTrigger::TGCConnectionPPToSL::getSBToHPB
const TGCConnectionSBToHPB * getSBToHPB() const
Definition: TGCConnectionPPToSL.h:26
LVL1TGCTrigger::TGCSector::getPatchPanelType
int getPatchPanelType(TGCSignalType signal, int layer) const
Definition: TGCSector.cxx:79
TGCSector.h
LVL1TGCTrigger::TGCConnectionPPToSB
Definition: TGCConnectionPPToSB.h:15
LVL1TGCTrigger::TGCStripTripletSB
Definition: TGCStripTripletSB.h:13
LVL1TGCTrigger::SDSB
@ SDSB
Definition: TGCNumbering.h:57
LVL1TGCTrigger::TGCSector::connectPPToSB
void connectPPToSB(const TGCConnectionPPToSB *connection)
Definition: TGCSector.cxx:261
LVL1TGCTrigger::TGCSectorLogic::setBIS78
void setBIS78(std::shared_ptr< const LVL1TGC::TGCBIS78 > bis78)
Definition: TGCSectorLogic.cxx:110
LVL1TGCTrigger::TGCRegionType::FORWARD
@ FORWARD
LVL1TGCTrigger::TGCStripTripletPP
class TGCPatchPanel TGCStripTripletPP
Definition: TGCPatchPanel.h:24
LVL1TGCTrigger::TGCSector::m_dbMgr
const TGCDatabaseManager * m_dbMgr
Definition: TGCSector.h:124
TGCDatabaseManager.h
LVL1TGCTrigger::TGCForwardBackwardType
TGCForwardBackwardType
Definition: TGCNumbering.h:59
TGCWireDoubletSB.h
LVL1TGCTrigger::TGCWireDoubletPP
class TGCPatchPanel TGCWireDoubletPP
Definition: TGCPatchPanel.h:23
LVL1TGCTrigger::TGCSectorLogic::setNSW
void setNSW(std::shared_ptr< const LVL1TGC::TGCNSW > nsw)
Definition: TGCSectorLogic.cxx:104
LVL1TGCTrigger::TGCSector::m_forwardBackward
TGCForwardBackwardType m_forwardBackward
Definition: TGCSector.h:111
LVL1TGCTrigger::TGCConnectionHPBToSL
Definition: TGCConnectionHPBToSL.h:15
LVL1TGCTrigger::TGCSector::m_TMDB
std::shared_ptr< const LVL1TGC::TGCTMDB > m_TMDB
Definition: TGCSector.h:119
LVL1TGCTrigger::TGCConnectionPPToSL
Definition: TGCConnectionPPToSL.h:16
TGCSlaveBoard.h
LVL1TGCTrigger::TGCSector::m_octantId
int m_octantId
Definition: TGCSector.h:108
LVL1TGCTrigger::TGCSector::m_id
int m_id
Definition: TGCSector.h:104
LVL1TGCTrigger::TGCSector::TGCSector
TGCSector()
Definition: TGCSector.cxx:95
LVL1TGCTrigger::TGCSector::WDPP
@ WDPP
Definition: TGCSector.h:36
LVL1TGCTrigger::TGCConnectionSBToHPB::getHPBIdToSB
int getHPBIdToSB(int type, int index) const
Definition: TGCConnectionSBToHPB.h:44
LVL1TGCTrigger::TGCSector::connectHPBToSL
void connectHPBToSL(const TGCConnectionHPBToSL *connection)
Definition: TGCSector.cxx:351
LVL1TGCTrigger::TGCConnectionPPToSB::getNumberOfPort
int getNumberOfPort() const
Definition: TGCConnectionPPToSB.h:26
LVL1TGCTrigger::TGCSectorLogic::getSSCController
TGCSSCController * getSSCController()
Definition: TGCSectorLogic.h:69
LVL1TGCTrigger::TGCSector::SIPP
@ SIPP
Definition: TGCSector.h:36
LVL1TGCTrigger::NumberOfOctant
const int NumberOfOctant
Definition: TGCElectronicsSystem.h:19
LVL1TGCTrigger::TGCReadoutIndex::GetLayerNumber
int GetLayerNumber() const
Definition: TGCReadoutIndex.h:58
LVL1TGCTrigger::WDSB
@ WDSB
Definition: TGCNumbering.h:57
LVL1TGCTrigger::TGCSector::tgcArgs
TGCArguments * tgcArgs()
Definition: TGCSector.h:80
TGCInnerSB.h
LVL1TGCTrigger::TGCSector::dumpModule
void dumpModule()
Definition: TGCSector.cxx:411
LVL1TGCTrigger::TGCSector::m_HPB
std::vector< TGCHighPtBoard * > m_HPB[NumberOfHighPtBoardType]
Definition: TGCSector.h:116
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition: StdJOSetup.py:36
LVL1TGCTrigger::TGCSectorLogic::setTMDB
void setTMDB(std::shared_ptr< const LVL1TGC::TGCTMDB > tmdb)
Definition: TGCSectorLogic.cxx:98
LVL1TGCTrigger::TGCASDOut::GetSignalType
TGCSignalType GetSignalType() const
Definition: TGCASDOut.h:34
lumiFormat.i
int i
Definition: lumiFormat.py:92
TGCWireHighPtBoard.h
LVL1TGCTrigger::TGCSector::m_sideId
LVL1TGC::TGCSide m_sideId
Definition: TGCSector.h:106
LVL1TGCTrigger::WTSB
@ WTSB
Definition: TGCNumbering.h:57
LVL1TGCTrigger::TGCSector::m_PP
std::vector< TGCPatchPanel * > m_PP[NumberOfPatchPanelType]
Definition: TGCSector.h:114
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
LVL1TGCTrigger::TGCASDOut
Definition: TGCASDOut.h:12
FORWARD
#define FORWARD
Definition: ALFA_SvdCalc.h:34
LVL1TGCTrigger::TGCSector::m_moduleId
int m_moduleId
Definition: TGCSector.h:109
LVL1TGCTrigger::TGCBoardConnection::getNumber
int getNumber(const unsigned int type) const
Definition: TGCBoardConnection.h:33
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
LVL1TGCTrigger::TGCSectorLogic::setWireHighPtBoard
void setWireHighPtBoard(int port, TGCHighPtBoard *highPtBoard)
Definition: TGCSectorLogic.cxx:116
LVL1TGCTrigger::TGCSector::setModule
void setModule(const TGCConnectionPPToSL *connection)
Definition: TGCSector.cxx:171
LVL1TGCTrigger::WIRE
@ WIRE
Definition: TGCNumbering.h:52
LVL1TGCTrigger::STSB
@ STSB
Definition: TGCNumbering.h:57
LVL1TGCTrigger::WISB
@ WISB
Definition: TGCNumbering.h:57
TGCReadoutIndex.h
TGCWireTripletSB.h
LVL1TGCTrigger::TGCBoardConnection::getId
int getId(const unsigned int type, const unsigned int board) const
Definition: TGCBoardConnection.h:41
LVL1TGCTrigger::TGCStripDoubletPP
class TGCPatchPanel TGCStripDoubletPP
Definition: TGCPatchPanel.h:25
TGCSectorLogic.h
LVL1TGCTrigger
Definition: LVL1TGCTrigger.cxx:47
LVL1TGCTrigger::TGCConnectionSBToHPB::getHPBPortToSB
int getHPBPortToSB(int type, int index) const
Definition: TGCConnectionSBToHPB.h:33
LVL1TGCTrigger::TGCSector::WIPP
@ WIPP
Definition: TGCSector.h:36
LVL1TGCTrigger::TGCConnectionSBToHPB
Definition: TGCConnectionSBToHPB.h:14
LVL1TGCTrigger::TGCDatabaseManager
Definition: TGCDatabaseManager.h:39
LVL1TGCTrigger::TGCInnerSB
Definition: TGCInnerSB.h:13
Cut::signal
@ signal
Definition: SUSYToolsAlg.cxx:64
LVL1TGCTrigger::TGCSector::connectSBToHPB
void connectSBToHPB(const TGCConnectionSBToHPB *connection)
Definition: TGCSector.cxx:329
LVL1TGCTrigger::TGCSector::SDPP
@ SDPP
Definition: TGCSector.h:36
LVL1TGCTrigger::TGCSector::~TGCSector
virtual ~TGCSector()
Definition: TGCSector.cxx:384
LVL1TGCTrigger::TGCSector::m_ASDToPP
const TGCConnectionASDToPP * m_ASDToPP[NumberOfPatchPanelType]
Definition: TGCSector.h:112
LVL1TGCTrigger::TGCReadoutIndex::GetRNumber
int GetRNumber() const
Definition: TGCReadoutIndex.h:57
LVL1TGCTrigger::TGCPatchPanel
Definition: TGCPatchPanel.h:38
LVL1TGCTrigger::TGCConnectionPPToSL::getHPBToSL
const TGCConnectionHPBToSL * getHPBToSL() const
Definition: TGCConnectionPPToSL.h:27
LVL1TGCTrigger::TGCArguments
Definition: TGCArguments.h:12
LVL1TGCTrigger::TGCSector::m_SB
std::vector< TGCSlaveBoard * > m_SB[NumberOfSlaveBoardType]
Definition: TGCSector.h:115
LVL1TGCTrigger::TGCSectorLogic
Definition: TGCSectorLogic.h:42
LVL1TGCTrigger::TGCSector::WHPB
@ WHPB
Definition: TGCSector.h:34
LVL1TGCTrigger::TGCSignalType
TGCSignalType
Definition: TGCNumbering.h:51
LVL1TGCTrigger::TGCSector::SHPB
@ SHPB
Definition: TGCSector.h:34
LVL1TGCTrigger::TGCSSCController::setNumberOfWireHighPtBoard
void setNumberOfWireHighPtBoard(int iData)
Definition: TGCSSCController.h:23
LVL1TGCTrigger::TGCSector::m_regionType
TGCRegionType m_regionType
Definition: TGCSector.h:105
LVL1TGCTrigger::TGCStripInnerPP
class TGCPatchPanel TGCStripInnerPP
Definition: TGCPatchPanel.h:27
LVL1TGCTrigger::TGCRegionType
TGCRegionType
Definition: TGCNumbering.h:49
LVL1TGCTrigger::TGCConnectionPPToSL::getPPToSB
const TGCConnectionPPToSB * getPPToSB() const
Definition: TGCConnectionPPToSL.h:25
LVL1TGCTrigger::TGCWireTripletSB
Definition: TGCWireTripletSB.h:13
LVL1TGCTrigger::TGCSectorLogic::setStripHighPtBoard
void setStripHighPtBoard(TGCHighPtBoard *highPtBoard)
Definition: TGCSectorLogic.cxx:122
TGCConnectionASDToPP.h
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
LVL1TGCTrigger::TGCSector::connectAdjacentPP
void connectAdjacentPP()
Definition: TGCSector.cxx:300
TGCConnectionPPToSL.h
DEBUG
#define DEBUG
Definition: page_access.h:11
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
LVL1TGCTrigger::TGCStripDoubletSB
Definition: TGCStripDoubletSB.h:12
LVL1TGCTrigger::TGCWireInnerPP
class TGCPatchPanel TGCWireInnerPP
Definition: TGCPatchPanel.h:26
LVL1TGCTrigger::TGCReadoutIndex
Definition: TGCReadoutIndex.h:13
LVL1TGCTrigger::NumberOfModule
const int NumberOfModule
Definition: TGCElectronicsSystem.h:20
LVL1TGC::TGCSide
TGCSide
The sides of TGC (A- or C-side)
Definition: TGCNumbering.h:13
LVL1TGCTrigger::TGCASDOut::GetHitID
int GetHitID() const
Definition: TGCASDOut.h:35
LVL1TGCTrigger::TGCSector::distributeSignal
int distributeSignal(const TGCASDOut *asdOut)
Definition: TGCSector.cxx:34
LVL1TGCTrigger::TGCSector::NumberOfHighPtBoardType
@ NumberOfHighPtBoardType
Definition: TGCSector.h:34
LVL1TGCTrigger::TGCSector::connectAdjacentHPB
void connectAdjacentHPB()
Definition: TGCSector.cxx:364
LVL1TGCTrigger::TGCSector::m_NSW
std::shared_ptr< const LVL1TGC::TGCNSW > m_NSW
Definition: TGCSector.h:120
LVL1TGCTrigger::TGCSector::m_BIS78
std::shared_ptr< const LVL1TGC::TGCBIS78 > m_BIS78
Definition: TGCSector.h:121
LVL1TGCTrigger::ForwardSector
@ ForwardSector
Definition: TGCNumbering.h:59
LVL1TGCTrigger::TGCConnectionHPBToSL::getSLPortToHPB
int getSLPortToHPB(int type, int index) const
Definition: TGCConnectionHPBToSL.h:31
LVL1TGCTrigger::TGCStripHighPtBoard
Definition: TGCStripHighPtBoard.h:17
TGCPatchPanel.h
TGCHighPtBoard.h
LVL1TGCTrigger::TGCSectorLogic::getId
int getId() const
Definition: TGCSectorLogic.h:172
LVL1TGCTrigger::TGCWireDoubletSB
Definition: TGCWireDoubletSB.h:11
LVL1TGCTrigger::TGCConnectionASDToPP::getConnection
int getConnection(const int sideId, const int layer, const int chamber, const int line, int *pp, int *connector, int *channel) const
Definition: TGCConnectionASDToPP.cxx:20
LVL1TGCTrigger::TGCSector::NumberOfPatchPanelType
@ NumberOfPatchPanelType
Definition: TGCSector.h:37
LVL1TGCTrigger::TGCSector::m_numberOfHit
int m_numberOfHit
Definition: TGCSector.h:107