#include <HLTL1TSeed.h>
Public Member Functions | |
bool | hltFilter (edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct) override |
filter the event More... | |
HLTL1TSeed (const edm::ParameterSet &) | |
constructor More... | |
~HLTL1TSeed () override | |
destructor More... | |
Public Member Functions inherited from HLTStreamFilter | |
HLTStreamFilter (const edm::ParameterSet &config) | |
int | module (edm::Event const &) const |
const std::string * | moduleLabel () const |
int | path (edm::Event const &) const |
const std::string * | pathName (edm::Event const &) const |
std::pair< int, int > | pmid (edm::Event const &) const |
bool | saveTags () const |
~HLTStreamFilter () override | |
Public Member Functions inherited from edm::stream::EDFilter<> | |
EDFilter ()=default | |
bool | hasAbilityToProduceInLumis () const final |
bool | hasAbilityToProduceInRuns () const final |
Public Member Functions inherited from edm::stream::EDFilterBase | |
EDFilterBase () | |
ModuleDescription const & | moduleDescription () const |
~EDFilterBase () override | |
Public Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
ProducerBase () | |
std::vector< edm::ProductResolverIndex > const & | putTokenIndexToProductResolverIndex () const |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
~ProducerBase () noexcept(false) override | |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
void | convertCurrentProcessAlias (std::string const &processName) |
Convert "@currentProcess" in InputTag process names to the actual current process name. More... | |
EDConsumerBase () | |
EDConsumerBase (EDConsumerBase const &)=delete | |
EDConsumerBase (EDConsumerBase &&)=default | |
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
virtual | ~EDConsumerBase () noexcept(false) |
Static Public Member Functions | |
static void | fillDescriptions (edm::ConfigurationDescriptions &descriptions) |
parameter description More... | |
Static Public Member Functions inherited from HLTStreamFilter | |
static void | makeHLTFilterDescription (edm::ParameterSetDescription &desc) |
Static Public Member Functions inherited from edm::stream::EDFilterBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Private Member Functions | |
void | dumpTriggerFilterObjectWithRefs (trigger::TriggerFilterObjectWithRefs &) const |
detailed print of filter content More... | |
bool | seedsL1TriggerObjectMaps (edm::Event &, trigger::TriggerFilterObjectWithRefs &) |
seeding is done via L1 trigger object maps, considering the objects which fired in L1 More... | |
void | updateAlgoLogicParser (const L1GtTriggerMenu *, const AlgorithmMap &) |
void | updateAlgoLogicParser (const std::vector< bool > >Word, const std::vector< unsigned int > &triggerMask, const int physicsDaqPartition) |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDFilter<> | |
typedef CacheContexts< T... > | CacheTypes |
typedef CacheTypes::GlobalCache | GlobalCache |
typedef AbilityChecker< T... > | HasAbility |
typedef CacheTypes::LuminosityBlockCache | LuminosityBlockCache |
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache > | LuminosityBlockContext |
typedef CacheTypes::LuminosityBlockSummaryCache | LuminosityBlockSummaryCache |
typedef CacheTypes::RunCache | RunCache |
typedef RunContextT< RunCache, GlobalCache > | RunContext |
typedef CacheTypes::RunSummaryCache | RunSummaryCache |
Public Types inherited from edm::stream::EDFilterBase | |
typedef EDFilterAdaptorBase | ModuleType |
Public Types inherited from edm::ProducerBase | |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >> |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
Description: filter L1 bits and extract seed objects from L1 GT for HLT algorithms.
Implementation: This class is an HLTStreamFilter (-> stream::EDFilter). It implements:
Definition at line 46 of file HLTL1TSeed.h.
|
explicit |
constructor
Definition at line 33 of file HLTL1TSeed.cc.
References Exception, GlobalLogicParser::expressionSeedsOperandList(), m_l1AlgoLogicParser, m_l1AlgoSeeds, m_l1AlgoSeedsObjType, m_l1AlgoSeedsRpn, m_l1GlobalDecision, m_l1SeedsLogicalExpression, GlobalLogicParser::operandTokenVector(), and findQualityFiles::size.
|
override |
|
private |
detailed print of filter content
Definition at line 153 of file HLTL1TSeed.cc.
References trigger::TriggerRefsCollections::getObjects(), mps_fire::i, LogTrace, m_l1SeedsLogicalExpression, GetRecoTauVFromDQM_MC_cff::obj, trigger::TriggerL1EG, trigger::TriggerL1ETM, trigger::TriggerL1ETMHF, trigger::TriggerL1ETT, trigger::TriggerL1HTM, trigger::TriggerL1HTT, trigger::TriggerL1Jet, trigger::TriggerL1Mu, and trigger::TriggerL1Tau.
Referenced by hltFilter().
|
static |
parameter description
Definition at line 96 of file HLTL1TSeed.cc.
References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), and HLTStreamFilter::makeHLTFilterDescription().
|
overridevirtual |
filter the event
Implements HLTStreamFilter.
Definition at line 117 of file HLTL1TSeed.cc.
References trigger::TriggerFilterObjectWithRefs::addCollectionTag(), dumpTriggerFilterObjectWithRefs(), m_isDebugEnabled, m_l1EGammaTag, m_l1EtSumTag, m_l1JetTag, m_l1MuonTag, m_l1TauTag, HLTStreamFilter::saveTags(), and seedsL1TriggerObjectMaps().
|
private |
seeding is done via L1 trigger object maps, considering the objects which fired in L1
Loop over the list of required algorithms for seeding /////////////////////////////////////////////////////
Unpacked GT result of algorithm is false after masks and prescales - no seeds ////////////////////////////////////////////////////////////////////////////////
Emulated GT result of algorithm is false - no seeds - but still save the event
Definition at line 314 of file HLTL1TSeed.cc.
References trigger::TriggerRefsCollections::addObject(), GlobalObjectMap::algoBitNumber(), GlobalObjectMap::algoGtlResult(), HIPAlignmentAlgorithm_cfi::algoName, GlobalObjectMap::algoName(), BXVector< T >::at(), BXVector< T >::begin(), GlobalObjectMap::combinationVector(), DEFINE_FWK_MODULE, SoftLeptonByDistance_cfi::distance, BXVector< T >::end(), Exception, GlobalLogicParser::expressionResult(), GlobalAlgBlk::getAlgoDecisionFinal(), edm::Event::getByToken(), GlobalObjectMap::getCombinationsInCond(), GlobalObjectMapRecord::getObjectMap(), l1t::gtEG, l1t::gtETM, l1t::gtETMHF, l1t::gtETT, l1t::gtHTM, l1t::gtHTT, l1t::gtJet, l1t::gtMu, GlobalObjectMapRecord::gtObjectMap(), l1t::gtTau, mps_fire::i, edm::HandleBase::isValid(), fwrapper::jets, BXVector< T >::key(), l1t::EtSum::kMissingEt, l1t::EtSum::kMissingEtHF, l1t::EtSum::kMissingHt, l1t::EtSum::kTotalEt, l1t::EtSum::kTotalHt, LogTrace, m_isDebugEnabled, m_l1AlgoLogicParser, m_l1AlgoSeeds, m_l1EGammaTag, m_l1EGammaToken, m_l1EtSumTag, m_l1EtSumToken, m_l1GlobalDecision, m_l1GlobalTag, m_l1GlobalToken, m_l1GtObjectMapTag, m_l1GtObjectMapToken, m_l1JetTag, m_l1JetToken, m_l1MuonTag, m_l1MuonToken, m_l1SeedsLogicalExpression, m_l1TauTag, m_l1TauToken, extraflags_cff::muons, GlobalObjectMap::objectTypeVector(), GlobalObjectMap::operandTokenVector(), GlobalLogicParser::operandTokenVector(), BXVector< T >::size(), AlCaHLTBitMon_QueryRunRegistry::string, nano_cff::taus, trigger::TriggerL1EG, trigger::TriggerL1ETM, trigger::TriggerL1ETMHF, trigger::TriggerL1ETT, trigger::TriggerL1HTM, trigger::TriggerL1HTT, trigger::TriggerL1Jet, trigger::TriggerL1Mu, and trigger::TriggerL1Tau.
Referenced by hltFilter().
|
inlineprivate |
update the tokenNumber (holding the bit numbers) from m_l1AlgoLogicParser for a new L1 Trigger menu
Definition at line 67 of file HLTL1TSeed.h.
|
inlineprivate |
update the tokenResult members from m_l1AlgoLogicParser for a new event
Definition at line 71 of file HLTL1TSeed.h.
|
private |
cache edm::isDebugEnabled()
Definition at line 144 of file HLTL1TSeed.h.
Referenced by hltFilter(), and seedsL1TriggerObjectMaps().
|
private |
logic parser for m_l1SeedsLogicalExpression
Definition at line 84 of file HLTL1TSeed.h.
Referenced by HLTL1TSeed(), and seedsL1TriggerObjectMaps().
|
private |
list of required algorithms for seeding
Definition at line 87 of file HLTL1TSeed.h.
Referenced by HLTL1TSeed(), and seedsL1TriggerObjectMaps().
|
private |
vector of object-type vectors for each condition in the required algorithms for seeding
Definition at line 93 of file HLTL1TSeed.h.
Referenced by HLTL1TSeed().
|
private |
vector of Rpn vectors for the required algorithms for seeding
Definition at line 90 of file HLTL1TSeed.h.
Referenced by HLTL1TSeed().
|
private |
Meta InputTag for L1 Egamma collection.
Definition at line 121 of file HLTL1TSeed.h.
|
private |
Definition at line 122 of file HLTL1TSeed.h.
Referenced by hltFilter(), and seedsL1TriggerObjectMaps().
|
private |
Definition at line 123 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().
|
private |
Meta InputTag for L1 Egamma collection.
Definition at line 136 of file HLTL1TSeed.h.
|
private |
Definition at line 137 of file HLTL1TSeed.h.
Referenced by hltFilter(), and seedsL1TriggerObjectMaps().
|
private |
Definition at line 138 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().
|
private |
flag to pass if L1TGlobal accept
Definition at line 141 of file HLTL1TSeed.h.
Referenced by HLTL1TSeed(), and seedsL1TriggerObjectMaps().
|
private |
InputTag for L1 Global Trigger.
Definition at line 111 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().
|
private |
Definition at line 112 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().
|
private |
InputTag for L1 Global Trigger object maps. This is done per menu. Should be part of Run.
Definition at line 107 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().
|
private |
Definition at line 108 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().
|
private |
Meta InputTag for L1 Egamma collection.
Definition at line 126 of file HLTL1TSeed.h.
|
private |
Definition at line 127 of file HLTL1TSeed.h.
Referenced by hltFilter(), and seedsL1TriggerObjectMaps().
|
private |
Definition at line 128 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().
|
private |
Meta InputTag for L1 Muon collection.
Definition at line 116 of file HLTL1TSeed.h.
|
private |
Definition at line 117 of file HLTL1TSeed.h.
Referenced by hltFilter(), and seedsL1TriggerObjectMaps().
|
private |
Definition at line 118 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().
|
private |
option used forL1UseL1TriggerObjectMaps = False only number of BxInEvent: 1: L1A=0; 3: -1, L1A=0, 1; 5: -2, -1, L1A=0, 1, 2
Definition at line 100 of file HLTL1TSeed.h.
|
private |
logical expression for the required L1 algorithms the algorithms are specified by name
Definition at line 104 of file HLTL1TSeed.h.
Referenced by dumpTriggerFilterObjectWithRefs(), HLTL1TSeed(), and seedsL1TriggerObjectMaps().
|
private |
Meta InputTag for L1 Egamma collection.
Definition at line 131 of file HLTL1TSeed.h.
|
private |
Definition at line 132 of file HLTL1TSeed.h.
Referenced by hltFilter(), and seedsL1TriggerObjectMaps().
|
private |
Definition at line 133 of file HLTL1TSeed.h.
Referenced by seedsL1TriggerObjectMaps().