57 m_Isol(14, 18,
false),
58 m_Mip(14, 18,
false) {
102 <<
"\nrequested, but not found in the event." << std::endl;
114 <<
"\nrequested, but not found in the event." << std::endl;
126 <<
"\nrequested, but not found in the event." << std::endl;
138 <<
"\nrequested, but not found in the event." << std::endl;
149 for (
int i = 0;
i < 4;
i++) {
157 for (
int i = 0;
i < 4;
i++) {
165 for (
int i = 0;
i < 4;
i++) {
173 for (
int i = 0;
i < 4;
i++) {
192 std::vector<L1MuRegionalCand>::iterator iter;
247 std::vector<L1MuRegionalCand>::const_iterator iter =
m_RpcMuons.begin();
249 if (!(*iter).empty())
261 std::vector<L1MuRegionalCand>::const_iterator iter =
m_DtbxMuons.begin();
263 if (!(*iter).empty())
275 std::vector<L1MuRegionalCand>::const_iterator iter =
m_CscMuons.begin();
277 if (!(*iter).empty())
290 return (number == 0);
298 std::vector<L1MuRegionalCand>::const_iterator iter;
299 for (iter = data->begin(); iter != data->end(); iter++) {
300 if ((*iter).bx() !=
bx)
303 if (!(*iter).empty())
315 std::vector<L1MuRegionalCand>::const_iterator iter;
316 for (iter = data->begin(); iter != data->end(); iter++) {
317 if ((*iter).bx() !=
bx)
320 if (!(*iter).empty())
334 std::vector<L1MuRegionalCand>::const_iterator iter;
335 for (iter = data->begin(); iter != data->end(); iter++) {
338 if ((*iter).bx() > 10)
340 if ((*iter).bx() != bx + bxoffset)
355 std::vector<L1MuRegionalCand>::const_iterator iter;
356 for (iter = data->begin(); iter != data->end(); iter++) {
357 if ((*iter).bx() !=
bx)
370 edm::LogVerbatim(
"GMT_PSB_info") <<
"RPC barrel muons received by the GMT :";
382 edm::LogVerbatim(
"GMT_PSB_info") <<
"RPC endcap muons received by the GMT :";
422 L1CaloRegionCollection::const_iterator iter;
426 for (iter = regions->begin(); iter != regions->end(); iter++) {
427 if ((*iter).id().ieta() < 4 || (*iter).id().ieta() > 17 || (*iter).id().iphi() > 17)
429 m_Isol.
set((*iter).id().ieta() - 4, (*iter).id().iphi(), (*iter).quiet());
430 m_Mip.
set((*iter).id().ieta() - 4, (*iter).id().iphi(), (*iter).mip());
447 <<
"\nrequested, but not found in the event." << std::endl;
Log< level::Info, true > LogVerbatim
void getRPCf(std::vector< L1MuRegionalCand > const *data, int bx)
get muons from RPCf Trigger
int numberDTBX() const
return number of non-empty DTBX muons
void print() const
print PSB
void getCSC(std::vector< L1MuRegionalCand > const *data, int bx)
get muons from endcap Muon Trigger Track Finder
static edm::InputTag getRPCfInputTag()
static edm::InputTag getRPCbInputTag()
const L1MuScale * getPtScale() const
get the Pt scale
static bool getCaloTrigger()
void set(int r, int c, T v)
set matrix element
virtual float getLowEdge(unsigned packed) const =0
get the low edge of bin represented by packed
bool empty() const
are there any data in the PSB
void setInputCand(int nr, unsigned data)
set Input muon
unsigned getSubsystemMask() const
void getCalo(edm::Event &e)
get Calorimeter Trigger data
const L1MuGlobalMuonTrigger & m_gmt
int numberRPC() const
return number of non-empty RPC muons
void setPtValue(float ptVal)
Set Pt Value.
L1MuGMTPSB(const L1MuGlobalMuonTrigger &gmt, edm::ConsumesCollector &&iC)
constructor
void setQuietbit(int eta, int phi)
set Quiet bit
const L1MuRegionalCand * CSCMuon(int index) const
get CSC muon
void setMIPbit(int eta, int phi)
set MIP bit
void printDTBX() const
print DTBX muons
void setPhiValue(float phiVal)
Set Phi Value.
void reset(T v)
reset all elements
const L1MuScale * getPhiScale() const
get the phi scale
static const L1MuGMTChannelMask * getGMTChanMask()
void setEtaValue(float etaVal)
Set Eta Value (need to set type, first)
const L1MuRegionalCand * RPCMuon(int index) const
get RPC muon
unsigned eta_packed() const
return eta packed as in hardware
static const unsigned int MAXCSC
static const unsigned int MAXDTBX
static const unsigned int MAXRPCendcap
virtual ~L1MuGMTPSB()
destructor
std::vector< L1MuRegionalCand > m_CscMuons
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
static const L1MuTriggerPtScale * getTriggerPtScale()
L1MuGMTMatrix< bool > m_Isol
void printRPCbarrel() const
print barrel RPC muons
T const * product() const
static const L1MuTriggerScales * getTriggerScales()
void getRPCb(std::vector< L1MuRegionalCand > const *data, int bx)
get muons from RPCb Trigger
const L1MuRegionalCand * DTBXMuon(int index) const
get DTBX muon
void printCSC() const
print CSC muons
const L1MuScale * getRegionalEtaScale(int isys) const
get the regioanl muon trigger eta scale, isys = 0(DT), 1(bRPC), 2(CSC), 3(fwdRPC) ...
void receiveData(edm::Event &e, int bx)
receive muon candidates
char data[epos_bytes_allocation]
static edm::InputTag getMipIsoInputTag()
void printRPCendcap() const
print endcap RPC muons
void getDTBX(std::vector< L1MuRegionalCand > const *data, int bx)
get muons from barrel Muon Trigger Track Finder
L1MuGMTMatrix< bool > m_Mip
static const unsigned int MAXRPCbarrel
int numberCSC() const
return number of non-empty CSC muons
std::vector< L1CaloRegion > L1CaloRegionCollection
std::vector< L1MuRegionalCand > m_RpcMuons
Log< level::Warning, false > LogWarning
unsigned pt_packed() const
return pt packed as in hardware
std::vector< L1MuRegionalCand > m_DtbxMuons
static edm::InputTag getDTInputTag()
unsigned type_idx() const
return type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC
L1MuGMTReadoutRecord * currentReadoutRecord() const
return a reference to the current record in the ring buffer
static const unsigned int MAXRPC
unsigned phi_packed() const
return phi packed as in hardware
static edm::InputTag getCSCInputTag()