|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRIG_ENHANCEDBIASWEIGHTCOMPALG_H
6 #define TRIG_ENHANCEDBIASWEIGHTCOMPALG_H
19 #include <tbb/concurrent_hash_map.h>
20 #include <tbb/concurrent_unordered_map.h>
21 #include <tbb/concurrent_vector.h>
75 PublicToolHandle<Trig::TrigDecisionTool>
m_tdt{
this,
"TrigDecisionTool",
"Trig::TrigDecisionTool/TrigDecisionTool",
"TrigDecisionTool"};
81 Gaudi::Property<std::map<std::string, std::vector<std::string>>>
m_chainToHLTSeed {
this,
"ChainToItemMap", {},
"Map for HLT seeded chains" };
96 std::vector<std::string>
parseItems(
const std::string& itemStr);
115 #endif //TRIG_ENHANCEDBIASWEIGHTCOMPALG_H
std::string getName() const
EBChainInfo(const HLT::Identifier &id)
std::vector< EBChainInfo > getPassedEBChains() const
Get list of Enhanced Bias chains that cound have passed.
std::vector< std::string > parseItems(const std::string &itemStr)
Parse list of l1 items.
std::vector< HLT::Identifier > m_EBChainIds
Available EB chains' IDs from HLT Menu.
std::string find(const std::string &s)
return a remapped string
std::map< HLT::Identifier, std::vector< std::string > > m_EBChainIdToItem
L1 items for EB chains from HLT Menu.
SG::ReadHandleKey< TrigConf::HLTMenu > m_HLTMenuKey
virtual StatusCode start() override
bool checkIfTriggeredByRandomChain(const std::vector< EBChainInfo > &EBChain) const
Check if any of random chains passed.
StatusCode fillTotalPrescaleForChains(const EventContext &context, std::vector< EBChainInfo > &EBChains) const
Retrieve total prescales (L1 * HLT) for chains into map.
EBResult calculateEBWeight(const std::vector< EBChainInfo > &EBChains) const
Calculate EB result based on total prescales of chains.
An algorithm that can be simultaneously executed in multiple threads.
Compute Enhanced Bias weights for the events.
HLT::Identifier m_id
HLTID of the chain.
tbb::concurrent_unordered_map< int, double > m_eventToWeight ATLAS_THREAD_SAFE
Map of event number to index in m_ebWeights vector to be saved in xml.
::StatusCode StatusCode
StatusCode definition for legacy code.
Gaudi::Property< std::map< std::string, std::vector< std::string > > > m_chainToHLTSeed
tbb::concurrent_vector< std::pair< double, bool > > m_ebWeights ATLAS_THREAD_SAFE
List of calculated weight + unbiased flag pairs to be saved in xml.
void setTotalPrescale(const double &prescale)
Store result of EB weight calculation.
std::string m_outputFilename ATLAS_THREAD_SAFE
Name of xml output file.
SG::ReadCondHandleKey< TrigConf::L1PrescalesSet > m_L1PrescaleSetInputKey
double m_totalPrescale
Value of total prescale L1 * HLT.
double getTotalPrescale() const
Store necessary information for weight computing for Enhanced Bias chain.
TrigCompositeUtils::DecisionID getId() const
PublicToolHandle< Trig::TrigDecisionTool > m_tdt
virtual StatusCode stop() override
virtual StatusCode initialize() override
bool getIsDisabled() const
std::string name() const
reports human redable name if it is enabled or, empty string
SG::ReadCondHandleKey< TrigConf::HLTPrescalesSet > m_HLTPrescaleSetInputKey
SG::ReadHandleKey< TrigCompositeUtils::DecisionContainer > m_finalDecisionKey
virtual StatusCode execute(const EventContext &context) const override
EnhancedBiasWeightCompAlg(const std::string &name, ISvcLocator *svcLoc)