#include <FourVectorHLTOnline.h>
Public Member Functions | |
void | clearSets () |
void | clearSets () |
void | fillL1Match (FourVectorHLTOffline *fv) |
void | fillL1OffMatch (FourVectorHLTOffline *fv) |
void | fillOnL1Match (const int l1Index, FourVectorHLTOffline *fv) |
void | fillOnL1Match (const int l1Index, FourVectorHLTOnline *fv) |
void | fillOnlineMatch (const int l1Index, FourVectorHLTOffline *fv) |
void | fillOnlineMatch (const int l1Index, FourVectorHLTOnline *fv) |
void | fillOnOffMatch (FourVectorHLTOffline *fv) |
bool | isL1TriggerType (int t) |
bool | isL1TriggerType (int t) |
bool | isTriggerType (int t) |
bool | isTriggerType (int t) |
void | matchL1Offline (const trigger::TriggerObject &l1FV, FourVectorHLTOffline *fv, const int &NL1, unsigned int &NL1OffUM) |
void | matchOnlineL1 (const trigger::TriggerObject &onlineFV, const int &l1Index, FourVectorHLTOffline *fv, const int &NOn) |
void | matchOnlineL1 (const trigger::TriggerObject &onlineFV, const int &l1Index, FourVectorHLTOnline *fv, const int &NOn) |
void | matchOnlineOffline (const trigger::TriggerObject &onlineFV, FourVectorHLTOffline *fv, const int &NOn) |
void | monitorL1 (const int l1Index, FourVectorHLTOnline *fv) |
void | monitorL1 (const int l1Index, FourVectorHLTOffline *fv) |
void | monitorOffline () |
void | monitorOnline (const int hltIndex, const int l1Index, FourVectorHLTOnline *fv) |
void | monitorOnline (const int hltIndex, const int l1Index, FourVectorHLTOffline *fv) |
objMonData () | |
objMonData () | |
void | pushL1TriggerType (int trigType) |
void | pushL1TriggerType (int trigType) |
void | pushTriggerType (int trigType) |
void | pushTriggerType (int trigType) |
void | setBJetsFlag (bool flag) |
void | setBJetsFlag (bool flag) |
void | setL1TriggerType (std::vector< int > trigType) |
void | setL1TriggerType (std::vector< int > trigType) |
void | setL2MuFlag (bool flag) |
void | setLimits (float etaMax, float etMin, float drMatch, float l1drMatch, float dRRange, float thresholdFactor) |
void | setLimits (float etaMax, float etMin, float drMatch) |
void | setPath (FourVectorHLTOffline::PathInfoCollection::iterator v) |
void | setPath (FourVectorHLTOnline::PathInfoCollection::iterator v) |
void | setReco (edm::Handle< T > offColl) |
void | setReco (edm::Handle< T > offColl) |
void | setRecoB (edm::Handle< reco::JetTagCollection > offCollB) |
void | setRecoEle (edm::Handle< reco::GsfElectronCollection > offCollEle) |
void | setRecoMu (edm::Handle< reco::MuonCollection > offCollMu) |
void | setTriggerType (std::vector< int > trigType) |
void | setTriggerType (std::vector< int > trigType) |
Public Attributes | |
mmset | L1MCDRMatchSet |
mmset | L1OffDRMatchSet |
mmset | OffMCDRMatchSet |
mmset | OnL1DRMatchSet |
mmset | OnMCDRMatchSet |
mmset | OnOffDRMatchSet |
Private Attributes | |
bool | BJetsFlag_ |
float | DRMatch_ |
float | DRRange_ |
float | EtaMax_ |
float | EtMin_ |
bool | fL2MuFlag |
bool | GenJetsFlag_ |
float | L1DRMatch_ |
std::vector< int > | l1triggerType_ |
edm::Handle< T > | offColl_ |
edm::Handle < reco::JetTagCollection > | offCollB_ |
edm::Handle < reco::GsfElectronCollection > | offCollEle_ |
edm::Handle< reco::MuonCollection > | offCollMu_ |
int | pdgId_ |
int | pdgStatus_ |
float | thresholdFactor_ |
std::vector< int > | triggerType_ |
FourVectorHLTOnline::PathInfoCollection::iterator | v_ |
FourVectorHLTOffline::PathInfoCollection::iterator | v_ |
Definition at line 590 of file FourVectorHLTOnline.h.
objMonData< T >::objMonData | ( | ) | [inline] |
Definition at line 592 of file FourVectorHLTOnline.h.
References objMonData< T >::BJetsFlag_, objMonData< T >::EtaMax_, objMonData< T >::EtMin_, and objMonData< T >::GenJetsFlag_.
{ EtaMax_= 2.5; EtMin_=3.0; GenJetsFlag_ = false; BJetsFlag_ = false; }
objMonData< T >::objMonData | ( | ) | [inline] |
Definition at line 728 of file FourVectorHLTOffline.h.
References objMonData< T >::BJetsFlag_, objMonData< T >::EtaMax_, objMonData< T >::EtMin_, objMonData< T >::fL2MuFlag, and objMonData< T >::GenJetsFlag_.
{ EtaMax_= 2.5; EtMin_=3.0; GenJetsFlag_ = false; BJetsFlag_ = false; fL2MuFlag = false; }
void objMonData< T >::clearSets | ( | void | ) | [virtual] |
Implements BaseMonitor.
Definition at line 901 of file FourVectorHLTOnline.h.
{ L1OffDRMatchSet.clear(); L1MCDRMatchSet.clear(); OnOffDRMatchSet.clear(); OnMCDRMatchSet.clear(); OnL1DRMatchSet.clear(); OffMCDRMatchSet.clear(); }
void objMonData< T >::clearSets | ( | ) | [virtual] |
Implements BaseMonitor.
void objMonData< T >::fillL1Match | ( | FourVectorHLTOffline * | fv | ) | [virtual] |
Implements BaseMonitor.
Definition at line 1676 of file FourVectorHLTOffline.h.
{ fillL1OffMatch(fv); }
void objMonData< T >::fillL1OffMatch | ( | FourVectorHLTOffline * | fv | ) |
Definition at line 1449 of file FourVectorHLTOffline.h.
References FourVectorHLTOffline::cleanDRMatchSet(), prof2calltree::count, i, LogDebug, and funct::sin().
{ float NL1Off=0; if(L1OffDRMatchSet.size() > 1) { LogDebug("FourVectorHLTOffline") << " Cleaning L1Off mmset" << std::endl; fv->cleanDRMatchSet(L1OffDRMatchSet); } // clean the set L1-Off // now fill histos for ( mmset::iterator setIter = L1OffDRMatchSet.begin( ); setIter != L1OffDRMatchSet.end( ); setIter++ ) { fimmap tempMap = *setIter; fimmap::iterator it = tempMap.begin(); int i = (*it).second ; float dR = (*it).first; v_->getOffDRL1OffHisto()->Fill(dR); if (dR > L1DRMatch_) continue; if( offCollB_.isValid()) { typedef typename reco::JetTagCollection::const_iterator const_iterator; const_iterator iter = offCollB_->begin(); for (int count = 0; count < i; count++) iter++; NL1Off++; v_->getOffEtL1OffHisto()->Fill((*iter).first->pt()); if((*iter).first->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiL1OffHisto()->Fill((*iter).first->eta(),(*iter).first->phi()); } else if( offCollMu_.isValid()) { typedef typename reco::MuonCollection::const_iterator const_iterator; const_iterator iter = offCollMu_->begin(); for (int count = 0; count < i; count++) iter++; NL1Off++; v_->getOffEtL1OffHisto()->Fill(iter->pt()); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiL1OffHisto()->Fill(iter->outerTrack()->innerPosition().eta(),iter->outerTrack()->innerPosition().phi()); } else if( offCollEle_.isValid()) { typedef typename reco::GsfElectronCollection::const_iterator const_iterator; const_iterator iter = offCollEle_->begin(); for (int count = 0; count < i; count++) iter++; NL1Off++; v_->getOffEtL1OffHisto()->Fill(iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta())); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiL1OffHisto()->Fill(iter->eta(),iter->phi()); } else if( offColl_.isValid()) { typedef typename T::const_iterator const_iterator; const_iterator iter = offColl_->begin(); for (int count = 0; count < i; count++) iter++; NL1Off++; v_->getOffEtL1OffHisto()->Fill(iter->pt()); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiL1OffHisto()->Fill(iter->eta(),iter->phi()); } } if(NL1Off > 0) v_->getNL1OffHisto()->Fill(NL1Off); }
void objMonData< T >::fillOnL1Match | ( | const int | l1Index, |
FourVectorHLTOffline * | fv | ||
) |
Definition at line 1622 of file FourVectorHLTOffline.h.
References FourVectorHLTOffline::cleanDRMatchSet(), prof2calltree::count, eta(), FourVectorHLTOffline::fTriggerObj, i, LogDebug, and phi.
{ const trigger::TriggerObjectCollection & toc(fv->fTriggerObj->getObjects()); const trigger::Keys & l1k = fv->fTriggerObj->filterKeys(l1Index); unsigned int NOnL1=0; // clean the set On-L1 if(OnL1DRMatchSet.size() > 1) { LogDebug("FourVectorHLTOffline") << " Cleaning L1On mmset" << std::endl; fv->cleanDRMatchSet(OnL1DRMatchSet); } // now fill histos for ( mmset::iterator setIter = OnL1DRMatchSet.begin( ); setIter != OnL1DRMatchSet.end( ); setIter++ ) { fimmap tempMap = *setIter; fimmap::iterator it = tempMap.begin(); int i = (*it).second ; float dR = (*it).first; v_->getL1DROnL1Histo()->Fill(dR); if (dR > L1DRMatch_) continue; trigger::Keys::const_iterator l1ki = l1k.begin(); for (int count = 0; count < i; count++) l1ki++; NOnL1++; v_->getL1EtL1OnHisto()->Fill(toc[*l1ki].pt()); v_->getL1EtaVsL1PhiL1OnHisto()->Fill(toc[*l1ki].eta(),toc[*l1ki].phi()); } v_->getNL1OnHisto()->Fill(NOnL1); }
void objMonData< T >::fillOnL1Match | ( | const int | l1Index, |
FourVectorHLTOnline * | fv | ||
) |
Definition at line 848 of file FourVectorHLTOnline.h.
References FourVectorHLTOnline::cleanDRMatchSet(), prof2calltree::count, eta(), FourVectorHLTOnline::fTriggerObj, i, LogDebug, and phi.
{ const trigger::TriggerObjectCollection & toc(fv->fTriggerObj->getObjects()); const trigger::Keys & l1k = fv->fTriggerObj->filterKeys(l1Index); unsigned int NOnL1=0; // clean the set On-L1 if(OnL1DRMatchSet.size() > 1) { LogDebug("FourVectorHLTOnline") << " Cleaning L1On mmset" << std::endl; fv->cleanDRMatchSet(OnL1DRMatchSet); } // now fill histos for ( mmset::iterator setIter = OnL1DRMatchSet.begin( ); setIter != OnL1DRMatchSet.end( ); setIter++ ) { fimmap tempMap = *setIter; fimmap::iterator it = tempMap.begin(); int i = (*it).second ; float dR = (*it).first; v_->getL1DROnL1Histo()->Fill(dR); if (dR > DRMatch_) continue; trigger::Keys::const_iterator l1ki = l1k.begin(); for (int count = 0; count < i; count++) l1ki++; NOnL1++; v_->getL1EtL1OnHisto()->Fill(toc[*l1ki].pt()); v_->getL1EtaVsL1PhiL1OnHisto()->Fill(toc[*l1ki].eta(),toc[*l1ki].phi()); } v_->getNL1OnHisto()->Fill(NOnL1); }
void objMonData< T >::fillOnlineMatch | ( | const int | l1Index, |
FourVectorHLTOffline * | fv | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 1664 of file FourVectorHLTOffline.h.
References FourVectorHLTOffline::fTriggerObj.
{ if(! isTriggerType(v_->getObjectType()) ) return; fillOnOffMatch(fv); if ( l1Index >= fv->fTriggerObj->sizeFilters() ) return; fillOnL1Match(l1Index, fv); }
void objMonData< T >::fillOnlineMatch | ( | const int | l1Index, |
FourVectorHLTOnline * | fv | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 890 of file FourVectorHLTOnline.h.
References FourVectorHLTOnline::fTriggerObj.
{ if ( l1Index >= fv->fTriggerObj->sizeFilters() ) return; fillOnL1Match(l1Index, fv); }
void objMonData< T >::fillOnOffMatch | ( | FourVectorHLTOffline * | fv | ) |
Definition at line 1535 of file FourVectorHLTOffline.h.
References FourVectorHLTOffline::cleanDRMatchSet(), prof2calltree::count, i, LogDebug, and funct::sin().
{ unsigned int NOnOff=0; // clean the set L1-Off if(OnOffDRMatchSet.size() > 1){ LogDebug("FourVectorHLTOffline") << " Cleaning OnOff mmset" << std::endl; fv->cleanDRMatchSet(OnOffDRMatchSet); } // now fill histos for ( mmset::iterator setIter = OnOffDRMatchSet.begin( ); setIter != OnOffDRMatchSet.end( ); setIter++ ) { fimmap tempMap = *setIter; fimmap::iterator it = tempMap.begin(); int i = (*it).second ; float dR = (*it).first; v_->getOffDROnOffHisto()->Fill(dR); if (dR > DRMatch_) continue; if( offCollB_.isValid()) { typedef typename reco::JetTagCollection::const_iterator const_iterator; const_iterator iter = offCollB_->begin(); for (int count = 0; count < i; count++) iter++; NOnOff++; v_->getOffEtOnOffHisto()->Fill((*iter).first->pt()); if((*iter).first->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOnOffHisto()->Fill((*iter).first->eta(),(*iter).first->phi()); } else if( offCollMu_.isValid() && fL2MuFlag) { typedef typename reco::MuonCollection::const_iterator const_iterator; const_iterator iter = offCollMu_->begin(); for (int count = 0; count < i; count++) iter++; NOnOff++; v_->getOffEtOnOffHisto()->Fill(iter->pt()); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOnOffHisto()->Fill(iter->outerTrack()->innerPosition().eta(),iter->outerTrack()->innerPosition().phi()); } else if( offCollEle_.isValid()) { typedef typename reco::GsfElectronCollection::const_iterator const_iterator; const_iterator iter = offCollEle_->begin(); for (int count = 0; count < i; count++) iter++; NOnOff++; v_->getOffEtOnOffHisto()->Fill(iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta())); if(iter->superCluster()->energy()*fabs(sin(iter->superCluster()->position().Theta())) >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOnOffHisto()->Fill(iter->eta(),iter->phi()); } else if( offColl_.isValid()) { typedef typename T::const_iterator const_iterator; const_iterator iter = offColl_->begin(); for (int count = 0; count < i; count++) iter++; NOnOff++; v_->getOffEtOnOffHisto()->Fill(iter->pt()); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOnOffHisto()->Fill(iter->eta(),iter->phi()); } } v_->getNOnOffHisto()->Fill(NOnOff); }
bool objMonData< T >::isL1TriggerType | ( | int | t | ) |
bool objMonData< T >::isL1TriggerType | ( | int | t | ) |
Definition at line 677 of file FourVectorHLTOnline.h.
{ bool rc = false; for(std::vector<int>::const_iterator it = l1triggerType_.begin(); it != l1triggerType_.end(); ++it) { if(fabs(t) == fabs(*it)) { rc = true; break; } } // end for return rc; }
bool objMonData< T >::isTriggerType | ( | int | t | ) | [virtual] |
Implements BaseMonitor.
bool objMonData< T >::isTriggerType | ( | int | t | ) | [virtual] |
Implements BaseMonitor.
Definition at line 658 of file FourVectorHLTOnline.h.
{ bool rc = false; for(std::vector<int>::const_iterator it = triggerType_.begin(); it != triggerType_.end(); ++it) { if(t == *it) { rc = true; break; } } // end for if (t==0) rc = true; return rc; }
void objMonData< T >::matchL1Offline | ( | const trigger::TriggerObject & | l1FV, |
FourVectorHLTOffline * | fv, | ||
const int & | NL1, | ||
unsigned int & | NL1OffUM | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 998 of file FourVectorHLTOffline.h.
References reco::deltaR(), trigger::TriggerObject::eta(), j, trigger::TriggerObject::phi(), and funct::sin().
{ fimmap L1OffDRMatchMap; if (offCollB_.isValid()) { int j=0; typedef typename reco::JetTagCollection::const_iterator const_iterator; for( const_iterator iter = offCollB_->begin(), iend = offCollB_->end(); iter != iend; ++iter ) { float recoEta = (*iter).first->eta(); float recoPhi = (*iter).first->phi(); float recoPt = (*iter).first->pt(); if (fabs(recoEta) <= EtaMax_ && recoPt >= EtMin_ ) { // fill UM histos (no matching required) if (v_->getOffEtL1OffUMHisto() != 0) { if(NL1 == 1) { NL1OffUM++; v_->getOffEtL1OffUMHisto()->Fill(recoPt); if(recoPt >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiL1OffUMHisto()->Fill(recoEta,recoPhi); } } // make maps of matched objects float dR = reco::deltaR(recoEta,recoPhi,l1FV.eta(),l1FV.phi()); if ( dR < DRRange_) { L1OffDRMatchMap.insert(std::pair<float,int>(dR,j)); } } j++; } } else if (offCollMu_.isValid()) { int j=0; typedef typename reco::MuonCollection::const_iterator const_iterator; for( const_iterator iter = offCollMu_->begin(), iend = offCollMu_->end(); iter != iend; ++iter ) { // get Eta, Phi of the MuonDetectorTrack, // looking at the detector most inner Position // This should be close to what L1 sees float recoEta = iter->outerTrack()->innerPosition().eta(); float recoPhi = iter->outerTrack()->innerPosition().phi(); float recoPt = iter->pt(); if (fabs(recoEta) <= EtaMax_ && recoPt >= EtMin_ ) { // fill UM histos (no matching required) if (v_->getOffEtL1OffUMHisto() != 0) { if(NL1 == 1) { NL1OffUM++; v_->getOffEtL1OffUMHisto()->Fill(recoPt); if(recoPt >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiL1OffUMHisto()->Fill(recoEta,recoPhi); } } // make maps of matched objects float dR = reco::deltaR(recoEta,recoPhi,l1FV.eta(),l1FV.phi()); if ( dR < DRRange_) { L1OffDRMatchMap.insert(std::pair<float,int>(dR,j)); } } j++; } } else if (offCollEle_.isValid()) { int j=0; typedef typename reco::GsfElectronCollection::const_iterator const_iterator; for( const_iterator iter = offCollEle_->begin(), iend = offCollEle_->end(); iter != iend; ++iter ) { if (fabs(iter->eta()) <= EtaMax_ && iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta()) >= EtMin_ ) { if ( v_->getOffEtL1OffUMHisto() != 0) { // fill UM histos (no matching required) if(NL1 == 1) { NL1OffUM++; v_->getOffEtL1OffUMHisto()->Fill(iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta())); if(iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta()) >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiL1OffUMHisto()->Fill(iter->eta(),iter->phi()); } } // make maps of matched objects float dR = reco::deltaR(iter->eta(),iter->phi(),l1FV.eta(),l1FV.phi()); if ( dR < DRRange_) { L1OffDRMatchMap.insert(std::pair<float,int>(dR,j)); } } j++; } } else if (offColl_.isValid()) { int j=0; typedef typename T::const_iterator const_iterator; for( const_iterator iter = offColl_->begin(), iend = offColl_->end(); iter != iend; ++iter ) { if (fabs(iter->eta()) <= EtaMax_ && iter->pt() >= EtMin_ ) { // fill UM histos (no matching required) if (v_->getOffEtL1OffUMHisto()!= 0 ) { if(NL1 == 1) { NL1OffUM++; v_->getOffEtL1OffUMHisto()->Fill(iter->pt()); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiL1OffUMHisto()->Fill(iter->eta(),iter->phi()); } } // make maps of matched objects float dR = reco::deltaR(iter->eta(),iter->phi(),l1FV.eta(),l1FV.phi()); if ( dR < DRRange_) { L1OffDRMatchMap.insert(std::pair<float,int>(dR,j)); } } j++; } } if(! L1OffDRMatchMap.empty()) L1OffDRMatchSet.insert(L1OffDRMatchMap); }
void objMonData< T >::matchOnlineL1 | ( | const trigger::TriggerObject & | onlineFV, |
const int & | l1Index, | ||
FourVectorHLTOnline * | fv, | ||
const int & | NOn | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 788 of file FourVectorHLTOnline.h.
References reco::deltaR(), trigger::TriggerObject::eta(), FourVectorHLTOnline::fTriggerObj, j, trigger::TriggerObject::phi(), and trigger::TriggerObject::pt().
{ if ( l1Index >= fv->fTriggerObj->sizeFilters() ) return; unsigned int NOnL1UM=0; const trigger::TriggerObjectCollection & toc(fv->fTriggerObj->getObjects()); const trigger::Vids & idtype = fv->fTriggerObj->filterIds(l1Index); const trigger::Keys & l1k = fv->fTriggerObj->filterKeys(l1Index); fimmap OnL1DRMatchMap; int j=0; trigger::Vids::const_iterator idtypeiter = idtype.begin(); for (trigger::Keys::const_iterator l1ki = l1k.begin(); l1ki !=l1k.end(); ++l1ki ) { if(isL1TriggerType(*idtypeiter)) { trigger::TriggerObject l1FV = toc[*l1ki]; if ( fabs(l1FV.eta()) <= EtaMax_ && l1FV.pt() >= EtMin_ ) { // fill UM histos (no matching required) if(NOn == 1) { NOnL1UM++; v_->getL1EtL1OnUMHisto()->Fill(l1FV.pt()); v_->getL1EtaVsL1PhiL1OnUMHisto()->Fill(l1FV.eta(),l1FV.phi()); } float dR = reco::deltaR(l1FV.eta(),l1FV.phi(),onlineFV.eta(),onlineFV.phi()); if ( dR < 1.0) { OnL1DRMatchMap.insert(std::pair<float,int>(dR,j)); } } // end if l1FV eta, pt } // end if isL1TriggerType ++idtypeiter; j++; } // end for if(! OnL1DRMatchMap.empty()) OnL1DRMatchSet.insert(OnL1DRMatchMap); }
void objMonData< T >::matchOnlineL1 | ( | const trigger::TriggerObject & | onlineFV, |
const int & | l1Index, | ||
FourVectorHLTOffline * | fv, | ||
const int & | NOn | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 1209 of file FourVectorHLTOffline.h.
References reco::deltaR(), trigger::TriggerObject::eta(), FourVectorHLTOffline::fTriggerObj, j, trigger::TriggerObject::phi(), and trigger::TriggerObject::pt().
{ if ( l1Index >= fv->fTriggerObj->sizeFilters() ) return; unsigned int NOnL1UM=0; const trigger::TriggerObjectCollection & toc(fv->fTriggerObj->getObjects()); const trigger::Vids & idtype = fv->fTriggerObj->filterIds(l1Index); const trigger::Keys & l1k = fv->fTriggerObj->filterKeys(l1Index); fimmap OnL1DRMatchMap; int j=0; trigger::Vids::const_iterator idtypeiter = idtype.begin(); for (trigger::Keys::const_iterator l1ki = l1k.begin(); l1ki !=l1k.end(); ++l1ki ) { if(isL1TriggerType(*idtypeiter)) { trigger::TriggerObject l1FV = toc[*l1ki]; // fill UM histos (no matching required) if (v_->getL1EtL1OnUMHisto() != 0) { if(NOn == 1) { NOnL1UM++; v_->getL1EtL1OnUMHisto()->Fill(l1FV.pt()); v_->getL1EtaVsL1PhiL1OnUMHisto()->Fill(l1FV.eta(),l1FV.phi()); } } float dR = reco::deltaR(l1FV.eta(),l1FV.phi(),onlineFV.eta(),onlineFV.phi()); if ( dR < DRRange_) { OnL1DRMatchMap.insert(std::pair<float,int>(dR,j)); } } // end if isL1TriggerType ++idtypeiter; j++; } // end for if(! OnL1DRMatchMap.empty()) OnL1DRMatchSet.insert(OnL1DRMatchMap); }
void objMonData< T >::matchOnlineOffline | ( | const trigger::TriggerObject & | onlineFV, |
FourVectorHLTOffline * | fv, | ||
const int & | NOn | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 1264 of file FourVectorHLTOffline.h.
References reco::deltaR(), trigger::TriggerObject::eta(), j, trigger::TriggerObject::phi(), and funct::sin().
{ unsigned int NOnOffUM=0; fimmap OnOffDRMatchMap; if (offCollB_.isValid()) { int j=0; typedef typename reco::JetTagCollection::const_iterator const_iterator; for( const_iterator iter = offCollB_->begin(), iend = offCollB_->end(); iter != iend; ++iter ) { float recoEta = (*iter).first->eta(); float recoPhi = (*iter).first->phi(); float recoPt = (*iter).first->pt(); if (fabs(recoEta) <= EtaMax_ && recoPt >= EtMin_ ) { // fill UM histos (no matching required) if (v_->getOffEtOnOffUMHisto() != 0) { if(NOn == 1) { NOnOffUM++; v_->getOffEtOnOffUMHisto()->Fill(recoPt); if(recoPt >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOnOffUMHisto()->Fill(recoEta,recoPhi); } } // make maps of matched objects float dR = reco::deltaR(recoEta,recoPhi,onlineFV.eta(),onlineFV.phi()); if ( dR < DRRange_) { OnOffDRMatchMap.insert(std::pair<float,int>(dR,j)); } } j++; } } else if (offCollMu_.isValid() && fL2MuFlag) { int j=0; typedef typename reco::MuonCollection::const_iterator const_iterator; for( const_iterator iter = offCollMu_->begin(), iend = offCollMu_->end(); iter != iend; ++iter ) { // get Eta, Phi of the MuonDetectorTrack, // looking at the detector most inner Position // This should be close to what L1 sees float recoEta = iter->outerTrack()->innerPosition().eta(); float recoPhi = iter->outerTrack()->innerPosition().phi(); float recoPt = iter->pt(); if (fabs(recoEta) <= EtaMax_ && recoPt >= EtMin_ ) { // fill UM histos (no matching required) if (v_->getOffEtOnOffUMHisto() != 0) { if(NOn == 1) { NOnOffUM++; v_->getOffEtOnOffUMHisto()->Fill(iter->pt()); if(recoPt >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOnOffUMHisto()->Fill(iter->eta(),iter->phi()); } } // make maps of matched objects float dR = reco::deltaR(recoEta,recoPhi,onlineFV.eta(),onlineFV.phi()); if ( dR < DRRange_) { OnOffDRMatchMap.insert(std::pair<float,int>(dR,j)); } } j++; } } else if (offCollEle_.isValid()) { int j=0; typedef typename reco::GsfElectronCollection::const_iterator const_iterator; for( const_iterator iter = offCollEle_->begin(), iend = offCollEle_->end(); iter != iend; ++iter ) { if (fabs(iter->eta()) <= EtaMax_ && iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta()) >= EtMin_ ) { // fill UM histos (no matching required) if (v_->getOffEtOnOffUMHisto() != 0) { if(NOn == 1) { NOnOffUM++; v_->getOffEtOnOffUMHisto()->Fill(iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta())); if(iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta()) >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOnOffUMHisto()->Fill(iter->eta(),iter->phi()); } } // make maps of matched objects float dR = reco::deltaR(iter->eta(),iter->phi(),onlineFV.eta(),onlineFV.phi()); if ( dR < DRRange_) { OnOffDRMatchMap.insert(std::pair<float,int>(dR,j)); } } j++; } } else if (offColl_.isValid()) { int j=0; typedef typename T::const_iterator const_iterator; for( const_iterator iter = offColl_->begin(), iend = offColl_->end(); iter != iend; ++iter ) { if (fabs(iter->eta()) <= EtaMax_ && iter->pt() >= EtMin_ ) { // fill UM histos (no matching required) if (v_->getOffEtOnOffUMHisto() != 0) { if(NOn == 1) { NOnOffUM++; v_->getOffEtOnOffUMHisto()->Fill(iter->pt()); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOnOffUMHisto()->Fill(iter->eta(),iter->phi()); } } // make maps of matched objects float dR = reco::deltaR(iter->eta(),iter->phi(),onlineFV.eta(),onlineFV.phi()); if ( dR < DRRange_) { OnOffDRMatchMap.insert(std::pair<float,int>(dR,j)); } } j++; } } if(! OnOffDRMatchMap.empty()) OnOffDRMatchSet.insert(OnOffDRMatchMap); }
void objMonData< T >::monitorL1 | ( | const int | l1Index, |
FourVectorHLTOnline * | fv | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 694 of file FourVectorHLTOnline.h.
References trigger::TriggerObject::eta(), FourVectorHLTOnline::fTriggerObj, trigger::TriggerObject::phi(), and trigger::TriggerObject::pt().
{ if ( l1Index >= fv->fTriggerObj->sizeFilters() ) return; unsigned int NL1=0; unsigned int NL1OffUM=0; const trigger::TriggerObjectCollection & toc(fv->fTriggerObj->getObjects()); const trigger::Vids & idtype = fv->fTriggerObj->filterIds(l1Index); const trigger::Keys & l1k = fv->fTriggerObj->filterKeys(l1Index); bool l1accept = l1k.size() > 0; if(!l1accept) return; trigger::Vids::const_iterator idtypeiter = idtype.begin(); for (trigger::Keys::const_iterator l1ki = l1k.begin(); l1ki !=l1k.end(); ++l1ki ) { trigger::TriggerObject l1FV = toc[*l1ki]; if(isL1TriggerType(*idtypeiter)) { if (fabs(l1FV.eta()) <= EtaMax_ && l1FV.pt() >= EtMin_) { NL1++; v_->getL1EtL1Histo()->Fill(l1FV.pt()); v_->getL1EtaVsL1PhiL1Histo()->Fill(l1FV.eta(), l1FV.phi()); } else { continue; } } // end if isL1TriggerType ++idtypeiter; } // end for l1ki if(NL1 > 0) v_->getNL1Histo()->Fill(NL1); if(NL1OffUM > 0) v_->getNL1OffUMHisto()->Fill(NL1OffUM); }
void objMonData< T >::monitorL1 | ( | const int | l1Index, |
FourVectorHLTOffline * | fv | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 954 of file FourVectorHLTOffline.h.
References trigger::TriggerObject::eta(), FourVectorHLTOffline::fTriggerObj, trigger::TriggerObject::phi(), and trigger::TriggerObject::pt().
{ if ( l1Index >= fv->fTriggerObj->sizeFilters() ) return; unsigned int NL1=0; unsigned int NL1OffUM=0; const trigger::TriggerObjectCollection & toc(fv->fTriggerObj->getObjects()); const trigger::Vids & idtype = fv->fTriggerObj->filterIds(l1Index); const trigger::Keys & l1k = fv->fTriggerObj->filterKeys(l1Index); bool l1accept = l1k.size() > 0; if(!l1accept) return; trigger::Vids::const_iterator idtypeiter = idtype.begin(); for (trigger::Keys::const_iterator l1ki = l1k.begin(); l1ki !=l1k.end(); ++l1ki ) { trigger::TriggerObject l1FV = toc[*l1ki]; if(isL1TriggerType(*idtypeiter)) { NL1++; v_->getL1EtL1Histo()->Fill(l1FV.pt()); v_->getL1EtaVsL1PhiL1Histo()->Fill(l1FV.eta(), l1FV.phi()); matchL1Offline(l1FV, fv, NL1, NL1OffUM); } // end if isL1TriggerType ++idtypeiter; } // end for l1ki if(NL1 > 0) v_->getNL1Histo()->Fill(NL1); if(NL1OffUM > 0) v_->getNL1OffUMHisto()->Fill(NL1OffUM); }
void objMonData< T >::monitorOffline | ( | void | ) | [virtual] |
Implements BaseMonitor.
Definition at line 856 of file FourVectorHLTOffline.h.
References funct::sin().
{ if(! isTriggerType(v_->getObjectType()) ) return; unsigned int NOff = 0; if( offCollB_.isValid()) { typedef typename reco::JetTagCollection::const_iterator const_iterator; for( const_iterator iter = offCollB_->begin(), iend = offCollB_->end(); iter != iend; ++iter ) { float recoEta = (*iter).first->eta(); float recoPhi = (*iter).first->phi(); float recoPt = (*iter).first->pt(); if (fabs(recoEta) <= EtaMax_ && recoPt >= EtMin_ ) { NOff++; v_->getOffEtOffHisto()->Fill(recoPt); if(recoPt >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOffHisto()->Fill(recoEta, recoPhi); } /* else { continue; } */ } } else if(offCollEle_.isValid()) { typedef typename reco::GsfElectronCollection::const_iterator const_iterator; for( const_iterator iter = offCollEle_->begin(), iend = offCollEle_->end(); iter != iend; ++iter ) { if (fabs(iter->eta()) <= EtaMax_ && iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta()) >= EtMin_ ) { NOff++; v_->getOffEtOffHisto()->Fill(iter->superCluster()->energy()*sin(iter->superCluster()->position().Theta())); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOffHisto()->Fill(iter->eta(), iter->phi()); } /* else { continue; } */ } } // end else if else if(offColl_.isValid()) { typedef typename T::const_iterator const_iterator; for( const_iterator iter = offColl_->begin(), iend = offColl_->end(); iter != iend; ++iter ) { if (fabs(iter->eta()) <= EtaMax_ && iter->pt() >= EtMin_ ) { NOff++; v_->getOffEtOffHisto()->Fill(iter->pt()); if(iter->pt() >= thresholdFactor_*v_->getHltThreshold()) v_->getOffEtaVsOffPhiOffHisto()->Fill(iter->eta(), iter->phi()); } /* else { continue; } */ } } // end else if if(NOff>0)v_->getNOffHisto()->Fill(NOff); }
void objMonData< T >::monitorOnline | ( | const int | hltIndex, |
const int | l1Index, | ||
FourVectorHLTOnline * | fv | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 746 of file FourVectorHLTOnline.h.
References trigger::TriggerObject::eta(), FourVectorHLTOnline::fTriggerObj, gen::k, trigger::TriggerObject::phi(), and trigger::TriggerObject::pt().
{ //if(! isTriggerType(v_->getObjectType()) ) return; // Get keys of objects passed by the last filter const trigger::Keys & k = fv->fTriggerObj->filterKeys(hltIndex); const trigger::TriggerObjectCollection & toc(fv->fTriggerObj->getObjects()); unsigned int NOn=0; // Loop over HLT objects for (trigger::Keys::const_iterator ki = k.begin(); ki !=k.end(); ++ki ) { trigger::TriggerObject onlineFV = toc[*ki]; if (fabs(onlineFV.eta()) <= EtaMax_ && onlineFV.pt() >= EtMin_) { NOn++; v_->getOnEtOnHisto()->Fill(onlineFV.pt()); v_->getOnOneOverEtOnHisto()->Fill(1./onlineFV.pt()); v_->getOnEtaVsOnPhiOnHisto()->Fill(onlineFV.eta(), onlineFV.phi()); } else { return; } matchOnlineL1(onlineFV,l1Index, fv, NOn); } // end loop over HLT objects if(NOn>0) v_->getNOnHisto()->Fill(NOn); }
void objMonData< T >::monitorOnline | ( | const int | hltIndex, |
const int | l1Index, | ||
FourVectorHLTOffline * | fv | ||
) | [virtual] |
Implements BaseMonitor.
Definition at line 1176 of file FourVectorHLTOffline.h.
References trigger::TriggerObject::eta(), FourVectorHLTOffline::fTriggerObj, gen::k, trigger::TriggerObject::phi(), and trigger::TriggerObject::pt().
{ if(! isTriggerType(v_->getObjectType()) ) return; // Get keys of objects passed by the last filter const trigger::Keys & k = fv->fTriggerObj->filterKeys(hltIndex); const trigger::TriggerObjectCollection & toc(fv->fTriggerObj->getObjects()); unsigned int NOn=0; // Loop over HLT objects for (trigger::Keys::const_iterator ki = k.begin(); ki !=k.end(); ++ki ) { trigger::TriggerObject onlineFV = toc[*ki]; NOn++; v_->getOnEtOnHisto()->Fill(onlineFV.pt()); v_->getOnOneOverEtOnHisto()->Fill(1./onlineFV.pt()); v_->getOnEtaVsOnPhiOnHisto()->Fill(onlineFV.eta(), onlineFV.phi()); matchOnlineL1(onlineFV,l1Index, fv, NOn); matchOnlineOffline(onlineFV,fv, NOn); } // end loop over HLT objects if(NOn>0) v_->getNOnHisto()->Fill(NOn); }
void objMonData< T >::pushL1TriggerType | ( | int | trigType | ) | [inline] |
Definition at line 602 of file FourVectorHLTOnline.h.
References objMonData< T >::l1triggerType_.
{ l1triggerType_.push_back(trigType); }
void objMonData< T >::pushL1TriggerType | ( | int | trigType | ) | [inline] |
Definition at line 741 of file FourVectorHLTOffline.h.
References objMonData< T >::l1triggerType_.
{ l1triggerType_.push_back(trigType); }
void objMonData< T >::pushTriggerType | ( | int | trigType | ) | [inline] |
Definition at line 600 of file FourVectorHLTOnline.h.
References objMonData< T >::triggerType_.
{ triggerType_.push_back(trigType); }
void objMonData< T >::pushTriggerType | ( | int | trigType | ) | [inline] |
Definition at line 739 of file FourVectorHLTOffline.h.
References objMonData< T >::triggerType_.
{ triggerType_.push_back(trigType); }
void objMonData< T >::setBJetsFlag | ( | bool | flag | ) | [inline] |
Definition at line 777 of file FourVectorHLTOffline.h.
References objMonData< T >::BJetsFlag_.
{ BJetsFlag_ = flag; }
void objMonData< T >::setBJetsFlag | ( | bool | flag | ) | [inline] |
Definition at line 628 of file FourVectorHLTOnline.h.
References objMonData< T >::BJetsFlag_.
Referenced by FourVectorHLTOnline::analyze().
{ BJetsFlag_ = flag; }
void objMonData< T >::setL1TriggerType | ( | std::vector< int > | trigType | ) | [inline] |
Definition at line 601 of file FourVectorHLTOnline.h.
References objMonData< T >::l1triggerType_.
{ l1triggerType_ = trigType; }
void objMonData< T >::setL1TriggerType | ( | std::vector< int > | trigType | ) | [inline] |
Definition at line 740 of file FourVectorHLTOffline.h.
References objMonData< T >::l1triggerType_.
{ l1triggerType_ = trigType; }
void objMonData< T >::setL2MuFlag | ( | bool | flag | ) | [inline] |
Definition at line 781 of file FourVectorHLTOffline.h.
References objMonData< T >::fL2MuFlag.
void objMonData< T >::setLimits | ( | float | etaMax, |
float | etMin, | ||
float | drMatch, | ||
float | l1drMatch, | ||
float | dRRange, | ||
float | thresholdFactor | ||
) | [inline] |
Definition at line 729 of file FourVectorHLTOffline.h.
References objMonData< T >::DRMatch_, objMonData< T >::DRRange_, jptDQMConfig_cff::etaMax, objMonData< T >::EtaMax_, reco::tau::qcuts::etMin(), objMonData< T >::EtMin_, objMonData< T >::L1DRMatch_, and objMonData< T >::thresholdFactor_.
{ EtaMax_= etaMax; EtMin_= etMin; DRMatch_= drMatch; L1DRMatch_= l1drMatch; DRRange_ = dRRange; thresholdFactor_ = thresholdFactor; }
void objMonData< T >::setLimits | ( | float | etaMax, |
float | etMin, | ||
float | drMatch | ||
) | [inline] |
Definition at line 593 of file FourVectorHLTOnline.h.
References objMonData< T >::DRMatch_, jptDQMConfig_cff::etaMax, objMonData< T >::EtaMax_, reco::tau::qcuts::etMin(), and objMonData< T >::EtMin_.
Referenced by FourVectorHLTOnline::analyze(), and FourVectorHLTOffline::analyze().
void objMonData< T >::setPath | ( | FourVectorHLTOnline::PathInfoCollection::iterator | v | ) | [inline, virtual] |
Implements BaseMonitor.
Definition at line 603 of file FourVectorHLTOnline.h.
References v, and objMonData< T >::v_.
void objMonData< T >::setPath | ( | FourVectorHLTOffline::PathInfoCollection::iterator | v | ) | [inline, virtual] |
Implements BaseMonitor.
Definition at line 742 of file FourVectorHLTOffline.h.
References v, and objMonData< T >::v_.
void objMonData< T >::setReco | ( | edm::Handle< T > | offColl | ) | [inline] |
Definition at line 743 of file FourVectorHLTOffline.h.
References objMonData< T >::offColl_.
{ offColl_ = offColl; }
void objMonData< T >::setReco | ( | edm::Handle< T > | offColl | ) | [inline] |
Definition at line 604 of file FourVectorHLTOnline.h.
References objMonData< T >::offColl_.
Referenced by FourVectorHLTOnline::analyze(), and FourVectorHLTOffline::analyze().
{ offColl_ = offColl; }
void objMonData< T >::setRecoB | ( | edm::Handle< reco::JetTagCollection > | offCollB | ) | [inline] |
Definition at line 744 of file FourVectorHLTOffline.h.
References objMonData< T >::offCollB_.
Referenced by FourVectorHLTOffline::analyze().
{ offCollB_ = offCollB; }
void objMonData< T >::setRecoEle | ( | edm::Handle< reco::GsfElectronCollection > | offCollEle | ) | [inline] |
Definition at line 746 of file FourVectorHLTOffline.h.
References objMonData< T >::offCollEle_.
{ offCollEle_ = offCollEle; }
void objMonData< T >::setRecoMu | ( | edm::Handle< reco::MuonCollection > | offCollMu | ) | [inline] |
Definition at line 745 of file FourVectorHLTOffline.h.
References objMonData< T >::offCollMu_.
{ offCollMu_ = offCollMu; }
void objMonData< T >::setTriggerType | ( | std::vector< int > | trigType | ) | [inline] |
Definition at line 738 of file FourVectorHLTOffline.h.
References objMonData< T >::triggerType_.
{ triggerType_ = trigType; }
void objMonData< T >::setTriggerType | ( | std::vector< int > | trigType | ) | [inline] |
Definition at line 599 of file FourVectorHLTOnline.h.
References objMonData< T >::triggerType_.
{ triggerType_ = trigType; }
bool objMonData< T >::BJetsFlag_ [private] |
Definition at line 645 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::objMonData(), and objMonData< T >::setBJetsFlag().
float objMonData< T >::DRMatch_ [private] |
Definition at line 642 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::setLimits().
float objMonData< T >::DRRange_ [private] |
Definition at line 797 of file FourVectorHLTOffline.h.
Referenced by objMonData< T >::setLimits().
float objMonData< T >::EtaMax_ [private] |
Definition at line 639 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::objMonData(), and objMonData< T >::setLimits().
float objMonData< T >::EtMin_ [private] |
Definition at line 640 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::objMonData(), and objMonData< T >::setLimits().
bool objMonData< T >::fL2MuFlag [private] |
Definition at line 802 of file FourVectorHLTOffline.h.
Referenced by objMonData< T >::objMonData(), and objMonData< T >::setL2MuFlag().
bool objMonData< T >::GenJetsFlag_ [private] |
Definition at line 644 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::objMonData().
float objMonData< T >::L1DRMatch_ [private] |
Definition at line 796 of file FourVectorHLTOffline.h.
Referenced by objMonData< T >::setLimits().
mmset objMonData< T >::L1MCDRMatchSet |
Definition at line 621 of file FourVectorHLTOnline.h.
mmset objMonData< T >::L1OffDRMatchSet |
Definition at line 620 of file FourVectorHLTOnline.h.
std::vector< int > objMonData< T >::l1triggerType_ [private] |
Definition at line 648 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::pushL1TriggerType(), and objMonData< T >::setL1TriggerType().
edm::Handle< T > objMonData< T >::offColl_ [private] |
Definition at line 650 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::setReco().
edm::Handle<reco::JetTagCollection> objMonData< T >::offCollB_ [private] |
Definition at line 808 of file FourVectorHLTOffline.h.
Referenced by objMonData< T >::setRecoB().
edm::Handle<reco::GsfElectronCollection> objMonData< T >::offCollEle_ [private] |
Definition at line 810 of file FourVectorHLTOffline.h.
Referenced by objMonData< T >::setRecoEle().
edm::Handle<reco::MuonCollection> objMonData< T >::offCollMu_ [private] |
Definition at line 809 of file FourVectorHLTOffline.h.
Referenced by objMonData< T >::setRecoMu().
mmset objMonData< T >::OffMCDRMatchSet |
Definition at line 625 of file FourVectorHLTOnline.h.
mmset objMonData< T >::OnL1DRMatchSet |
Definition at line 624 of file FourVectorHLTOnline.h.
mmset objMonData< T >::OnMCDRMatchSet |
Definition at line 623 of file FourVectorHLTOnline.h.
mmset objMonData< T >::OnOffDRMatchSet |
Definition at line 622 of file FourVectorHLTOnline.h.
int objMonData< T >::pdgId_ [private] |
Definition at line 636 of file FourVectorHLTOnline.h.
int objMonData< T >::pdgStatus_ [private] |
Definition at line 637 of file FourVectorHLTOnline.h.
float objMonData< T >::thresholdFactor_ [private] |
Definition at line 798 of file FourVectorHLTOffline.h.
Referenced by objMonData< T >::setLimits().
std::vector< int > objMonData< T >::triggerType_ [private] |
Definition at line 647 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::pushTriggerType(), and objMonData< T >::setTriggerType().
FourVectorHLTOnline::PathInfoCollection::iterator objMonData< T >::v_ [private] |
Definition at line 652 of file FourVectorHLTOnline.h.
Referenced by objMonData< T >::setPath().
FourVectorHLTOffline::PathInfoCollection::iterator objMonData< T >::v_ [private] |
Definition at line 812 of file FourVectorHLTOffline.h.