#include <L1MuGMTExtendedCand.h>
Classes | |
class | Rank |
define a rank for muon candidates More... | |
class | RankRef |
define a rank for muon candidates More... | |
Public Member Functions | |
unsigned int | detector () const |
unsigned | getDTCSCIndex () const |
get index of contributing DT/CSC muon | |
unsigned | getRPCIndex () const |
get index of contributing RPC muon | |
bool | isFwd () const |
get forward bit (true=forward, false=barrel) | |
bool | isRPC () const |
get RPC bit (true=RPC, false = DT/CSC or matched) | |
L1MuGMTExtendedCand (unsigned data, unsigned rank, int bx=0) | |
constructor | |
L1MuGMTExtendedCand () | |
constructor | |
L1MuGMTExtendedCand (const L1MuGMTExtendedCand &) | |
copy constructor | |
bool | operator!= (const L1MuGMTExtendedCand &) const |
unequal operator | |
bool | operator== (const L1MuGMTExtendedCand &) const |
equal operator | |
void | print () const |
print parameters of muon candidate | |
unsigned int | rank () const |
get rank | |
void | reset () |
reset muon candidate | |
void | setDTCSCIndex (unsigned int idxdtcsc) |
set index of contributing DT/CSC muon | |
void | setFwdBit (unsigned int fwdbit) |
set forward bit (1=forward, 0=barrel) | |
void | setRank (unsigned int rank) |
set rank | |
void | setRPCBit (unsigned int rpcbit) |
set RPC bit (1=RPC, 0=DT/CSC or matched) | |
void | setRPCIndex (unsigned int idxrpc) |
set index of contributing RPC muon | |
virtual | ~L1MuGMTExtendedCand () |
destructor | |
Private Types | |
enum | { IDXDTCSC_START = 26 } |
enum | { IDXDTCSC_LENGTH = 2 } |
enum | { IDXRPC_START = 28 } |
enum | { IDXRPC_LENGTH = 2 } |
enum | { FWDBIT_START = 30 } |
enum | { FWDBIT_LENGTH = 1 } |
enum | { ISRPCBIT_START = 31 } |
enum | { ISRPCBIT_LENGTH = 1 } |
Private Attributes | |
unsigned int | m_rank |
Friends | |
std::ostream & | operator<< (std::ostream &, const L1MuGMTExtendedCand &) |
output stream operator |
L1 Global Muon Trigger Extended Candidate.
This is a GMT candidate with extended information that will be sent to Readout.
This candidates contains extra information such as sort rank and indices of the contributing muons.
Definition at line 49 of file L1MuGMTExtendedCand.h.
anonymous enum [private] |
Definition at line 151 of file L1MuGMTExtendedCand.h.
{ IDXDTCSC_START=26}; enum { IDXDTCSC_LENGTH = 2}; // Bit 26:27 DT/CSC muon index
anonymous enum [private] |
Definition at line 151 of file L1MuGMTExtendedCand.h.
{ IDXDTCSC_START=26}; enum { IDXDTCSC_LENGTH = 2}; // Bit 26:27 DT/CSC muon index
anonymous enum [private] |
Definition at line 152 of file L1MuGMTExtendedCand.h.
{ IDXRPC_START=28}; enum { IDXRPC_LENGTH = 2}; // Bit 28:29 RPC muon index
anonymous enum [private] |
Definition at line 152 of file L1MuGMTExtendedCand.h.
{ IDXRPC_START=28}; enum { IDXRPC_LENGTH = 2}; // Bit 28:29 RPC muon index
anonymous enum [private] |
Definition at line 153 of file L1MuGMTExtendedCand.h.
{ FWDBIT_START=30}; enum { FWDBIT_LENGTH = 1}; // Bit 30 fwd bit
anonymous enum [private] |
Definition at line 153 of file L1MuGMTExtendedCand.h.
{ FWDBIT_START=30}; enum { FWDBIT_LENGTH = 1}; // Bit 30 fwd bit
anonymous enum [private] |
Definition at line 154 of file L1MuGMTExtendedCand.h.
{ ISRPCBIT_START=31}; enum { ISRPCBIT_LENGTH = 1}; // Bit 31 isRPC bit
anonymous enum [private] |
Definition at line 154 of file L1MuGMTExtendedCand.h.
{ ISRPCBIT_START=31}; enum { ISRPCBIT_LENGTH = 1}; // Bit 31 isRPC bit
L1MuGMTExtendedCand::L1MuGMTExtendedCand | ( | ) |
L1MuGMTExtendedCand::L1MuGMTExtendedCand | ( | unsigned | data, |
unsigned | rank, | ||
int | bx = 0 |
||
) |
constructor
Definition at line 56 of file L1MuGMTExtendedCand.cc.
: L1MuGMTCand (data, bx), m_rank(rank) { }
L1MuGMTExtendedCand::L1MuGMTExtendedCand | ( | const L1MuGMTExtendedCand & | mu | ) |
copy constructor
Definition at line 52 of file L1MuGMTExtendedCand.cc.
: L1MuGMTCand(mu), m_rank(mu.m_rank){ }
L1MuGMTExtendedCand::~L1MuGMTExtendedCand | ( | ) | [virtual] |
unsigned int L1MuGMTExtendedCand::detector | ( | ) | const |
get detector bits 1=rpc, 2=dtbx, 4=csc, 3=rpc+dtbx, 5=rpc+csc supported for backward compatibility only
Definition at line 91 of file L1MuGMTExtendedCand.cc.
References isFwd(), isRPC(), and L1MuGMTCand::quality().
unsigned L1MuGMTExtendedCand::getDTCSCIndex | ( | ) | const [inline] |
get index of contributing DT/CSC muon
Definition at line 75 of file L1MuGMTExtendedCand.h.
References IDXDTCSC_LENGTH, IDXDTCSC_START, and L1MuGMTCand::readDataField().
Referenced by print(), and L2MuonSeedGenerator::produce().
{ return readDataField( IDXDTCSC_START, IDXDTCSC_LENGTH); }
unsigned L1MuGMTExtendedCand::getRPCIndex | ( | ) | const [inline] |
get index of contributing RPC muon
Definition at line 80 of file L1MuGMTExtendedCand.h.
References IDXRPC_LENGTH, IDXRPC_START, and L1MuGMTCand::readDataField().
Referenced by print(), and L2MuonSeedGenerator::produce().
{ return readDataField( IDXRPC_START, IDXRPC_LENGTH); }
bool L1MuGMTExtendedCand::isFwd | ( | ) | const [inline] |
get forward bit (true=forward, false=barrel)
Definition at line 85 of file L1MuGMTExtendedCand.h.
References FWDBIT_LENGTH, FWDBIT_START, and L1MuGMTCand::readDataField().
Referenced by detector(), cms::HICFTSfromL1orL2::FTSfromL1(), l1extra::L1MuonParticle::L1MuonParticle(), print(), and L2MuonSeedGenerator::produce().
{ return readDataField( FWDBIT_START, FWDBIT_LENGTH) == 1; }
bool L1MuGMTExtendedCand::isRPC | ( | ) | const [inline] |
get RPC bit (true=RPC, false = DT/CSC or matched)
Definition at line 88 of file L1MuGMTExtendedCand.h.
References ISRPCBIT_LENGTH, ISRPCBIT_START, and L1MuGMTCand::readDataField().
Referenced by detector(), l1extra::L1MuonParticle::L1MuonParticle(), print(), and L2MuonSeedGenerator::produce().
{ return readDataField( ISRPCBIT_START, ISRPCBIT_LENGTH) == 1; }
bool L1MuGMTExtendedCand::operator!= | ( | const L1MuGMTExtendedCand & | cand | ) | const |
unequal operator
Definition at line 116 of file L1MuGMTExtendedCand.cc.
References m_rank.
{ if ( (L1MuGMTCand const&) *this != cand ) return true; if ( m_rank != cand.m_rank ) return true; return false; }
bool L1MuGMTExtendedCand::operator== | ( | const L1MuGMTExtendedCand & | cand | ) | const |
equal operator
Definition at line 104 of file L1MuGMTExtendedCand.cc.
References m_rank.
{ if ( (L1MuGMTCand const&) *this != cand ) return false; if ( m_rank != m_rank ) return false; return true; }
void L1MuGMTExtendedCand::print | ( | void | ) | const |
print parameters of muon candidate
Reimplemented from L1MuGMTCand.
Reimplemented in SimpleL1MuGMTCand.
Definition at line 128 of file L1MuGMTExtendedCand.cc.
References L1MuGMTCand::empty(), getDTCSCIndex(), getRPCIndex(), isFwd(), isRPC(), and rank().
{ L1MuGMTCand::print(); if ( !empty() ) { edm::LogVerbatim("GMT_Candidate_info") << setiosflags(ios::right | ios::adjustfield | ios::showpoint | ios::fixed) << "rank = " << setw(3) << rank() << " " << "idxdtcsc = " << setw(1) << getDTCSCIndex() << " " << "idxrpc = " << setw(1) << getRPCIndex() << " " << "isFwd = " << setw(1) << isFwd() << " " << "isRPC = " << setw(1) << isRPC() << endl; } }
unsigned int L1MuGMTExtendedCand::rank | ( | ) | const [inline] |
get rank
Reimplemented in SimpleL1MuGMTCand.
Definition at line 72 of file L1MuGMTExtendedCand.h.
References m_rank.
Referenced by L1MuGMTExtendedCand::RankRef::operator()(), L1MuGMTExtendedCand::Rank::operator()(), print(), and setRank().
{ return m_rank; }
void L1MuGMTExtendedCand::reset | ( | void | ) |
reset muon candidate
Reimplemented from L1MuGMTCand.
Reimplemented in SimpleL1MuGMTCand.
Definition at line 77 of file L1MuGMTExtendedCand.cc.
References m_rank.
Referenced by ~L1MuGMTExtendedCand().
{ L1MuGMTCand::reset(); m_rank = 0; }
void L1MuGMTExtendedCand::setDTCSCIndex | ( | unsigned int | idxdtcsc | ) | [inline] |
set index of contributing DT/CSC muon
Definition at line 103 of file L1MuGMTExtendedCand.h.
References IDXDTCSC_LENGTH, IDXDTCSC_START, and L1MuGMTCand::writeDataField().
Referenced by L1MuGMTMerger::createDTCSCCand(), L1MuGMTMerger::createMergedCand(), and L1MuGMTMerger::createRPCCand().
{ writeDataField( IDXDTCSC_START, IDXDTCSC_LENGTH, idxdtcsc); }
void L1MuGMTExtendedCand::setFwdBit | ( | unsigned int | fwdbit | ) | [inline] |
set forward bit (1=forward, 0=barrel)
Definition at line 111 of file L1MuGMTExtendedCand.h.
References FWDBIT_LENGTH, FWDBIT_START, and L1MuGMTCand::writeDataField().
Referenced by L1MuGMTMerger::createDTCSCCand(), L1MuGMTMerger::createMergedCand(), L1MuGMTMerger::createRPCCand(), and SimpleL1MuGMTCand::SimpleL1MuGMTCand().
{ writeDataField( FWDBIT_START, FWDBIT_LENGTH, fwdbit); }
void L1MuGMTExtendedCand::setRank | ( | unsigned int | rank | ) | [inline] |
set rank
Reimplemented in SimpleL1MuGMTCand.
Definition at line 91 of file L1MuGMTExtendedCand.h.
References m_rank, and rank().
Referenced by L1MuGMTMerger::createDTCSCCand(), L1MuGMTMerger::createMergedCand(), and L1MuGMTMerger::createRPCCand().
void L1MuGMTExtendedCand::setRPCBit | ( | unsigned int | rpcbit | ) | [inline] |
set RPC bit (1=RPC, 0=DT/CSC or matched)
Definition at line 114 of file L1MuGMTExtendedCand.h.
References ISRPCBIT_LENGTH, ISRPCBIT_START, and L1MuGMTCand::writeDataField().
Referenced by L1MuGMTMerger::createDTCSCCand(), L1MuGMTMerger::createMergedCand(), L1MuGMTMerger::createRPCCand(), and SimpleL1MuGMTCand::SimpleL1MuGMTCand().
{ writeDataField( ISRPCBIT_START, ISRPCBIT_LENGTH, rpcbit); }
void L1MuGMTExtendedCand::setRPCIndex | ( | unsigned int | idxrpc | ) | [inline] |
set index of contributing RPC muon
Definition at line 108 of file L1MuGMTExtendedCand.h.
References IDXRPC_LENGTH, IDXRPC_START, and L1MuGMTCand::writeDataField().
Referenced by L1MuGMTMerger::createDTCSCCand(), L1MuGMTMerger::createMergedCand(), and L1MuGMTMerger::createRPCCand().
{ writeDataField( IDXRPC_START, IDXRPC_LENGTH, idxrpc); }
std::ostream& operator<< | ( | std::ostream & | , |
const L1MuGMTExtendedCand & | |||
) | [friend] |
output stream operator
unsigned int L1MuGMTExtendedCand::m_rank [private] |
Reimplemented in SimpleL1MuGMTCand.
Definition at line 149 of file L1MuGMTExtendedCand.h.
Referenced by operator!=(), operator==(), rank(), reset(), and setRank().