#include <L1ParticleMap.h>
Definition at line 120 of file L1ParticleMap.h.
typedef std::vector< unsigned int > l1extra::L1ParticleMap::L1IndexCombo |
Definition at line 269 of file L1ParticleMap.h.
typedef std::vector< L1IndexCombo > l1extra::L1ParticleMap::L1IndexComboVector |
Definition at line 270 of file L1ParticleMap.h.
typedef std::vector< L1ObjectType > l1extra::L1ParticleMap::L1ObjectTypeVector |
Definition at line 271 of file L1ParticleMap.h.
Definition at line 124 of file L1ParticleMap.h.
Definition at line 141 of file L1ParticleMap.h.
{ kSingleMu3, kSingleMu5, kSingleMu7, kSingleMu10, kSingleMu14, kSingleMu20, kSingleMu25, kSingleIsoEG5, kSingleIsoEG8, kSingleIsoEG10, kSingleIsoEG12, kSingleIsoEG15, kSingleIsoEG20, kSingleIsoEG25, kSingleEG5, kSingleEG8, kSingleEG10, kSingleEG12, kSingleEG15, kSingleEG20, kSingleEG25, kSingleJet15, kSingleJet20, kSingleJet30, kSingleJet50, kSingleJet70, kSingleJet100, kSingleJet150, kSingleJet200, kSingleTauJet10, kSingleTauJet20, kSingleTauJet30, kSingleTauJet35, kSingleTauJet40, kSingleTauJet60, kSingleTauJet80, kSingleTauJet100, kHTT100, kHTT200, kHTT250, kHTT300, kHTT400, kHTT500, kETM10, kETM15, kETM20, kETM30, kETM40, kETM50, kETM60, kETT60, kDoubleMu3, kDoubleIsoEG8, kDoubleIsoEG10, kDoubleEG5, kDoubleEG10, kDoubleEG15, kDoubleJet70, kDoubleJet100, kDoubleTauJet20, kDoubleTauJet30, kDoubleTauJet35, kDoubleTauJet40, kMu3_IsoEG5, kMu5_IsoEG10, kMu3_EG12, kMu3_Jet15, kMu5_Jet15, kMu3_Jet70, kMu5_Jet20, kMu5_TauJet20, kMu5_TauJet30, kIsoEG10_EG10, kIsoEG10_Jet15, kIsoEG10_Jet20, kIsoEG10_Jet30, kIsoEG10_Jet70, kIsoEG10_TauJet20, kIsoEG10_TauJet30, kEG10_Jet15, kEG12_Jet20, kEG12_Jet70, kEG12_TauJet40, kJet70_TauJet40, kMu3_HTT200, kIsoEG10_HTT200, kEG12_HTT200, kJet70_HTT200, kTauJet40_HTT200, kMu3_ETM30, kIsoEG10_ETM30, kEG12_ETM30, kJet70_ETM40, kTauJet20_ETM20, kTauJet30_ETM30, kTauJet30_ETM40, kHTT100_ETM30, kTripleMu3, kTripleIsoEG5, kTripleEG10, kTripleJet50, kTripleTauJet40, kDoubleMu3_IsoEG5, kDoubleMu3_EG10, kDoubleIsoEG5_Mu3, kDoubleEG10_Mu3, kDoubleMu3_HTT200, kDoubleIsoEG5_HTT200, kDoubleEG10_HTT200, kDoubleJet50_HTT200, kDoubleTauJet40_HTT200, kDoubleMu3_ETM20, kDoubleIsoEG5_ETM20, kDoubleEG10_ETM20, kDoubleJet50_ETM20, kDoubleTauJet40_ETM20, kQuadJet30, kExclusiveDoubleIsoEG4, kExclusiveDoubleJet60, kExclusiveJet25_Gap_Jet25, kIsoEG10_Jet20_ForJet10, kMinBias_HTT10, kZeroBias, kNumOfL1TriggerTypes } ;
L1ParticleMap::L1ParticleMap | ( | ) |
Definition at line 164 of file L1ParticleMap.cc.
{ }
L1ParticleMap::L1ParticleMap | ( | L1TriggerType | triggerType, |
bool | triggerDecision, | ||
const L1ObjectTypeVector & | objectTypes, | ||
const L1EmParticleVectorRef & | emParticles = L1EmParticleVectorRef() , |
||
const L1JetParticleVectorRef & | jetParticles = L1JetParticleVectorRef() , |
||
const L1MuonParticleVectorRef & | muonParticles = L1MuonParticleVectorRef() , |
||
const L1EtMissParticleRefProd & | etMissParticle = L1EtMissParticleRefProd() , |
||
const L1IndexComboVector & | indexCombos = L1IndexComboVector() |
||
) |
Definition at line 168 of file L1ParticleMap.cc.
: triggerType_( triggerType ), triggerDecision_( triggerDecision ), objectTypes_( objectTypes ), emParticles_( emParticles ), jetParticles_( jetParticles ), muonParticles_( muonParticles ), etMissParticle_( etMissParticle ), indexCombos_( indexCombos ) { }
L1ParticleMap::~L1ParticleMap | ( | ) | [virtual] |
Definition at line 193 of file L1ParticleMap.cc.
{ }
std::vector< const reco::LeafCandidate * > L1ParticleMap::candidateCombo | ( | const L1IndexCombo & | aCombo | ) | const |
Definition at line 390 of file L1ParticleMap.cc.
References candidateInCombo(), i, numOfObjects(), and tmp.
{ std::vector< const reco::LeafCandidate* > tmp ; for( int i = 0 ; i < numOfObjects() ; ++i ) { tmp.push_back( candidateInCombo( i, aCombo ) ) ; } return tmp ; }
const reco::LeafCandidate * L1ParticleMap::candidateInCombo | ( | int | aIndexInCombo, |
const L1IndexCombo & | aCombo | ||
) | const |
Definition at line 290 of file L1ParticleMap.cc.
References emParticles_, etMissParticle_, edm::RefProd< C >::get(), jetParticles_, kEM, kEtHad, kEtMiss, kEtTotal, kJet, kMuon, muonParticles_, and objectTypes_.
Referenced by candidateCombo().
{ L1ObjectType type = objectTypes_[ aIndexInCombo ] ; int particleInList = aCombo[ aIndexInCombo ] ; if( type == kEM ) { return dynamic_cast< const reco::LeafCandidate* >( emParticles_[ particleInList ].get() ) ; } else if( type == kJet ) { return dynamic_cast< const reco::LeafCandidate* >( jetParticles_[ particleInList ].get() ) ; } else if( type == kMuon ) { return dynamic_cast< const reco::LeafCandidate* >( muonParticles_[ particleInList ].get() ) ; } else if( type == kEtMiss || type == kEtTotal || type == kEtHad ) { return dynamic_cast< const reco::LeafCandidate* >( etMissParticle_.get() ) ; } else { return 0 ; } }
const L1EmParticle * L1ParticleMap::emParticleInCombo | ( | int | aIndexInCombo, |
const L1IndexCombo & | aCombo | ||
) | const |
Definition at line 323 of file L1ParticleMap.cc.
References emParticles_, kEM, and objectTypes_.
{ L1ObjectType type = objectTypes_[ aIndexInCombo ] ; int particleInList = aCombo[ aIndexInCombo ] ; if( type == kEM ) { return emParticles_[ particleInList ].get() ; } else { return 0 ; } }
const L1EmParticleVectorRef& l1extra::L1ParticleMap::emParticles | ( | ) | const [inline] |
const L1EtMissParticleRefProd& l1extra::L1ParticleMap::etMissParticle | ( | ) | const [inline] |
Definition at line 321 of file L1ParticleMap.h.
References etMissParticle_.
{ return etMissParticle_ ; }
const L1EtMissParticle * L1ParticleMap::etMissParticleInCombo | ( | int | aIndexInCombo, |
const L1IndexCombo & | aCombo | ||
) | const |
Definition at line 374 of file L1ParticleMap.cc.
References etMissParticle_, edm::RefProd< C >::get(), kEtHad, kEtMiss, kEtTotal, and objectTypes_.
{ L1ObjectType type = objectTypes_[ aIndexInCombo ] ; if( type == kEtMiss || type == kEtTotal || type == kEtHad ) { return etMissParticle_.get() ; } else { return 0 ; } }
const L1ParticleMap::L1IndexComboVector & L1ParticleMap::indexCombos | ( | ) | const |
Definition at line 218 of file L1ParticleMap.cc.
References emParticles_, i, indexCombos_, j, jetParticles_, kEM, kJet, kMuon, kNumOfL1ObjectTypes, muonParticles_, nParticles, numOfObjects(), objectTypeIsGlobal(), and objectTypes_.
{ if( indexCombos_.size() == 0 ) { // Determine the number of non-global objects. There should be 0 or 1. int numNonGlobal = 0 ; L1ObjectType nonGlobalType = kNumOfL1ObjectTypes ; int nonGlobalIndex = -1 ; for( int i = 0 ; i < numOfObjects() ; ++i ) { if( !objectTypeIsGlobal( objectTypes_[ i ] ) ) { ++numNonGlobal ; nonGlobalType = objectTypes_[ i ] ; nonGlobalIndex = i ; } } if( numNonGlobal == 0 ) { // Dummy entry for each object type. L1IndexCombo tmpCombo ; for( int i = 0 ; i < numOfObjects() ; ++i ) { tmpCombo.push_back( 0 ) ; } indexCombos_.push_back( tmpCombo ) ; } else if( numNonGlobal == 1 ) { int nParticles = 0 ; if( nonGlobalType == kEM ) { nParticles = emParticles_.size() ; } else if( nonGlobalType == kJet ) { nParticles = jetParticles_.size() ; } else if( nonGlobalType == kMuon ) { nParticles = muonParticles_.size() ; } for( int i = 0 ; i < nParticles ; ++i ) { L1IndexCombo tmpCombo ; for( int j = 0 ; j < numOfObjects() ; ++j ) { if( j == nonGlobalIndex ) { tmpCombo.push_back( i ) ; } else { tmpCombo.push_back( 0 ) ; } } indexCombos_.push_back( tmpCombo ) ; } } } return indexCombos_ ; }
const L1JetParticle * L1ParticleMap::jetParticleInCombo | ( | int | aIndexInCombo, |
const L1IndexCombo & | aCombo | ||
) | const |
Definition at line 340 of file L1ParticleMap.cc.
References jetParticles_, kJet, and objectTypes_.
{ L1ObjectType type = objectTypes_[ aIndexInCombo ] ; int particleInList = aCombo[ aIndexInCombo ] ; if( type == kJet ) { return jetParticles_[ particleInList ].get() ; } else { return 0 ; } }
const L1JetParticleVectorRef& l1extra::L1ParticleMap::jetParticles | ( | ) | const [inline] |
Definition at line 315 of file L1ParticleMap.h.
References jetParticles_.
{ return jetParticles_ ; }
const L1MuonParticle * L1ParticleMap::muonParticleInCombo | ( | int | aIndexInCombo, |
const L1IndexCombo & | aCombo | ||
) | const |
Definition at line 357 of file L1ParticleMap.cc.
References kMuon, muonParticles_, and objectTypes_.
{ L1ObjectType type = objectTypes_[ aIndexInCombo ] ; int particleInList = aCombo[ aIndexInCombo ] ; if( type == kMuon ) { return muonParticles_[ particleInList ].get() ; } else { return 0 ; } }
const L1MuonParticleVectorRef& l1extra::L1ParticleMap::muonParticles | ( | ) | const [inline] |
Definition at line 318 of file L1ParticleMap.h.
References muonParticles_.
{ return muonParticles_ ; }
int l1extra::L1ParticleMap::numOfObjects | ( | ) | const [inline] |
Definition at line 309 of file L1ParticleMap.h.
References objectTypes_.
Referenced by candidateCombo(), and indexCombos().
{ return objectTypes_.size() ; }
bool L1ParticleMap::objectTypeIsGlobal | ( | L1ObjectType | type | ) | [static] |
const L1ObjectTypeVector& l1extra::L1ParticleMap::objectTypes | ( | ) | const [inline] |
bool l1extra::L1ParticleMap::triggerDecision | ( | ) | const [inline] |
Definition at line 299 of file L1ParticleMap.h.
References triggerDecision_.
{ return triggerDecision_ ; }
const std::string& l1extra::L1ParticleMap::triggerName | ( | ) | const [inline] |
Definition at line 296 of file L1ParticleMap.h.
References triggerName(), and triggerType_.
Referenced by triggerName().
{ return triggerName( triggerType_ ) ; }
const std::string & L1ParticleMap::triggerName | ( | L1TriggerType | type | ) | [static] |
Definition at line 406 of file L1ParticleMap.cc.
References triggerNames_.
{ return triggerNames_[ type ] ; }
L1TriggerType l1extra::L1ParticleMap::triggerType | ( | ) | const [inline] |
L1ParticleMap::L1TriggerType L1ParticleMap::triggerType | ( | const std::string & | name | ) | [static] |
Definition at line 412 of file L1ParticleMap.cc.
References i, kNumOfL1TriggerTypes, and triggerNames_.
{ for( int i = 0 ; i < kNumOfL1TriggerTypes ; ++i ) { if( triggerNames_[ i ] == name ) { return ( L1TriggerType ) i ; } } return kNumOfL1TriggerTypes ; }
Definition at line 380 of file L1ParticleMap.h.
Referenced by candidateInCombo(), emParticleInCombo(), emParticles(), and indexCombos().
Definition at line 386 of file L1ParticleMap.h.
Referenced by candidateInCombo(), etMissParticle(), and etMissParticleInCombo().
L1IndexComboVector l1extra::L1ParticleMap::indexCombos_ [mutable, private] |
Definition at line 397 of file L1ParticleMap.h.
Referenced by indexCombos().
Definition at line 381 of file L1ParticleMap.h.
Referenced by candidateInCombo(), indexCombos(), jetParticleInCombo(), and jetParticles().
Definition at line 382 of file L1ParticleMap.h.
Referenced by candidateInCombo(), indexCombos(), muonParticleInCombo(), and muonParticles().
Definition at line 376 of file L1ParticleMap.h.
Referenced by candidateInCombo(), emParticleInCombo(), etMissParticleInCombo(), indexCombos(), jetParticleInCombo(), muonParticleInCombo(), numOfObjects(), and objectTypes().
bool l1extra::L1ParticleMap::triggerDecision_ [private] |
Definition at line 372 of file L1ParticleMap.h.
Referenced by triggerDecision().
std::string L1ParticleMap::triggerNames_ [static, private] |
Definition at line 400 of file L1ParticleMap.h.
Referenced by triggerName(), and triggerType().
Definition at line 370 of file L1ParticleMap.h.
Referenced by triggerName(), and triggerType().