ATLAS Offline Software
Public Member Functions | Protected Types | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
LVL1TGCTrigger::TGCSectorLogic Class Reference

#include <TGCSectorLogic.h>

Collaboration diagram for LVL1TGCTrigger::TGCSectorLogic:

Public Member Functions

 TGCSectorLogic (TGCArguments *, const TGCDatabaseManager *db, TGCRegionType regionIn, int id)
 
virtual ~TGCSectorLogic ()
 
 TGCSectorLogic (const TGCSectorLogic &right)
 
void getTrackSelectorOutput (std::shared_ptr< TGCTrackSelectorOut > &trackSelectorOut) const
 
int getTileMuonWord () const
 
int getInnerStationWord () const
 
void clockIn (const SG::ReadCondHandleKey< TGCTriggerData > &readCondKey, int bidIn, bool process=true)
 
int getId () const
 
int getModuleID () const
 
int getOctantID () const
 
int getSideID () const
 
TGCRegionType getRegion () const
 
void setWireHighPtBoard (int port, TGCHighPtBoard *highPtBoard)
 
void setStripHighPtBoard (TGCHighPtBoard *highPtBoard)
 
int getNumberOfWireHighPtBoard () const
 
void deleteHPBOut ()
 
TGCSSCControllergetSSCController ()
 
void setTMDB (std::shared_ptr< const LVL1TGC::TGCTMDB > tmdb)
 
void setNSW (std::shared_ptr< const LVL1TGC::TGCNSW > nsw)
 
void setBIS78 (std::shared_ptr< const LVL1TGC::TGCBIS78 > bis78)
 
void showResult ()
 
int getNumberOfSubSectorCluster () const
 
int getNumberOfSubSector () const
 
void dec2bin (int dec, char *binstr, int length)
 
int getBid () const
 
void setInnerTrackletSlots (const TGCInnerTrackletSlot *innerTrackletSlots[])
 
TGCArgumentstgcArgs ()
 
const TGCArgumentstgcArgs () const
 

Protected Types

enum  { MaxNumberOfWireHighPtBoard =2 }
 

Protected Member Functions

void collectInput ()
 
void doInnerCoincidence (const SG::ReadCondHandleKey< TGCTriggerData > &readCondKey, int SSCId, TGCRPhiCoincidenceOut *coincidenceOut)
 
void doInnerCoincidence (int SSCId, TGCRPhiCoincidenceOut *coincidenceOut)
 
void doTGCNSWCoincidence (TGCRPhiCoincidenceOut *coincidenceOut)
 
bool doTGCBIS78Coincidence (TGCRPhiCoincidenceOut *coincidenceOut)
 
bool doTILECoincidence (TGCRPhiCoincidenceOut *coincidenceOut)
 
bool doTGCEICoincidence (TGCRPhiCoincidenceOut *coincidenceOut)
 
bool doTGCFICoincidence (TGCRPhiCoincidenceOut *coincidenceOut)
 

Private Member Functions

TGCSectorLogicoperator= (const TGCSectorLogic &right)
 
bool hitTileMu (const uint8_t &mask, const uint8_t &hit6, const uint8_t &hit56) const
 

Private Attributes

int m_bid
 
int m_id
 
LVL1TGC::TGCSide m_sideId
 
int m_sectorId
 
int m_moduleId
 
int m_octantId
 
TGCRegionType m_region
 
int m_NumberOfWireHighPtBoard
 
bool m_useEIFI {false}
 
bool m_useTileMu {false}
 
bool m_useGoodMF {false}
 
bool m_nswSide {false}
 
TGCSSCController m_SSCController
 
TGCRPhiCoincidenceMatrix m_matrix
 
const LVL1TGC::TGCEIFICoincidenceMapm_mapEIFI
 
std::shared_ptr< const LVL1TGC::TGCTileMuCoincidenceLUTm_tileMuLUT
 
std::shared_ptr< const LVL1TGC::TGCTMDBm_pTMDB
 
std::shared_ptr< const LVL1TGC::TGCNSWm_nsw
 
std::shared_ptr< const TGCNSWCoincidenceMapm_mapNSW
 
std::shared_ptr< const LVL1TGC::TGCBIS78m_bis78
 
std::shared_ptr< const LVL1TGC::TGCBIS78CoincidenceMapm_mapBIS78
 
std::shared_ptr< const LVL1TGC::TGCGoodMFm_mapGoodMF
 
TGCTrackSelector m_trackSelector
 
std::shared_ptr< TGCTrackSelectorOutm_trackSelectorOut
 
int m_wordTileMuon
 
int m_wordInnerStation
 
TGCHighPtBoardm_wireHighPtBoard [MaxNumberOfWireHighPtBoard]
 
TGCHighPtChipOutm_wireHighPtChipOut [MaxNumberOfWireHighPtBoard]
 
TGCHighPtBoardm_stripHighPtBoard
 
TGCHighPtChipOutm_stripHighPtChipOut
 
const TGCInnerTrackletSlotm_innerTrackletSlots [TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR]
 
TGCArgumentsm_tgcArgs
 

Detailed Description

Definition at line 40 of file TGCSectorLogic.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected
Enumerator
MaxNumberOfWireHighPtBoard 

Definition at line 88 of file TGCSectorLogic.h.

Constructor & Destructor Documentation

◆ TGCSectorLogic() [1/2]

LVL1TGCTrigger::TGCSectorLogic::TGCSectorLogic ( TGCArguments tgcargs,
const TGCDatabaseManager db,
TGCRegionType  regionIn,
int  id 
)

Definition at line 36 of file TGCSectorLogic.cxx.

38  : m_bid(0),
39  m_id(idIn),
40  m_region(regionIn),
42  m_SSCController(tgcargs,this),
43  m_matrix(tgcargs,this),
44  m_pTMDB(0),
45  m_trackSelector(this),
46  m_wordTileMuon(0),
50  m_tgcArgs(tgcargs)
51 {
52  m_sideId = static_cast<LVL1TGC::TGCSide>((idIn / NumberOfModule) / NumberOfOctant);
54  m_moduleId = idIn % NumberOfModule;
55 
57  m_sectorId = m_moduleId%3 + 2*(m_moduleId/3);
59  } else {
62  }
63 
64  m_nswSide = (tgcArgs()->NSWSideInfo().find('A')!=std::string::npos && m_sideId == LVL1TGC::TGCSide::ASIDE)
65  || (tgcArgs()->NSWSideInfo().find('C')!=std::string::npos && m_sideId == LVL1TGC::TGCSide::CSIDE);
66 
67  m_SSCController.setRegion(regionIn);
68 
70  m_mapEIFI = db->getEIFICoincidenceMap(m_sideId);
71 
73 
74  m_matrix.setCoincidenceLUT(db->getBigWheelCoincidenceLUT());
75  m_tileMuLUT = db->getTileMuCoincidenceLUT();
76  m_useTileMu = (m_tileMuLUT != nullptr) && m_useTileMu;
77 
78  m_mapGoodMF = db->getGoodMFMap();
79  m_mapNSW = db->getNSWCoincidenceMap(m_sideId, m_octantId, m_moduleId);
80  if(tgcArgs()->USE_BIS78()) m_mapBIS78 = db->getBIS78CoincidenceMap();
81 
82  m_trackSelectorOut.reset(new TGCTrackSelectorOut());
83 
84  for(int i=0; i<MaxNumberOfWireHighPtBoard; i++){
85  m_wireHighPtBoard[i] = 0;
87  }
88 
89  for(unsigned int iSlot=0; iSlot<TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR; iSlot++) {
90  m_innerTrackletSlots[iSlot] = 0;
91  }
92 
94  if(m_mapEIFI == 0) m_useEIFI = false;
95  m_useGoodMF = (m_mapGoodMF != nullptr);
96  if(m_mapNSW == 0) tgcArgs()->set_USE_NSW(false);
97  if(m_mapBIS78 == 0) tgcArgs()->set_USE_BIS78(false);
98 }

◆ ~TGCSectorLogic()

LVL1TGCTrigger::TGCSectorLogic::~TGCSectorLogic ( )
virtual

Definition at line 100 of file TGCSectorLogic.cxx.

101 {}

◆ TGCSectorLogic() [2/2]

LVL1TGCTrigger::TGCSectorLogic::TGCSectorLogic ( const TGCSectorLogic right)

Definition at line 251 of file TGCSectorLogic.cxx.

252  : m_bid(right.m_bid), m_id(right.m_id),
253  m_sideId(right.m_sideId),
254  m_sectorId(right.m_sectorId), m_moduleId(right.m_moduleId),
255  m_octantId(right.m_octantId),
256  m_region(right.m_region),
257  m_NumberOfWireHighPtBoard(right.m_NumberOfWireHighPtBoard),
258  m_useEIFI(right.m_useEIFI), m_useTileMu(right.m_useTileMu),
259  m_useGoodMF(right.m_useGoodMF), m_nswSide(right.m_nswSide),
260  m_SSCController(right.tgcArgs(),this),
261  m_matrix(right.tgcArgs(),this),
262  m_mapEIFI(right.m_mapEIFI),
263  m_pTMDB(right.m_pTMDB),
265  m_stripHighPtBoard(right.m_stripHighPtBoard),
267  m_tgcArgs(right.m_tgcArgs)
268 {
269  for(int i=0; i<MaxNumberOfWireHighPtBoard; i++){
270  m_wireHighPtBoard[i] = 0;
271  m_wireHighPtChipOut[i] = 0;
272  }
273 
274  for( int i = 0; i < m_SSCController.getNumberOfWireHighPtBoard(); i += 1) {
275  m_wireHighPtBoard[i] = right.m_wireHighPtBoard[i];
276  m_wireHighPtChipOut[i] = right.m_wireHighPtChipOut[i];
277  }
278 
279  for (unsigned int iSlot=0; iSlot<TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR; iSlot++) {
280  m_innerTrackletSlots[iSlot] = right.m_innerTrackletSlots[iSlot];
281  }
282 }

Member Function Documentation

◆ clockIn()

void LVL1TGCTrigger::TGCSectorLogic::clockIn ( const SG::ReadCondHandleKey< TGCTriggerData > &  readCondKey,
int  bidIn,
bool  process = true 
)

Definition at line 137 of file TGCSectorLogic.cxx.

139 {
140  // skip to process if want. (e.g. no hit in TGC)
141  if(!process) return;
142 
143  m_bid=bidIn;
144 
145  collectInput();
146 
147  TGCSSCControllerOut* SSCCOut =
149 #ifdef TGCDEBUG
150  SSCCOut->print();
151 #endif
152  deleteHPBOut();
153 
154  for(int SSCid=0; SSCid<getNumberOfSubSectorCluster(); SSCid+=1){
155  TGCRPhiCoincidenceOut* coincidenceOut = 0;
156  if(SSCCOut->hasHit(SSCid)){
157  m_matrix.clear();
158  m_matrix.setSSCId(SSCid);
159  m_matrix.inputR(SSCCOut->getR(SSCid),SSCCOut->getDR(SSCid),SSCCOut->getPtR(SSCid));
160  for(int phiposInSSC = 0 ;phiposInSSC < TGCSSCControllerOut::MaxNumberOfPhiInSSC; phiposInSSC++){
161  if(SSCCOut->hasHit(SSCid, phiposInSSC)){
162  m_matrix.inputPhi(SSCCOut->getPhi(SSCid,phiposInSSC),
163  SSCCOut->getDPhi(SSCid,phiposInSSC),
164  SSCCOut->getPtPhi(SSCid,phiposInSSC));
165  }
166  }
167  coincidenceOut = m_matrix.doCoincidence();
168  }
170  if(SSCCOut->hasHit(SSCid,true)){
171  m_matrix.clear();
172  m_matrix.setSSCId(SSCid);
173  m_matrix.inputR(SSCCOut->getR(SSCid),SSCCOut->getDR(SSCid),SSCCOut->getPtR(SSCid));
174  for(int phiposInSSC = 0 ;phiposInSSC < TGCSSCControllerOut::MaxNumberOfPhiInSSC; phiposInSSC++){
175  if(SSCCOut->hasHit(SSCid, phiposInSSC, true)){
176  m_matrix.inputPhi(SSCCOut->getPhi(SSCid,phiposInSSC,true),
177  SSCCOut->getDPhi(SSCid,phiposInSSC,true),
178  SSCCOut->getPtPhi(SSCid,phiposInSSC,true));
179  }
180  }
181 
182  TGCRPhiCoincidenceOut* oredCoincidenceOut = m_matrix.doCoincidence();
183  if (oredCoincidenceOut) {
184  if(coincidenceOut) {
185  if (coincidenceOut->isSuperior(oredCoincidenceOut)) {
186  delete oredCoincidenceOut;
187  } else {
188  delete coincidenceOut;
189  coincidenceOut = oredCoincidenceOut;
190  }
191  } else {
192  coincidenceOut = oredCoincidenceOut;
193  }
194  }
195  }
196 
197  if (coincidenceOut) {
198  if (m_useGoodMF) {
199  bool isgoodMF = m_mapGoodMF->test_GoodMF(m_moduleId,SSCid,coincidenceOut->getRoI());
200  coincidenceOut->setGoodMFFlag(isgoodMF);
201  }
202  }
203 
205  // do coincidence with Inner Tracklet of EI, NSW, Tile, and/or RPC-BIS78
206  doInnerCoincidence(SSCid, coincidenceOut);
207 
208  if (coincidenceOut) {
209  m_trackSelector.input(coincidenceOut);
210  }
211  }
212  if(SSCCOut!=0) delete SSCCOut;
213  SSCCOut=0;
214 
215  // Track selector chooses up to 4 track candidates to be sent to MUCTPI.
217 }

◆ collectInput()

void LVL1TGCTrigger::TGCSectorLogic::collectInput ( )
protected

Definition at line 219 of file TGCSectorLogic.cxx.

◆ dec2bin()

void LVL1TGCTrigger::TGCSectorLogic::dec2bin ( int  dec,
char *  binstr,
int  length 
)

Definition at line 318 of file TGCSectorLogic.cxx.

319 {
320  for (int i=0; i<length; i++){
321  if((dec>>i) & 1)
322  binstr[length-1-i] = '1';
323  else
324  binstr[length-1-i] = '0';
325  }
326  binstr[length] ='\0';
327 }

◆ deleteHPBOut()

void LVL1TGCTrigger::TGCSectorLogic::deleteHPBOut ( )

Definition at line 230 of file TGCSectorLogic.cxx.

231 {
234 
235  int i;
236  for( i = 0; i < m_SSCController.getNumberOfWireHighPtBoard(); i += 1) {
237  if(m_wireHighPtChipOut[i]!=0) delete m_wireHighPtChipOut[i];
239  }
240 }

◆ doInnerCoincidence() [1/2]

void LVL1TGCTrigger::TGCSectorLogic::doInnerCoincidence ( const SG::ReadCondHandleKey< TGCTriggerData > &  readCondKey,
int  SSCId,
TGCRPhiCoincidenceOut coincidenceOut 
)
protected

◆ doInnerCoincidence() [2/2]

void LVL1TGCTrigger::TGCSectorLogic::doInnerCoincidence ( int  SSCId,
TGCRPhiCoincidenceOut coincidenceOut 
)
protected

Definition at line 337 of file TGCSectorLogic.cxx.

337  {
338  if (coincidenceOut == 0) return;
339 
340  int pt = coincidenceOut->getpT();
341  if (pt==0) return;
342 
343  if(SSCId <= 4 && m_region == TGCRegionType::ENDCAP){ //3 detectors are used to inner coincidnece in SSC#0~4 in Endcap;
344 
345  // WHICH INNER COINCIDENCE
346  // select a inner station detector which is used in inner coincidence algorithm.
347  //Defenation of innerDetectorNumber :: enum{EI=0,TILE,BIS78};
348 
349  /*int innerDetectorNumber = which_InnerCoincidence();*/ //this function will be implemented.
350 
351  // The below section is a tmporary method. It will be replaced with WICHINNER COINCIDENCE.
352  int pos = 4*coincidenceOut->getR() + coincidenceOut->getPhi();
353  // check if inner is used for the roi
354  bool validEI = (m_mapEIFI->getFlagROI(pos, coincidenceOut->getIdSSC(), m_sectorId) == 1);
355  // check if TileMu is used for the roi
356  bool validTileMu = (m_tileMuLUT->getFlagROI(pos, coincidenceOut->getIdSSC(), m_sectorId, m_sideId) == 1);
357  bool validBIS78 = false;
358  if(tgcArgs()->USE_BIS78()) validBIS78=(m_mapBIS78->getFlagROI(pos, coincidenceOut->getIdSSC(), m_sectorId, m_sideId) == 1);
359 
360  bool isEI=false;
361  bool isTILE=false;
362  bool isBIS78=false;
363  if(m_useEIFI && validEI){isEI=doTGCEICoincidence(coincidenceOut);}
364  if(m_useTileMu && validTileMu){isTILE=doTILECoincidence(coincidenceOut); }
365  if(validBIS78){isBIS78=doTGCBIS78Coincidence(coincidenceOut); }
366 
367  coincidenceOut->setInnerCoincidenceFlag(isEI || isTILE || isBIS78 || (!m_useEIFI && !validEI && !m_useTileMu && !validTileMu && !tgcArgs()->USE_BIS78() && !validBIS78));
368  } else {
369  // NSW or FI are used to inner coincidnece in SSC#5~18 in Endcap and Forward region
370  int pos = 4*coincidenceOut->getR() + coincidenceOut->getPhi();
371  bool validFI = (m_mapEIFI->getFlagROI(pos, coincidenceOut->getIdSSC(), m_sectorId) == 1) && m_region == TGCRegionType::ENDCAP;
372 
373  if(tgcArgs()->USE_NSW() && m_nswSide){
374  if(tgcArgs()->FORCE_NSW_COIN()){
375  coincidenceOut->setInnerCoincidenceFlag(true);
376  }
377  else{
378  doTGCNSWCoincidence(coincidenceOut);
379  }
380  }
381  else if(!m_nswSide && validFI){
382  if(m_useEIFI){
383  coincidenceOut->setInnerCoincidenceFlag( doTGCFICoincidence(coincidenceOut) );
384  }
385  } else {
386  coincidenceOut->setInnerCoincidenceFlag(true); // TBD
387  }
388  }
389 }

◆ doTGCBIS78Coincidence()

bool LVL1TGCTrigger::TGCSectorLogic::doTGCBIS78Coincidence ( TGCRPhiCoincidenceOut coincidenceOut)
protected

Definition at line 402 of file TGCSectorLogic.cxx.

402  {
403  std::shared_ptr<const LVL1TGC::BIS78TrigOut> pBIS78Out = m_bis78->getOutput(m_sectorId);
404  if ( pBIS78Out.get() == 0 ) return false;
405  int pt=0;
406 
407  pt = m_mapBIS78->TGCBIS78_pt(pBIS78Out.get(),
408  coincidenceOut->getRoI());
409 
410  return (pt > 0);
411 }

◆ doTGCEICoincidence()

bool LVL1TGCTrigger::TGCSectorLogic::doTGCEICoincidence ( TGCRPhiCoincidenceOut coincidenceOut)
protected

Definition at line 431 of file TGCSectorLogic.cxx.

431  {
432 
433  bool isHitInner=false;
434  for(unsigned int iSlot=0;iSlot<TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR; iSlot++) {
435  const TGCInnerTrackletSlot* hit = m_innerTrackletSlots[iSlot];
436 
437  for (size_t reg=0;reg< TGCInnerTrackletSlot::NUMBER_OF_REGIONS; reg++){
438 
439  // Wire
440  bool isHitWire = false;
441  for (size_t bit=0; bit< TGCInnerTrackletSlot::NUMBER_OF_TRIGGER_BITS; bit++){
442  isHitWire = m_mapEIFI->getTriggerBit(iSlot, coincidenceOut->getIdSSC(), m_sectorId, reg, TGCInnerTrackletSlot::WIRE, bit)
443  && hit->getTriggerBit(reg,TGCInnerTrackletSlot::WIRE,bit) ;
444  if(isHitWire){break;}
445  }
446 
447  // Strip
448  bool isHitStrip = false;
449  for (size_t bit=0;bit< TGCInnerTrackletSlot::NUMBER_OF_TRIGGER_BITS; bit++){
450  isHitStrip = m_mapEIFI->getTriggerBit(iSlot, coincidenceOut->getIdSSC(), m_sectorId, reg, TGCInnerTrackletSlot::STRIP, bit)
451  && hit->getTriggerBit(reg,TGCInnerTrackletSlot::STRIP,bit);
452  if(isHitStrip){break;}
453  }
454 
455  isHitInner = isHitWire && isHitStrip;
456  if(isHitInner){
457  return true;
458  }
459  }
460 
461  }
462 
463  return false;
464 }

◆ doTGCFICoincidence()

bool LVL1TGCTrigger::TGCSectorLogic::doTGCFICoincidence ( TGCRPhiCoincidenceOut coincidenceOut)
protected

Definition at line 467 of file TGCSectorLogic.cxx.

467  {
468  return doTGCEICoincidence(coincidenceOut);
469 }

◆ doTGCNSWCoincidence()

void LVL1TGCTrigger::TGCSectorLogic::doTGCNSWCoincidence ( TGCRPhiCoincidenceOut coincidenceOut)
protected

Definition at line 392 of file TGCSectorLogic.cxx.

392  {
393  std::shared_ptr<const LVL1TGC::NSWTrigOut> pNSWOut = m_nsw->getOutput(m_region,m_sideId,m_sectorId);
394 
395  // for now, if there is a hit at NSW and the side is included in the detector mask, turn on the inner coin flag
396  coincidenceOut->setInnerCoincidenceFlag( pNSWOut->getNSWeta().size()>0 && m_nswSide);
397  return;
398 
399  // will implement NSW pT calculation later
400 }

◆ doTILECoincidence()

bool LVL1TGCTrigger::TGCSectorLogic::doTILECoincidence ( TGCRPhiCoincidenceOut coincidenceOut)
protected

Definition at line 413 of file TGCSectorLogic.cxx.

414 {
416  // The function is called for Run-3 algorithim, but the Run-2 algorithm is
417  // temporarily used for instance.
419 
420  bool isHitTileMu=false;
422  uint8_t maskTM = (uint8_t)(m_tileMuLUT->getTrigMask(mod, coincidenceOut->getIdSSC(), m_sectorId, m_sideId));
423  std::shared_ptr<const LVL1TGC::TGCTMDBOut> tm = m_pTMDB->getOutput(m_sideId, m_sectorId, mod);
424  isHitTileMu = isHitTileMu || this->hitTileMu(maskTM, tm->getHit6(), tm->getHit56());
425  }
426 
427  return isHitTileMu;
428 }

◆ getBid()

int LVL1TGCTrigger::TGCSectorLogic::getBid ( ) const
inline

Definition at line 80 of file TGCSectorLogic.h.

80 {return m_bid;};

◆ getId()

int LVL1TGCTrigger::TGCSectorLogic::getId ( ) const
inline

Definition at line 171 of file TGCSectorLogic.h.

172 {
173  return m_id;
174 }

◆ getInnerStationWord()

int LVL1TGCTrigger::TGCSectorLogic::getInnerStationWord ( ) const
inline

Definition at line 202 of file TGCSectorLogic.h.

203 {
204  return m_wordInnerStation;
205 }

◆ getModuleID()

int LVL1TGCTrigger::TGCSectorLogic::getModuleID ( ) const
inline

Definition at line 177 of file TGCSectorLogic.h.

178 {
179  return m_moduleId;
180 }

◆ getNumberOfSubSector()

int LVL1TGCTrigger::TGCSectorLogic::getNumberOfSubSector ( ) const
inline

Definition at line 158 of file TGCSectorLogic.h.

159 {
160  return (m_region == TGCRegionType::FORWARD) ? 8 * LVL1TGC::kNRoiInSSC : LVL1TGC::kNumberOfEndcapRoI;
161 }

◆ getNumberOfSubSectorCluster()

int LVL1TGCTrigger::TGCSectorLogic::getNumberOfSubSectorCluster ( ) const
inline

Definition at line 152 of file TGCSectorLogic.h.

153 {
154  return (m_region == TGCRegionType::FORWARD) ? 8 : LVL1TGC::kNMaxSSC;
155 }

◆ getNumberOfWireHighPtBoard()

int LVL1TGCTrigger::TGCSectorLogic::getNumberOfWireHighPtBoard ( ) const
inline

Definition at line 164 of file TGCSectorLogic.h.

165 {
167 }

◆ getOctantID()

int LVL1TGCTrigger::TGCSectorLogic::getOctantID ( ) const
inline

Definition at line 184 of file TGCSectorLogic.h.

185 {
186  return m_octantId;
187 }

◆ getRegion()

TGCRegionType LVL1TGCTrigger::TGCSectorLogic::getRegion ( ) const
inline

Definition at line 61 of file TGCSectorLogic.h.

61 { return m_region;};

◆ getSideID()

int LVL1TGCTrigger::TGCSectorLogic::getSideID ( ) const
inline

Definition at line 190 of file TGCSectorLogic.h.

191 {
192  return m_sideId;
193 }

◆ getSSCController()

TGCSSCController* LVL1TGCTrigger::TGCSectorLogic::getSSCController ( )
inline

Definition at line 68 of file TGCSectorLogic.h.

68 {return &m_SSCController;};

◆ getTileMuonWord()

int LVL1TGCTrigger::TGCSectorLogic::getTileMuonWord ( ) const
inline

Definition at line 196 of file TGCSectorLogic.h.

197 {
198  return m_wordTileMuon;
199 }

◆ getTrackSelectorOutput()

void LVL1TGCTrigger::TGCSectorLogic::getTrackSelectorOutput ( std::shared_ptr< TGCTrackSelectorOut > &  trackSelectorOut) const

Definition at line 132 of file TGCSectorLogic.cxx.

133 {
134  trackSelectorOut=m_trackSelectorOut;
135 }

◆ hitTileMu()

bool LVL1TGCTrigger::TGCSectorLogic::hitTileMu ( const uint8_t &  mask,
const uint8_t &  hit6,
const uint8_t &  hit56 
) const
private

returns whether TMDBOut satisfies the Tile-CW mask (Run-2 algo.)

Parameters
[in]maskTrigger mask per TMDB module (3 bits)
[in]hit6TMDBOut for D6
[in]hit56TMDBOut for D5+D6

Definition at line 472 of file TGCSectorLogic.cxx.

473 {
479  switch(mask) {
482  break;
484  return (hit6==LVL1TGC::TGCTMDBOut::TM_HIGH);
485  break;
488  break;
490  return (hit56==LVL1TGC::TGCTMDBOut::TM_HIGH);
491  break;
492  default:
493  return false;
494  break;
495  }
496  return true;
497 }

◆ operator=()

TGCSectorLogic & LVL1TGCTrigger::TGCSectorLogic::operator= ( const TGCSectorLogic right)
private

Definition at line 285 of file TGCSectorLogic.cxx.

286 {
287  if ( this != &right ) {
288  m_tgcArgs = right.m_tgcArgs;
289  m_matrix = right.m_matrix;
290  m_bid =right.m_bid;
291  m_id =right.m_id;
292  m_sideId = right.m_sideId;
293  m_sectorId=right.m_sectorId;
294  m_moduleId=right.m_moduleId;
295  m_octantId=right.m_octantId;
296  m_region=right.m_region;
297  m_NumberOfWireHighPtBoard=right.m_NumberOfWireHighPtBoard;
298  m_mapEIFI=right.m_mapEIFI;
299  m_pTMDB=right.m_pTMDB;
300  m_wordTileMuon=0;
302  m_stripHighPtBoard=right.m_stripHighPtBoard;
304  m_useEIFI=right.m_useEIFI;
305  m_useTileMu=right.m_useTileMu;
306  for( int i = 0; i < m_SSCController.getNumberOfWireHighPtBoard(); i += 1) {
307  m_wireHighPtBoard[i] = right.m_wireHighPtBoard[i];
308  m_wireHighPtChipOut[i] = right.m_wireHighPtChipOut[i];
309  }
310  for (unsigned int iSlot=0; iSlot<TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR; iSlot++) {
311  m_innerTrackletSlots[iSlot] = right.m_innerTrackletSlots[iSlot];
312  }
313  }
314  return *this;
315 }

◆ setBIS78()

void LVL1TGCTrigger::TGCSectorLogic::setBIS78 ( std::shared_ptr< const LVL1TGC::TGCBIS78 bis78)

Definition at line 115 of file TGCSectorLogic.cxx.

116 {
117  m_bis78 = std::move(bis78);
118  if(m_bis78 == 0) tgcArgs()->set_USE_BIS78(false);
119 }

◆ setInnerTrackletSlots()

void LVL1TGCTrigger::TGCSectorLogic::setInnerTrackletSlots ( const TGCInnerTrackletSlot innerTrackletSlots[])

Definition at line 329 of file TGCSectorLogic.cxx.

330 {
331  for(unsigned int iSlot=0; iSlot<TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR; iSlot++) {
332  m_innerTrackletSlots[iSlot] = innerTrackletSlots[iSlot];
333  }
334 }

◆ setNSW()

void LVL1TGCTrigger::TGCSectorLogic::setNSW ( std::shared_ptr< const LVL1TGC::TGCNSW nsw)

Definition at line 109 of file TGCSectorLogic.cxx.

110 {
111  m_nsw = std::move(nsw);
112  if(m_nsw == 0) tgcArgs()->set_USE_NSW(false);
113 }

◆ setStripHighPtBoard()

void LVL1TGCTrigger::TGCSectorLogic::setStripHighPtBoard ( TGCHighPtBoard highPtBoard)

Definition at line 127 of file TGCSectorLogic.cxx.

128 {
129  m_stripHighPtBoard = highPtBoard;
130 }

◆ setTMDB()

void LVL1TGCTrigger::TGCSectorLogic::setTMDB ( std::shared_ptr< const LVL1TGC::TGCTMDB tmdb)

Definition at line 103 of file TGCSectorLogic.cxx.

104 {
105  m_pTMDB = std::move(tmdb);
106  if (m_pTMDB==0) m_useTileMu = false;
107 }

◆ setWireHighPtBoard()

void LVL1TGCTrigger::TGCSectorLogic::setWireHighPtBoard ( int  port,
TGCHighPtBoard highPtBoard 
)

Definition at line 121 of file TGCSectorLogic.cxx.

122 {
123  m_wireHighPtBoard[port] = highPtBoard;
125 }

◆ showResult()

void LVL1TGCTrigger::TGCSectorLogic::showResult ( )

Definition at line 243 of file TGCSectorLogic.cxx.

244 {
245  std::cout<<"#SL O"<<" BID:"<<m_bid
246  <<" region:"<<((m_region == TGCRegionType::FORWARD) ? "FWD" : "END")
247  <<" SLid:"<<m_id<<" ";
248 }

◆ tgcArgs() [1/2]

TGCArguments* LVL1TGCTrigger::TGCSectorLogic::tgcArgs ( )
inline

Definition at line 84 of file TGCSectorLogic.h.

84 { return m_tgcArgs; }

◆ tgcArgs() [2/2]

const TGCArguments* LVL1TGCTrigger::TGCSectorLogic::tgcArgs ( ) const
inline

Definition at line 85 of file TGCSectorLogic.h.

85 { return m_tgcArgs; }

Member Data Documentation

◆ m_bid

int LVL1TGCTrigger::TGCSectorLogic::m_bid
private

Definition at line 108 of file TGCSectorLogic.h.

◆ m_bis78

std::shared_ptr<const LVL1TGC::TGCBIS78> LVL1TGCTrigger::TGCSectorLogic::m_bis78
private

Definition at line 131 of file TGCSectorLogic.h.

◆ m_id

int LVL1TGCTrigger::TGCSectorLogic::m_id
private

Definition at line 110 of file TGCSectorLogic.h.

◆ m_innerTrackletSlots

const TGCInnerTrackletSlot* LVL1TGCTrigger::TGCSectorLogic::m_innerTrackletSlots[TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR]
private

Definition at line 147 of file TGCSectorLogic.h.

◆ m_mapBIS78

std::shared_ptr<const LVL1TGC::TGCBIS78CoincidenceMap> LVL1TGCTrigger::TGCSectorLogic::m_mapBIS78
private

Definition at line 132 of file TGCSectorLogic.h.

◆ m_mapEIFI

const LVL1TGC::TGCEIFICoincidenceMap* LVL1TGCTrigger::TGCSectorLogic::m_mapEIFI
private

Definition at line 126 of file TGCSectorLogic.h.

◆ m_mapGoodMF

std::shared_ptr<const LVL1TGC::TGCGoodMF> LVL1TGCTrigger::TGCSectorLogic::m_mapGoodMF
private

Definition at line 133 of file TGCSectorLogic.h.

◆ m_mapNSW

std::shared_ptr<const TGCNSWCoincidenceMap> LVL1TGCTrigger::TGCSectorLogic::m_mapNSW
private

Definition at line 130 of file TGCSectorLogic.h.

◆ m_matrix

TGCRPhiCoincidenceMatrix LVL1TGCTrigger::TGCSectorLogic::m_matrix
private

Definition at line 125 of file TGCSectorLogic.h.

◆ m_moduleId

int LVL1TGCTrigger::TGCSectorLogic::m_moduleId
private

Definition at line 112 of file TGCSectorLogic.h.

◆ m_nsw

std::shared_ptr<const LVL1TGC::TGCNSW> LVL1TGCTrigger::TGCSectorLogic::m_nsw
private

Definition at line 129 of file TGCSectorLogic.h.

◆ m_nswSide

bool LVL1TGCTrigger::TGCSectorLogic::m_nswSide {false}
private

Definition at line 120 of file TGCSectorLogic.h.

◆ m_NumberOfWireHighPtBoard

int LVL1TGCTrigger::TGCSectorLogic::m_NumberOfWireHighPtBoard
private

Definition at line 115 of file TGCSectorLogic.h.

◆ m_octantId

int LVL1TGCTrigger::TGCSectorLogic::m_octantId
private

Definition at line 113 of file TGCSectorLogic.h.

◆ m_pTMDB

std::shared_ptr<const LVL1TGC::TGCTMDB> LVL1TGCTrigger::TGCSectorLogic::m_pTMDB
private

Definition at line 128 of file TGCSectorLogic.h.

◆ m_region

TGCRegionType LVL1TGCTrigger::TGCSectorLogic::m_region
private

Definition at line 114 of file TGCSectorLogic.h.

◆ m_sectorId

int LVL1TGCTrigger::TGCSectorLogic::m_sectorId
private

Definition at line 112 of file TGCSectorLogic.h.

◆ m_sideId

LVL1TGC::TGCSide LVL1TGCTrigger::TGCSectorLogic::m_sideId
private

Definition at line 111 of file TGCSectorLogic.h.

◆ m_SSCController

TGCSSCController LVL1TGCTrigger::TGCSectorLogic::m_SSCController
private

Definition at line 122 of file TGCSectorLogic.h.

◆ m_stripHighPtBoard

TGCHighPtBoard* LVL1TGCTrigger::TGCSectorLogic::m_stripHighPtBoard
private

Definition at line 143 of file TGCSectorLogic.h.

◆ m_stripHighPtChipOut

TGCHighPtChipOut* LVL1TGCTrigger::TGCSectorLogic::m_stripHighPtChipOut
private

Definition at line 144 of file TGCSectorLogic.h.

◆ m_tgcArgs

TGCArguments* LVL1TGCTrigger::TGCSectorLogic::m_tgcArgs
private

Definition at line 148 of file TGCSectorLogic.h.

◆ m_tileMuLUT

std::shared_ptr<const LVL1TGC::TGCTileMuCoincidenceLUT> LVL1TGCTrigger::TGCSectorLogic::m_tileMuLUT
private

Definition at line 127 of file TGCSectorLogic.h.

◆ m_trackSelector

TGCTrackSelector LVL1TGCTrigger::TGCSectorLogic::m_trackSelector
private

Definition at line 135 of file TGCSectorLogic.h.

◆ m_trackSelectorOut

std::shared_ptr<TGCTrackSelectorOut> LVL1TGCTrigger::TGCSectorLogic::m_trackSelectorOut
private

Definition at line 136 of file TGCSectorLogic.h.

◆ m_useEIFI

bool LVL1TGCTrigger::TGCSectorLogic::m_useEIFI {false}
private

Definition at line 117 of file TGCSectorLogic.h.

◆ m_useGoodMF

bool LVL1TGCTrigger::TGCSectorLogic::m_useGoodMF {false}
private

Definition at line 119 of file TGCSectorLogic.h.

◆ m_useTileMu

bool LVL1TGCTrigger::TGCSectorLogic::m_useTileMu {false}
private

Definition at line 118 of file TGCSectorLogic.h.

◆ m_wireHighPtBoard

TGCHighPtBoard* LVL1TGCTrigger::TGCSectorLogic::m_wireHighPtBoard[MaxNumberOfWireHighPtBoard]
private

Definition at line 141 of file TGCSectorLogic.h.

◆ m_wireHighPtChipOut

TGCHighPtChipOut* LVL1TGCTrigger::TGCSectorLogic::m_wireHighPtChipOut[MaxNumberOfWireHighPtBoard]
private

Definition at line 142 of file TGCSectorLogic.h.

◆ m_wordInnerStation

int LVL1TGCTrigger::TGCSectorLogic::m_wordInnerStation
private

Definition at line 139 of file TGCSectorLogic.h.

◆ m_wordTileMuon

int LVL1TGCTrigger::TGCSectorLogic::m_wordTileMuon
private

Definition at line 138 of file TGCSectorLogic.h.


The documentation for this class was generated from the following files:
LVL1TGCTrigger::TGCSSCController::distribute
TGCSSCControllerOut * distribute(TGCHighPtChipOut *wire[], TGCHighPtChipOut *strip)
Definition: TGCSSCController.cxx:21
LVL1TGCTrigger::TGCHighPtBoard::eraseOutput
void eraseOutput()
Definition: TGCHighPtBoard.cxx:149
LVL1TGCTrigger::TGCRegionType::ENDCAP
@ ENDCAP
LVL1TGCTrigger::TGCSectorLogic::tgcArgs
TGCArguments * tgcArgs()
Definition: TGCSectorLogic.h:84
LVL1TGCTrigger::TGCSectorLogic::m_innerTrackletSlots
const TGCInnerTrackletSlot * m_innerTrackletSlots[TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR]
Definition: TGCSectorLogic.h:147
LVL1TGC::CSIDE
@ CSIDE
Definition: TGCNumbering.h:15
LVL1TGCTrigger::TGCRPhiCoincidenceMatrix::inputR
void inputR(int rIn, int dRIn, int ptRIn)
Definition: TGCRPhiCoincidenceMatrix.cxx:19
LVL1TGCTrigger::TGCSSCControllerOut::print
void print() const
Definition: TGCSSCControllerOut.cxx:61
LVL1TGCTrigger::TGCArguments::TILE_MU
bool TILE_MU() const
Definition: TGCArguments.cxx:44
LVL1TGCTrigger::TGCTrackSelector::select
bool select(std::shared_ptr< TGCTrackSelectorOut > TrackcandidateOut)
Definition: TGCTrackSelector.cxx:48
LVL1TGCTrigger::TGCSectorLogic::m_useTileMu
bool m_useTileMu
Definition: TGCSectorLogic.h:118
LVL1TGCTrigger::TGCInnerTrackletSlot::WIRE
@ WIRE
Definition: TGCInnerTrackletSlot.h:36
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:558
LVL1TGCTrigger::TGCInnerTrackletSlotHolder::NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR
@ NUMBER_OF_SLOTS_PER_TRIGGER_SECTOR
Definition: TGCInnerTrackletSlotHolder.h:35
LVL1TGCTrigger::TGCSectorLogic::m_mapNSW
std::shared_ptr< const TGCNSWCoincidenceMap > m_mapNSW
Definition: TGCSectorLogic.h:130
LVL1TGC::TGCTileMuCoincidenceLUT::TM_D56_L
@ TM_D56_L
Definition: TGCTileMuCoincidenceLUT.h:85
LVL1TGCTrigger::TGCSectorLogic::m_nsw
std::shared_ptr< const LVL1TGC::TGCNSW > m_nsw
Definition: TGCSectorLogic.h:129
CaloCondBlobAlgs_fillNoiseFromASCII.db
db
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:42
LVL1TGCTrigger::TGCSectorLogic::m_trackSelectorOut
std::shared_ptr< TGCTrackSelectorOut > m_trackSelectorOut
Definition: TGCSectorLogic.h:136
LVL1TGCTrigger::TGCSectorLogic::m_wordInnerStation
int m_wordInnerStation
Definition: TGCSectorLogic.h:139
test_pyathena.pt
pt
Definition: test_pyathena.py:11
RunTileCalibRec.tmdb
tmdb
Definition: RunTileCalibRec.py:244
LVL1TGCTrigger::TGCSectorLogic::m_id
int m_id
Definition: TGCSectorLogic.h:110
LVL1TGCTrigger::TGCSectorLogic::m_NumberOfWireHighPtBoard
int m_NumberOfWireHighPtBoard
Definition: TGCSectorLogic.h:115
LVL1TGCTrigger::TGCSSCControllerOut::MaxNumberOfPhiInSSC
@ MaxNumberOfPhiInSSC
Definition: TGCSSCControllerOut.h:15
LVL1TGCTrigger::TGCSectorLogic::collectInput
void collectInput()
Definition: TGCSectorLogic.cxx:219
LVL1TGC::TGCTileMuCoincidenceLUT::N_Input_TileMuModule
@ N_Input_TileMuModule
Definition: TGCTileMuCoincidenceLUT.h:89
LVL1TGCTrigger::TGCSectorLogic::doInnerCoincidence
void doInnerCoincidence(const SG::ReadCondHandleKey< TGCTriggerData > &readCondKey, int SSCId, TGCRPhiCoincidenceOut *coincidenceOut)
LVL1TGCTrigger::TGCArguments::USE_INNER
bool USE_INNER() const
Definition: TGCArguments.cxx:42
LVL1TGCTrigger::TGCRegionType::FORWARD
@ FORWARD
LVL1TGCTrigger::TGCSectorLogic::m_bis78
std::shared_ptr< const LVL1TGC::TGCBIS78 > m_bis78
Definition: TGCSectorLogic.h:131
LVL1TGCTrigger::TGCSectorLogic::m_sideId
LVL1TGC::TGCSide m_sideId
Definition: TGCSectorLogic.h:111
LVL1TGCTrigger::TGCSectorLogic::doTILECoincidence
bool doTILECoincidence(TGCRPhiCoincidenceOut *coincidenceOut)
Definition: TGCSectorLogic.cxx:413
LVL1TGCTrigger::TGCSectorLogic::m_SSCController
TGCSSCController m_SSCController
Definition: TGCSectorLogic.h:122
SUSY_SimplifiedModel_PostInclude.process
string process
Definition: SUSY_SimplifiedModel_PostInclude.py:43
LVL1TGCTrigger::TGCSectorLogic::doTGCBIS78Coincidence
bool doTGCBIS78Coincidence(TGCRPhiCoincidenceOut *coincidenceOut)
Definition: TGCSectorLogic.cxx:402
python.utils.AtlRunQueryLookup.mask
string mask
Definition: AtlRunQueryLookup.py:459
LVL1TGC::TGCTileMuCoincidenceLUT::TM_D6_L
@ TM_D6_L
Definition: TGCTileMuCoincidenceLUT.h:83
LVL1TGCTrigger::TGCSectorLogic::m_stripHighPtBoard
TGCHighPtBoard * m_stripHighPtBoard
Definition: TGCSectorLogic.h:143
LVL1TGCTrigger::TGCSectorLogic::m_matrix
TGCRPhiCoincidenceMatrix m_matrix
Definition: TGCSectorLogic.h:125
LVL1TGCTrigger::TGCSectorLogic::m_bid
int m_bid
Definition: TGCSectorLogic.h:108
LVL1TGC::NSWTrigOut::getNSWeta
const std::vector< uint8_t > & getNSWeta() const
Definition: NSWTrigOut.h:66
LVL1TGCTrigger::TGCSectorLogic::m_sectorId
int m_sectorId
Definition: TGCSectorLogic.h:112
LVL1TGCTrigger::TGCArguments::set_USE_BIS78
void set_USE_BIS78(bool v)
Definition: TGCArguments.cxx:38
LVL1TGCTrigger::TGCSectorLogic::m_octantId
int m_octantId
Definition: TGCSectorLogic.h:113
LVL1TGCTrigger::TGCSectorLogic::m_nswSide
bool m_nswSide
Definition: TGCSectorLogic.h:120
LVL1TGCTrigger::NumberOfOctant
const int NumberOfOctant
Definition: TGCElectronicsSystem.h:19
LVL1TGC::TGCTMDBOut::TM_HIGH
@ TM_HIGH
Definition: TGCTMDBOut.h:13
maskDeadModules.mod
mod
Definition: maskDeadModules.py:36
LVL1TGCTrigger::TGCArguments::FORCE_NSW_COIN
bool FORCE_NSW_COIN() const
Definition: TGCArguments.cxx:48
LVL1TGCTrigger::TGCTrackSelector::input
void input(TGCRPhiCoincidenceOut *rPhiOut)
Definition: TGCTrackSelector.cxx:38
lumiFormat.i
int i
Definition: lumiFormat.py:85
LVL1TGCTrigger::TGCRPhiCoincidenceMatrix::doCoincidence
TGCRPhiCoincidenceOut * doCoincidence()
Definition: TGCRPhiCoincidenceMatrix.cxx:60
LVL1TGCTrigger::TGCSectorLogic::m_tileMuLUT
std::shared_ptr< const LVL1TGC::TGCTileMuCoincidenceLUT > m_tileMuLUT
Definition: TGCSectorLogic.h:127
LVL1TGCTrigger::TGCArguments::NSWSideInfo
const std::string & NSWSideInfo() const
Definition: TGCArguments.cxx:49
LVL1TGCTrigger::TGCSSCController::getNumberOfWireHighPtBoard
int getNumberOfWireHighPtBoard()
Definition: TGCSSCController.h:24
LVL1TGCTrigger::TGCSectorLogic::m_mapGoodMF
std::shared_ptr< const LVL1TGC::TGCGoodMF > m_mapGoodMF
Definition: TGCSectorLogic.h:133
LVL1TGCTrigger::TGCSectorLogic::m_wireHighPtBoard
TGCHighPtBoard * m_wireHighPtBoard[MaxNumberOfWireHighPtBoard]
Definition: TGCSectorLogic.h:141
LVL1TGCTrigger::TGCSectorLogic::hitTileMu
bool hitTileMu(const uint8_t &mask, const uint8_t &hit6, const uint8_t &hit56) const
Definition: TGCSectorLogic.cxx:472
LVL1TGC::TGCTileMuCoincidenceLUT::TM_D6_H
@ TM_D6_H
Definition: TGCTileMuCoincidenceLUT.h:84
LVL1TGC::TGCEIFICoincidenceMap::getFlagROI
int getFlagROI(const unsigned int roi, const unsigned int ssc, const unsigned int sec) const
Definition: TGCEIFICoincidenceMap.cxx:267
LVL1TGCTrigger::TGCInnerTrackletSlot::STRIP
@ STRIP
Definition: TGCInnerTrackletSlot.h:37
LVL1TGCTrigger::TGCSectorLogic::doTGCEICoincidence
bool doTGCEICoincidence(TGCRPhiCoincidenceOut *coincidenceOut)
Definition: TGCSectorLogic.cxx:431
LVL1TGC::TGCTMDBOut::getHit56
TileModuleHit getHit56() const
Definition: TGCTMDBOut.h:37
LVL1TGCTrigger::TGCRPhiCoincidenceMatrix::clear
void clear()
Definition: TGCRPhiCoincidenceMatrix.cxx:49
LVL1TGC::TGCTMDBOut::getHit6
TileModuleHit getHit6() const
Definition: TGCTMDBOut.h:38
LVL1TGCTrigger::TGCArguments::set_USE_NSW
void set_USE_NSW(bool v)
Definition: TGCArguments.cxx:35
LVL1TGCTrigger::TGCSectorLogic::m_useEIFI
bool m_useEIFI
Definition: TGCSectorLogic.h:117
LVL1TGCTrigger::TGCRPhiCoincidenceMatrix::setSideId
void setSideId(int sideIdIn)
Definition: TGCRPhiCoincidenceMatrix.h:24
LVL1TGCTrigger::TGCArguments::USE_BIS78
bool USE_BIS78() const
Definition: TGCArguments.cxx:50
LVL1TGCTrigger::TGCSectorLogic::doTGCNSWCoincidence
void doTGCNSWCoincidence(TGCRPhiCoincidenceOut *coincidenceOut)
Definition: TGCSectorLogic.cxx:392
LVL1TGCTrigger::TGCSectorLogic::getNumberOfSubSectorCluster
int getNumberOfSubSectorCluster() const
Definition: TGCSectorLogic.h:152
LVL1TGCTrigger::TGCSectorLogic::m_moduleId
int m_moduleId
Definition: TGCSectorLogic.h:112
LVL1TGC::TGCEIFICoincidenceMap::getTriggerBit
int getTriggerBit(const int slot, const int ssc, const int sec, const int reg, const int read, const int bit) const
Definition: TGCEIFICoincidenceMap.cxx:284
LVL1TGCTrigger::TGCRPhiCoincidenceMatrix::inputPhi
void inputPhi(int phiIn, int dPhiIn, int ptPhiIn)
Definition: TGCRPhiCoincidenceMatrix.cxx:31
LVL1TGCTrigger::TGCSectorLogic::MaxNumberOfWireHighPtBoard
@ MaxNumberOfWireHighPtBoard
Definition: TGCSectorLogic.h:88
LVL1TGCTrigger::TGCSectorLogic::m_mapBIS78
std::shared_ptr< const LVL1TGC::TGCBIS78CoincidenceMap > m_mapBIS78
Definition: TGCSectorLogic.h:132
LVL1TGCTrigger::TGCSectorLogic::doTGCFICoincidence
bool doTGCFICoincidence(TGCRPhiCoincidenceOut *coincidenceOut)
Definition: TGCSectorLogic.cxx:467
LVL1TGCTrigger::TGCRPhiCoincidenceMatrix::setCoincidenceLUT
void setCoincidenceLUT(std::shared_ptr< const LVL1TGC::BigWheelCoincidenceLUT > lut)
Definition: TGCRPhiCoincidenceMatrix.cxx:127
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:16
LVL1TGC::ASIDE
@ ASIDE
Definition: TGCNumbering.h:14
LVL1TGCTrigger::TGCArguments::USE_NSW
bool USE_NSW() const
Definition: TGCArguments.cxx:47
LVL1TGCTrigger::TGCSectorLogic::m_mapEIFI
const LVL1TGC::TGCEIFICoincidenceMap * m_mapEIFI
Definition: TGCSectorLogic.h:126
LVL1TGCTrigger::TGCInnerTrackletSlot::NUMBER_OF_TRIGGER_BITS
@ NUMBER_OF_TRIGGER_BITS
Definition: TGCInnerTrackletSlot.h:39
LVL1TGCTrigger::TGCSectorLogic::deleteHPBOut
void deleteHPBOut()
Definition: TGCSectorLogic.cxx:230
LVL1TGC::TGCTMDBOut::TM_LOW
@ TM_LOW
Definition: TGCTMDBOut.h:13
LVL1TGCTrigger::TGCSectorLogic::m_wireHighPtChipOut
TGCHighPtChipOut * m_wireHighPtChipOut[MaxNumberOfWireHighPtBoard]
Definition: TGCSectorLogic.h:142
python.L1.Base.MenuUtils.binstr
def binstr(value, width)
Definition: MenuUtils.py:7
LVL1TGCTrigger::TGCSectorLogic::m_wordTileMuon
int m_wordTileMuon
Definition: TGCSectorLogic.h:138
LVL1TGCTrigger::TGCInnerTrackletSlot::NUMBER_OF_REGIONS
@ NUMBER_OF_REGIONS
Definition: TGCInnerTrackletSlot.h:35
LVL1TGCTrigger::TGCSectorLogic::m_region
TGCRegionType m_region
Definition: TGCSectorLogic.h:114
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::TGCSectorLogic::m_tgcArgs
TGCArguments * m_tgcArgs
Definition: TGCSectorLogic.h:148
LVL1TGCTrigger::TGCHighPtBoard::getOutput
TGCHighPtChipOut * getOutput()
Definition: TGCHighPtBoard.cxx:144
LVL1TGCTrigger::TGCSSCController::setRegion
void setRegion(TGCRegionType regionIn)
Definition: TGCSSCController.h:25
LVL1TGC::TGCTileMuCoincidenceLUT::TM_D56_H
@ TM_D56_H
Definition: TGCTileMuCoincidenceLUT.h:86
LVL1TGCTrigger::TGCRPhiCoincidenceMatrix::setSSCId
void setSSCId(int SSCIdIn)
Definition: TGCRPhiCoincidenceMatrix.h:23
length
double length(const pvec &v)
Definition: FPGATrackSimLLPDoubletHoughTransformTool.cxx:26
LVL1TGCTrigger::TGCSectorLogic::m_trackSelector
TGCTrackSelector m_trackSelector
Definition: TGCSectorLogic.h:135
LVL1TGCTrigger::TGCSectorLogic::m_pTMDB
std::shared_ptr< const LVL1TGC::TGCTMDB > m_pTMDB
Definition: TGCSectorLogic.h:128
LVL1TGCTrigger::TGCSectorLogic::m_stripHighPtChipOut
TGCHighPtChipOut * m_stripHighPtChipOut
Definition: TGCSectorLogic.h:144
LVL1TGCTrigger::TGCSectorLogic::m_useGoodMF
bool m_useGoodMF
Definition: TGCSectorLogic.h:119