28 #include <sys/types.h> 70 produces<std::vector<L1MuGMTCand> >();
71 produces<L1MuGMTReadoutCollection>();
74 produces<std::vector<unsigned> >();
120 edm::LogVerbatim(
"GMT_info") <<
"creating GMT MIP & ISO bit Assigment Unit (0,1)";
137 usesResource(
"L1MuGlobalMuonTrigger");
223 onoff = mask & 1 ?
"OFF" :
"ON";
225 onoff = mask & 2 ?
"OFF" :
"ON";
227 onoff = mask & 4 ?
"OFF" :
"ON";
229 onoff = mask & 8 ?
"OFF" :
"ON";
249 mkdir(dir.c_str(), S_ISUID | S_ISGID | S_ISVTX | S_IRUSR | S_IWUSR | S_IXUSR);
277 for (
int bx = bx_min;
bx <= bx_max;
bx++) {
284 edm::LogVerbatim(
"GMT_info") <<
"L1GlobalMuonTrigger processing bunch-crossing : " <<
bx;
341 edm::LogVerbatim(
"GMT_info") <<
"running GMT barrel MIP & ISO bit Assignment Unit";
347 edm::LogVerbatim(
"GMT_info") <<
"running GMT endcap MIP & ISO bit Assignment Unit";
377 const std::vector<const L1MuGMTExtendedCand*>& gmt_cont =
m_Sorter->
Cands();
378 std::vector<const L1MuGMTExtendedCand*>::const_iterator iexc;
379 for (iexc = gmt_cont.begin(); iexc != gmt_cont.end(); iexc++) {
391 std::unique_ptr<std::vector<L1MuGMTCand> > GMTCands(
new std::vector<L1MuGMTCand>);
392 std::vector<L1MuGMTExtendedCand>::const_iterator iexc;
394 GMTCands->push_back(*iexc);
402 std::unique_ptr<std::vector<unsigned> > mipiso(
new std::vector<unsigned>);
403 for (
int i = 0;
i < 32;
i++) {
447 int bx_size = bx_max_ro - bx_min_ro + 1;
451 for (
int bx = bx_min_ro;
bx <= bx_max_ro;
bx++) {
455 if ((*iter)->getBxInEvent() ==
bx) {
456 rrc->addRecord(**iter);
void setGMTChanMask(const L1MuGMTChannelMask *gmtchanmask)
T getUntrackedParameter(std::string const &, T const &) const
unsigned long long m_L1MuTriggerScalesCacheID
std::vector< L1MuGMTReadoutRecord * > m_ReadoutRingbuffer
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
unsigned long long m_L1MuGMTChannelMaskCacheID
void print() const
print PSB
void SetBX(int bx)
Set the current bunch crossing.
void setTriggerPtScale(const L1MuTriggerPtScale *trigptscale)
void dumpRegs(std::string dir)
std::vector< L1MuGMTExtendedCand > m_ExtendedCands
void reset()
clear cancel-out unit
void print() const
print results after MIP & ISO bit assignment
void print()
print cancel-out bits
bool empty() const
are there any data in the PSB
void produce(edm::Event &, const edm::EventSetup &) override
virtual void reset()
reset Sorter
unsigned getSubsystemMask() const
void reset()
clear MIP & ISO bit assignment unit
L1MuGlobalMuonTrigger(const edm::ParameterSet &)
void print()
print matching results
const std::vector< const L1MuGMTExtendedCand * > & Cands() const
return std::vector with all muon candidates
unsigned long long m_L1CaloGeometryCacheID
virtual void run()
run Sorter
void run()
run GMT MIP & ISO bit assignment unit
void setGMTScales(const L1MuGMTScales *gmtscales)
unsigned long long m_L1MuTriggerPtScaleCacheID
L1MuGMTMipIsoAU * m_MipIsoAU[2]
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
static const L1MuGMTChannelMask * getGMTChanMask()
std::unique_ptr< L1MuGMTReadoutCollection > getReadoutCollection()
unsigned IsMIPISO(int bx, int idx)
Get stored MIP/ISO select bits.
L1MuGMTMatcher * m_Matcher[2]
void dumpLUTs(std::string dir)
L1MuGMTMerger * m_Merger[2]
void setCaloGeom(const L1CaloGeometry *caloGeom)
void print() const
print results after selection
unsigned long long m_L1MuGMTScalesCacheID
void print()
print results after sorting
L1MuGMTCancelOutUnit * m_CancelOutUnit[4]
void reset()
clear Matcher
void setGMTParams(const L1MuGMTParameters *gmtparams)
~L1MuGlobalMuonTrigger() override
void receiveData(edm::Event &e, int bx)
receive muon candidates
void reset()
Reset the debug block.
static L1MuGMTConfig * m_config
unsigned long long m_L1MuGMTParametersCacheID
static L1MuGMTDebugBlock * m_db
void setTriggerScales(const L1MuTriggerScales *trigscales)
void run()
run cancel-out unit
T const * product() const
int numberOfCands() const
return number of found muon candidates after sorter