CMS 3D CMS Logo

L1MuGMTPSB Class Reference

L1 Global Muon Trigger Pipelined Synchronising Buffer module. More...

#include <L1Trigger/GlobalMuonTrigger/src/L1MuGMTPSB.h>

List of all members.

Public Member Functions

const L1MuRegionalCandCSCMuon (int index) const
 get CSC muon
const L1MuRegionalCandDTBXMuon (int index) const
 get DTBX muon
bool empty () const
 are there any data in the PSB
const L1MuGMTMatrix< bool > & isolBits () const
 return isolation bits
 L1MuGMTPSB (const L1MuGlobalMuonTrigger &gmt)
 constructor
const L1MuGMTMatrix< bool > & mipBits () const
 return minimum ionizing bits
int numberCSC () const
 return number of non-empty CSC muons
int numberDTBX () const
 return number of non-empty DTBX muons
int numberRPC () const
 return number of non-empty RPC muons
void print () const
 print PSB
void receiveData (edm::Event &e, int bx)
 receive muon candidates
void reset ()
 clear PSB
const L1MuRegionalCandRPCMuon (int index) const
 get RPC muon
virtual ~L1MuGMTPSB ()
 destructor

Private Member Functions

void getCalo (edm::Event &e)
 get Calorimeter Trigger data
void getCSC (std::vector< L1MuRegionalCand > const *data, int bx)
 get muons from endcap Muon Trigger Track Finder
void getDTBX (std::vector< L1MuRegionalCand > const *data, int bx)
 get muons from barrel Muon Trigger Track Finder
void getRPCb (std::vector< L1MuRegionalCand > const *data, int bx)
 get muons from RPCb Trigger
void getRPCf (std::vector< L1MuRegionalCand > const *data, int bx)
 get muons from RPCf Trigger
void printCSC () const
 print CSC muons
void printDTBX () const
 print DTBX muons
void printRPCbarrel () const
 print barrel RPC muons
void printRPCendcap () const
 print endcap RPC muons

Private Attributes

std::vector< L1MuRegionalCandm_CscMuons
std::vector< L1MuRegionalCandm_DtbxMuons
const L1MuGlobalMuonTriggerm_gmt
L1MuGMTMatrix< boolm_Isol
L1MuGMTMatrix< boolm_Mip
std::vector< L1MuRegionalCandm_RpcMuons


Detailed Description

L1 Global Muon Trigger Pipelined Synchronising Buffer module.

the PSB receives muon candidates from the barrel track finder, the endcap track finder and from the RPC trigger. In addition it gets isolation and mip bits from the regional Calorimeter Trigger

Definition at line 50 of file L1MuGMTPSB.h.


Constructor & Destructor Documentation

L1MuGMTPSB::L1MuGMTPSB ( const L1MuGlobalMuonTrigger gmt  ) 

constructor

Definition at line 53 of file L1MuGMTPSB.cc.

References m_CscMuons, m_DtbxMuons, m_Isol, m_Mip, m_RpcMuons, L1MuGMTConfig::MAXCSC, L1MuGMTConfig::MAXDTBX, and L1MuGMTConfig::MAXRPC.

00053                                                        : 
00054                m_gmt(gmt), 
00055                m_RpcMuons(L1MuGMTConfig::MAXRPC),
00056                m_DtbxMuons(L1MuGMTConfig::MAXDTBX), 
00057                m_CscMuons(L1MuGMTConfig::MAXCSC),
00058                m_Isol(14,18), m_Mip(14,18) {
00059 
00060   m_RpcMuons.reserve(L1MuGMTConfig::MAXRPC);
00061   m_DtbxMuons.reserve(L1MuGMTConfig::MAXDTBX);
00062   m_CscMuons.reserve(L1MuGMTConfig::MAXCSC);
00063   m_Isol.init(false);
00064   m_Mip.init(false);
00065 
00066 }

L1MuGMTPSB::~L1MuGMTPSB (  )  [virtual]

destructor

Definition at line 71 of file L1MuGMTPSB.cc.

References m_CscMuons, m_DtbxMuons, m_RpcMuons, and reset().

00071                         { 
00072 
00073   reset();
00074   m_RpcMuons.clear();
00075   m_DtbxMuons.clear();
00076   m_CscMuons.clear();
00077   
00078 }


Member Function Documentation

const L1MuRegionalCand * L1MuGMTPSB::CSCMuon ( int  index  )  const

get CSC muon

Definition at line 239 of file L1MuGMTPSB.cc.

References m_CscMuons, and L1MuGMTConfig::MAXCSC.

Referenced by L1MuGMTMipIsoAU::load(), L1MuGMTMatcher::load(), and L1MuGMTMerger::load().

00239                                                            {
00240  
00241   return ( index < (int)L1MuGMTConfig::MAXCSC && index >= 0 ) ? &(m_CscMuons[index]) : 0;
00242   
00243 }

const L1MuRegionalCand * L1MuGMTPSB::DTBXMuon ( int  index  )  const

get DTBX muon

Definition at line 229 of file L1MuGMTPSB.cc.

References m_DtbxMuons, and L1MuGMTConfig::MAXDTBX.

Referenced by L1MuGMTMipIsoAU::load(), L1MuGMTMatcher::load(), and L1MuGMTMerger::load().

00229                                                             {
00230       
00231   return ( index < (int)L1MuGMTConfig::MAXDTBX && index >= 0 ) ? &(m_DtbxMuons[index]) : 0;
00232   
00233 }

bool L1MuGMTPSB::empty ( void   )  const

are there any data in the PSB

Definition at line 296 of file L1MuGMTPSB.cc.

References numberCSC(), numberDTBX(), and numberRPC().

Referenced by printCSC(), printDTBX(), printRPCbarrel(), printRPCendcap(), L1MuGlobalMuonTrigger::produce(), and receiveData().

00296                              {
00297 
00298   int number = numberRPC() + numberDTBX() + numberCSC();
00299 
00300   return ( number == 0 );
00301 
00302 }

void L1MuGMTPSB::getCalo ( edm::Event e  )  [private]

get Calorimeter Trigger data

Definition at line 441 of file L1MuGMTPSB.cc.

References L1MuGlobalMuonTrigger::currentReadoutRecord(), lat::endl(), edm::Event::getByLabel(), L1MuGMTConfig::getMipIsoInputTag(), edm::Handle< T >::isValid(), iter, m_gmt, m_Isol, m_Mip, edm::Handle< T >::product(), L1MuGMTReadoutRecord::setMIPbit(), and L1MuGMTReadoutRecord::setQuietbit().

Referenced by receiveData().

00441                                     {
00442   
00443   edm::Handle<L1CaloRegionCollection> calocoll_h;
00444   e.getByLabel(L1MuGMTConfig::getMipIsoInputTag(),calocoll_h);
00445   if(calocoll_h.isValid())
00446   {
00447     L1CaloRegionCollection const* regions = calocoll_h.product();
00448     L1CaloRegionCollection::const_iterator iter;
00449 
00450     //  edm::LogVerbatim("GMT_PSB_info") << "MIP/QUIET bits rceived by the GMT :";
00451 
00452     for ( iter = regions->begin(); iter != regions->end(); iter++ ) {
00453       if ( (*iter).id().ieta() < 4 || (*iter).id().ieta() > 17 || (*iter).id().iphi() > 17 ) continue;
00454       m_Isol.set( (*iter).id().ieta()-4, (*iter).id().iphi(), (*iter).quiet() );
00455       m_Mip.set( (*iter).id().ieta()-4, (*iter).id().iphi(), (*iter).mip() );
00456 
00457       if ( (*iter).quiet() )
00458         m_gmt.currentReadoutRecord()->setQuietbit ((*iter).id().ieta()-4, (*iter).id().iphi());
00459 
00460       if ( (*iter).mip() )
00461         m_gmt.currentReadoutRecord()->setMIPbit ((*iter).id().ieta()-4, (*iter).id().iphi());
00462 
00463       //    edm::LogVerbatim("GMT_PSB_info") << (*iter).id().ieta()-4 << " "
00464       //                                     << (*iter).id().iphi() << " "
00465       //                                     << (*iter).quiet() << " "
00466       //                                     << (*iter).mip();
00467     }
00468   } else {
00469     edm::LogWarning("GlobalMuonTrigger")
00470     << "\nWarning: GlobalMuonTrigger: input tag " << L1MuGMTConfig::getMipIsoInputTag()
00471     << "\nrequested, but not found in the event." << std::endl;
00472   }
00473   
00474 }

void L1MuGMTPSB::getCSC ( std::vector< L1MuRegionalCand > const *  data,
int  bx 
) [private]

get muons from endcap Muon Trigger Track Finder

Definition at line 367 of file L1MuGMTPSB.cc.

References iter, m_CscMuons, and L1MuGMTConfig::MAXCSC.

Referenced by receiveData().

00367                                                                        {
00368 
00369   int icsc = 0;
00370   std::vector<L1MuRegionalCand>::const_iterator iter;
00371   for ( iter = data->begin(); iter != data->end(); iter++ ) {
00372     if ( (*iter).bx() != bx ) continue;
00373     if ( icsc < (int)L1MuGMTConfig::MAXCSC ) { 
00374       m_CscMuons[icsc] = (*iter);
00375       icsc++;
00376     }
00377   }
00378 
00379 }

void L1MuGMTPSB::getDTBX ( std::vector< L1MuRegionalCand > const *  data,
int  bx 
) [private]

get muons from barrel Muon Trigger Track Finder

Definition at line 344 of file L1MuGMTPSB.cc.

References L1MuGMTConfig::Debug(), iter, m_DtbxMuons, and L1MuGMTConfig::MAXDTBX.

Referenced by receiveData().

00344                                                                         {
00345 
00346   // temporary hack with bxoffset - to be removed, trigger bx should be 0
00347   int bxoffset = 0;
00348   int idtbx = 0;
00349   std::vector<L1MuRegionalCand>::const_iterator iter;
00350   for ( iter = data->begin(); iter != data->end(); iter++ ) {
00351     if ( L1MuGMTConfig::Debug(2) ) edm::LogVerbatim("") << "DTTF BX: " << (*iter).bx() << " my bx: " << bx;
00352     if ( (*iter).bx() > 10) bxoffset=16;
00353     if ( (*iter).bx() != bx+bxoffset ) continue;
00354     if ( idtbx < (int)L1MuGMTConfig::MAXDTBX ) { 
00355       m_DtbxMuons[idtbx] = (*iter);
00356       m_DtbxMuons[idtbx].setBx(bx);
00357       idtbx++;
00358     }  
00359   }
00360 
00361 }

void L1MuGMTPSB::getRPCb ( std::vector< L1MuRegionalCand > const *  data,
int  bx 
) [private]

get muons from RPCb Trigger

Definition at line 308 of file L1MuGMTPSB.cc.

References iter, m_RpcMuons, and L1MuGMTConfig::MAXRPCbarrel.

Referenced by receiveData().

00308                                                                         {
00309 
00310   int irpcb = 0;
00311   std::vector<L1MuRegionalCand>::const_iterator iter;
00312   for ( iter = data->begin(); iter != data->end(); iter++ ) {
00313     if ( (*iter).bx() != bx ) continue;
00314     if ( irpcb < (int)L1MuGMTConfig::MAXRPCbarrel ) { 
00315       if(!(*iter).empty()) m_RpcMuons[irpcb] = (*iter);
00316       irpcb++;
00317     }  
00318   }
00319   
00320 }

void L1MuGMTPSB::getRPCf ( std::vector< L1MuRegionalCand > const *  data,
int  bx 
) [private]

get muons from RPCf Trigger

Definition at line 326 of file L1MuGMTPSB.cc.

References iter, m_RpcMuons, and L1MuGMTConfig::MAXRPCendcap.

Referenced by receiveData().

00326                                                                         {
00327 
00328   int irpcf = 0;
00329   std::vector<L1MuRegionalCand>::const_iterator iter;
00330   for ( iter = data->begin(); iter != data->end(); iter++ ) {
00331     if ( (*iter).bx() != bx ) continue;
00332     if ( irpcf < (int)L1MuGMTConfig::MAXRPCendcap ) { 
00333       if(!(*iter).empty()) m_RpcMuons[irpcf+4] = (*iter);
00334       irpcf++;
00335     }  
00336   }
00337   
00338 }

const L1MuGMTMatrix<bool>& L1MuGMTPSB::isolBits (  )  const [inline]

return isolation bits

Definition at line 91 of file L1MuGMTPSB.h.

References m_Isol.

Referenced by L1MuGMTMipIsoAU::assignISO().

00091 { return m_Isol; }

const L1MuGMTMatrix<bool>& L1MuGMTPSB::mipBits (  )  const [inline]

return minimum ionizing bits

Definition at line 94 of file L1MuGMTPSB.h.

References m_Mip.

Referenced by L1MuGMTMipIsoAU::assignMIP().

00094 { return m_Mip; }

int L1MuGMTPSB::numberCSC (  )  const

return number of non-empty CSC muons

Definition at line 280 of file L1MuGMTPSB.cc.

References count, iter, and m_CscMuons.

Referenced by empty().

00280                                 {
00281 
00282   int count = 0;
00283   std::vector<L1MuRegionalCand>::const_iterator iter = m_CscMuons.begin();
00284   while ( iter != m_CscMuons.end() ) {
00285     if ( !(*iter).empty() ) count++;
00286     iter++;
00287   }
00288   return count;
00289 
00290 }

int L1MuGMTPSB::numberDTBX (  )  const

return number of non-empty DTBX muons

Definition at line 264 of file L1MuGMTPSB.cc.

References count, iter, and m_DtbxMuons.

Referenced by empty().

00264                                  {
00265 
00266   int count = 0;
00267   std::vector<L1MuRegionalCand>::const_iterator iter = m_DtbxMuons.begin();
00268   while ( iter != m_DtbxMuons.end() ) {
00269     if ( !(*iter).empty() ) count++;
00270     iter++;
00271   }
00272   return count;
00273 
00274 }

int L1MuGMTPSB::numberRPC (  )  const

return number of non-empty RPC muons

Definition at line 248 of file L1MuGMTPSB.cc.

References count, iter, and m_RpcMuons.

Referenced by empty().

00248                                 {
00249 
00250   int count = 0;
00251   std::vector<L1MuRegionalCand>::const_iterator iter = m_RpcMuons.begin();
00252   while ( iter != m_RpcMuons.end() ) {
00253     if ( !(*iter).empty() ) count++;
00254     iter++;
00255   }
00256   return count;
00257 
00258 }

void L1MuGMTPSB::print ( void   )  const

print PSB

Definition at line 204 of file L1MuGMTPSB.cc.

References printCSC(), printDTBX(), printRPCbarrel(), and printRPCendcap().

Referenced by L1MuGlobalMuonTrigger::produce().

00204                              {
00205 
00206   edm::LogVerbatim("GMT_PSB_info") << " ";
00207   printDTBX();
00208   printRPCbarrel();
00209   printCSC();
00210   printRPCendcap();
00211   edm::LogVerbatim("GMT_PSB_info") << " ";
00212   
00213 }

void L1MuGMTPSB::printCSC (  )  const [private]

print CSC muons

Definition at line 427 of file L1MuGMTPSB.cc.

References empty(), i, m_CscMuons, and L1MuGMTConfig::MAXCSC.

Referenced by print().

00427                                 {
00428 
00429   edm::LogVerbatim("GMT_PSB_info") << "CSC  muons received by the GMT :";
00430 
00431   for ( unsigned i = 0; i < L1MuGMTConfig::MAXCSC; i++ ) {
00432     if (!m_CscMuons[i].empty()) m_CscMuons[i].print();
00433   }
00434 
00435 }

void L1MuGMTPSB::printDTBX (  )  const [private]

print DTBX muons

Definition at line 413 of file L1MuGMTPSB.cc.

References empty(), i, m_DtbxMuons, and L1MuGMTConfig::MAXDTBX.

Referenced by print().

00413                                  {
00414 
00415   edm::LogVerbatim("GMT_PSB_info") << "DTBX muons received by the GMT :";
00416 
00417   for ( unsigned i = 0; i < L1MuGMTConfig::MAXDTBX; i++ ) {
00418     if (!m_DtbxMuons[i].empty()) m_DtbxMuons[i].print();
00419   }
00420   
00421 }

void L1MuGMTPSB::printRPCbarrel (  )  const [private]

print barrel RPC muons

Definition at line 385 of file L1MuGMTPSB.cc.

References empty(), i, m_RpcMuons, and L1MuGMTConfig::MAXRPCbarrel.

Referenced by print().

00385                                       {
00386 
00387   edm::LogVerbatim("GMT_PSB_info") << "RPC barrel  muons received by the GMT :";
00388 
00389   for ( unsigned i = 0; i < L1MuGMTConfig::MAXRPCbarrel; i++ ) {
00390     if (!m_RpcMuons[i].empty()) m_RpcMuons[i].print();
00391   }
00392   
00393 }

void L1MuGMTPSB::printRPCendcap (  )  const [private]

print endcap RPC muons

Definition at line 399 of file L1MuGMTPSB.cc.

References empty(), i, m_RpcMuons, and L1MuGMTConfig::MAXRPCendcap.

Referenced by print().

00399                                       {
00400 
00401   edm::LogVerbatim("GMT_PSB_info") << "RPC endcap  muons received by the GMT :";
00402 
00403   for ( unsigned i = 0; i < L1MuGMTConfig::MAXRPCendcap; i++ ) {
00404     if (!m_RpcMuons[i+4].empty()) m_RpcMuons[i+4].print();
00405   }
00406 
00407 }

void L1MuGMTPSB::receiveData ( edm::Event e,
int  bx 
)

receive muon candidates

Definition at line 87 of file L1MuGMTPSB.cc.

References L1MuGlobalMuonTrigger::currentReadoutRecord(), empty(), lat::endl(), L1MuRegionalCand::eta_packed(), edm::Event::getByLabel(), getCalo(), L1MuGMTConfig::getCaloTrigger(), getCSC(), L1MuGMTConfig::getCSCInputTag(), getDTBX(), L1MuGMTConfig::getDTInputTag(), L1MuScale::getLowEdge(), L1MuTriggerScales::getPhiScale(), L1MuTriggerPtScale::getPtScale(), L1MuTriggerScales::getRegionalEtaScale(), getRPCb(), L1MuGMTConfig::getRPCbInputTag(), getRPCf(), L1MuGMTConfig::getRPCfInputTag(), L1MuGMTConfig::getTriggerPtScale(), L1MuGMTConfig::getTriggerScales(), i, edm::Handle< T >::isValid(), label, m_CscMuons, m_DtbxMuons, m_gmt, m_RpcMuons, L1MuRegionalCand::phi_packed(), edm::Handle< T >::product(), L1MuRegionalCand::pt_packed(), L1MuRegionalCand::setEtaValue(), L1MuGMTReadoutRecord::setInputCand(), L1MuRegionalCand::setPhiValue(), L1MuRegionalCand::setPtValue(), and L1MuRegionalCand::type_idx().

Referenced by L1MuGlobalMuonTrigger::produce().

00087                                                 {
00088 
00090 
00091   edm::Handle<std::vector<L1MuRegionalCand> > rc_handle;
00092 
00093   if((L1MuGMTConfig::getDTInputTag()).label() != "none" ) {
00094     e.getByLabel(L1MuGMTConfig::getDTInputTag(),rc_handle);
00095     if(rc_handle.isValid()) {
00096       getDTBX(rc_handle.product(),bx);
00097     } else {
00098       edm::LogWarning("GlobalMuonTrigger")
00099       << "\nWarning: GlobalMuonTrigger: input tag " << L1MuGMTConfig::getDTInputTag()
00100       << "\nrequested, but not found in the event." << std::endl;      
00101     }
00102   }
00103   if((L1MuGMTConfig::getCSCInputTag()).label() != "none" ) {
00104     e.getByLabel(L1MuGMTConfig::getCSCInputTag(),rc_handle);
00105     if(rc_handle.isValid()) {
00106       getCSC(rc_handle.product(),bx);
00107     } else {
00108       edm::LogWarning("GlobalMuonTrigger")
00109       << "\nWarning: GlobalMuonTrigger: input tag " << L1MuGMTConfig::getCSCInputTag()
00110       << "\nrequested, but not found in the event." << std::endl;      
00111     }
00112   }
00113   if((L1MuGMTConfig::getRPCbInputTag()).label() != "none" ) {
00114     e.getByLabel(L1MuGMTConfig::getRPCbInputTag(),rc_handle);
00115     if(rc_handle.isValid()) {
00116       getRPCb(rc_handle.product(),bx);
00117     } else {
00118       edm::LogWarning("GlobalMuonTrigger")
00119       << "\nWarning: GlobalMuonTrigger: input tag " << L1MuGMTConfig::getRPCbInputTag()
00120       << "\nrequested, but not found in the event." << std::endl;      
00121     }
00122   }
00123   if((L1MuGMTConfig::getRPCfInputTag()).label() != "none" ) {
00124     e.getByLabel(L1MuGMTConfig::getRPCfInputTag(),rc_handle);
00125     if(rc_handle.isValid()) {
00126       getRPCf(rc_handle.product(),bx);
00127     } else {
00128       edm::LogWarning("GlobalMuonTrigger")
00129       << "\nWarning: GlobalMuonTrigger: input tag " << L1MuGMTConfig::getRPCfInputTag()
00130       << "\nrequested, but not found in the event." << std::endl;      
00131     }
00132   }
00134 
00135   const L1MuTriggerScales* theTriggerScales = L1MuGMTConfig::getTriggerScales();
00136   const L1MuTriggerPtScale* theTriggerPtScale = L1MuGMTConfig::getTriggerPtScale();
00137 
00138   // store data in readout record
00139   for (int i=0; i<4; i++) {
00140     L1MuRegionalCand* cand = &(m_DtbxMuons[i]);
00141     cand->setPhiValue( theTriggerScales->getPhiScale()->getLowEdge(cand->phi_packed()) );
00142     cand->setEtaValue( theTriggerScales->getRegionalEtaScale(cand->type_idx())->getCenter(cand->eta_packed()) );
00143     cand->setPtValue( theTriggerPtScale->getPtScale()->getLowEdge(cand->pt_packed()) );
00144     // cand->setPtValue( theTriggerScales->getPtScale()->getLowEdge(cand->pt_packed()) );
00145     m_gmt.currentReadoutRecord()->setInputCand ( i, *cand );
00146   }
00147   for (int i=0; i<4; i++) {
00148     L1MuRegionalCand* cand = &(m_RpcMuons[i]);
00149     cand->setPhiValue( theTriggerScales->getPhiScale()->getLowEdge(cand->phi_packed()) );
00150     cand->setEtaValue( theTriggerScales->getRegionalEtaScale(cand->type_idx())->getCenter(cand->eta_packed()) );
00151     cand->setPtValue( theTriggerPtScale->getPtScale()->getLowEdge(cand->pt_packed()) );
00152     // cand->setPtValue( theTriggerScales->getPtScale()->getLowEdge(cand->pt_packed()) );
00153     m_gmt.currentReadoutRecord()->setInputCand ( i+4, *cand );
00154   }
00155   for (int i=0; i<4; i++) {
00156     L1MuRegionalCand* cand = &(m_CscMuons[i]);
00157     cand->setPhiValue( theTriggerScales->getPhiScale()->getLowEdge(cand->phi_packed()) );
00158     cand->setEtaValue( theTriggerScales->getRegionalEtaScale(cand->type_idx())->getCenter(cand->eta_packed()) );
00159     cand->setPtValue( theTriggerPtScale->getPtScale()->getLowEdge(cand->pt_packed()) );
00160     // cand->setPtValue( theTriggerScales->getPtScale()->getLowEdge(cand->pt_packed()) );
00161     m_gmt.currentReadoutRecord()->setInputCand ( i+8, *cand );
00162   }
00163   for (int i=0; i<4; i++) {
00164     L1MuRegionalCand* cand = &(m_RpcMuons[i+4]);
00165     cand->setPhiValue( theTriggerScales->getPhiScale()->getLowEdge(cand->phi_packed()) );
00166     cand->setEtaValue( theTriggerScales->getRegionalEtaScale(cand->type_idx())->getCenter(cand->eta_packed()) );
00167     cand->setPtValue( theTriggerPtScale->getPtScale()->getLowEdge(cand->pt_packed()) );
00168     // cand->setPtValue( theTriggerScales->getPtScale()->getLowEdge(cand->pt_packed()) );
00169     m_gmt.currentReadoutRecord()->setInputCand ( i+12, *cand );
00170   }
00171 
00172 
00173   // if there is at least one muon start the calorimeter trigger 
00174 
00175   if ( L1MuGMTConfig::getCaloTrigger() && !empty() ) getCalo(e);
00176 
00177 }

void L1MuGMTPSB::reset ( void   ) 

clear PSB

Definition at line 183 of file L1MuGMTPSB.cc.

References iter, m_CscMuons, m_DtbxMuons, m_Isol, m_Mip, and m_RpcMuons.

Referenced by L1MuGlobalMuonTrigger::reset(), and ~L1MuGMTPSB().

00183                        {
00184 
00185   std::vector<L1MuRegionalCand>::iterator iter; 
00186   iter = m_RpcMuons.begin();
00187   while ( iter != m_RpcMuons.end() ) (*(iter++)).reset();
00188 
00189   iter = m_DtbxMuons.begin();
00190   while ( iter != m_DtbxMuons.end() )(*(iter++)).reset();
00191 
00192   iter = m_CscMuons.begin();
00193   while ( iter != m_CscMuons.end() ) (*(iter++)).reset();
00194   
00195   m_Isol.init(false);
00196   m_Mip.init(false);
00197 
00198 }

const L1MuRegionalCand * L1MuGMTPSB::RPCMuon ( int  index  )  const

get RPC muon

Definition at line 219 of file L1MuGMTPSB.cc.

References m_RpcMuons, and L1MuGMTConfig::MAXRPC.

Referenced by L1MuGMTMipIsoAU::load(), L1MuGMTMatcher::load(), and L1MuGMTMerger::load().

00219                                                            {
00220   
00221   return ( index < (int)L1MuGMTConfig::MAXRPC && index >= 0 ) ? &(m_RpcMuons[index]) : 0;
00222   
00223 }


Member Data Documentation

std::vector<L1MuRegionalCand> L1MuGMTPSB::m_CscMuons [private]

Definition at line 131 of file L1MuGMTPSB.h.

Referenced by CSCMuon(), getCSC(), L1MuGMTPSB(), numberCSC(), printCSC(), receiveData(), reset(), and ~L1MuGMTPSB().

std::vector<L1MuRegionalCand> L1MuGMTPSB::m_DtbxMuons [private]

Definition at line 130 of file L1MuGMTPSB.h.

Referenced by DTBXMuon(), getDTBX(), L1MuGMTPSB(), numberDTBX(), printDTBX(), receiveData(), reset(), and ~L1MuGMTPSB().

const L1MuGlobalMuonTrigger& L1MuGMTPSB::m_gmt [private]

Definition at line 127 of file L1MuGMTPSB.h.

Referenced by getCalo(), and receiveData().

L1MuGMTMatrix<bool> L1MuGMTPSB::m_Isol [private]

Definition at line 133 of file L1MuGMTPSB.h.

Referenced by getCalo(), isolBits(), L1MuGMTPSB(), and reset().

L1MuGMTMatrix<bool> L1MuGMTPSB::m_Mip [private]

Definition at line 134 of file L1MuGMTPSB.h.

Referenced by getCalo(), L1MuGMTPSB(), mipBits(), and reset().

std::vector<L1MuRegionalCand> L1MuGMTPSB::m_RpcMuons [private]

Definition at line 129 of file L1MuGMTPSB.h.

Referenced by getRPCb(), getRPCf(), L1MuGMTPSB(), numberRPC(), printRPCbarrel(), printRPCendcap(), receiveData(), reset(), RPCMuon(), and ~L1MuGMTPSB().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:26:55 2009 for CMSSW by  doxygen 1.5.4