![]() |
ATLAS Offline Software
|
#include <ITrigGlobalEfficiencyCorrectionTool.h>
Public Member Functions | |
| virtual CP::CorrectionCode | getEfficiencyScaleFactor (const std::vector< const xAOD::IParticle * > &particles, double &efficiencyScaleFactor)=0 |
| virtual CP::CorrectionCode | getEfficiency (const std::vector< const xAOD::IParticle * > &particles, double &efficiencyData, double &efficiencyMc)=0 |
| virtual CP::CorrectionCode | checkTriggerMatching (bool &matched, const std::vector< const xAOD::IParticle * > &particles)=0 |
| virtual CP::CorrectionCode | checkTriggerMatching (std::unordered_map< std::string, bool > &matched_per_trigger, const std::vector< const xAOD::IParticle * > &particles)=0 |
| template<typename... Args> | |
| auto | getEfficiencyScaleFactor (Args &... args) -> std::enable_if_t< validArgs< Args... >(1), CP::CorrectionCode > |
| Alternatively, the list of particles can be supplied via one or several vectors of xAOD::Electron*/Muon*/Photon* The generic signature is getEfficiencyScaleFactor((const) vector<(const)Type1*>&, ..., (const) vector<(const)TypeN*>&, double& efficiencyScaleFactor) e.g. | |
| template<typename... Args> | |
| auto | getEfficiency (Args &... args) -> std::enable_if_t< validArgs< Args... >(2), CP::CorrectionCode > |
| template<typename BoolOrMap, typename... Args> | |
| auto | checkTriggerMatching (BoolOrMap &matched, Args &... args) -> std::enable_if_t< validArgs< Args... >(0), CP::CorrectionCode > |
| virtual CP::CorrectionCode | getRelevantTriggers (std::vector< std::string > &triggers)=0 |
| This will fill the 'triggers' argument with the names of the triggers relevant for the current run number, among those specified in the tool configuration. | |
| virtual CP::CorrectionCode | countTriggerLegs (const std::string &trigger, std::size_t &numberOfLegs)=0 |
| This utility function provides the number of legs for the specified trigger. | |
| virtual CP::CorrectionCode | getEfficiencyScaleFactor (unsigned runNumber, const std::vector< const xAOD::IParticle * > &particles, double &efficiencyScaleFactor)=0 |
| These should in principle not be used (except by unit tests), as the CP tools require the EventInfo decoration "RandomRunNumber" to be present. | |
| virtual CP::CorrectionCode | getEfficiency (unsigned runNumber, const std::vector< const xAOD::IParticle * > &particles, double &efficiencyData, double &efficiencyMc)=0 |
| virtual bool | isAffectedBySystematic (const SystematicVariation &systematic) const =0 |
| Declare the interface that this class provides. | |
| virtual StatusCode | applySystematicVariation (const SystematicSet &systConfig)=0 |
| effects: configure this tool for the given list of systematic variations. | |
| virtual SystematicSet | affectingSystematics () const =0 |
| the list of all systematics this tool can be affected by | |
| virtual SystematicSet | recommendedSystematics () const =0 |
| the list of all systematics this tool recommends to use | |
| virtual void | print () const =0 |
| Print the state of the tool. | |
Static Public Member Functions | |
| template<typename Arg> | |
| static constexpr bool | validArgs (unsigned nTrailingDoubles) |
| template<typename Arg1, typename Arg2, typename... OtherArgs> | |
| static constexpr bool | validArgs (unsigned nTrailingDoubles) |
| static std::string | toolnameForDefaultScaleFactor () |
| To be used with the ListOfLegsPerTool property: | |
Protected Member Functions | |
| double * | handleArg (double &arg, std::vector< const xAOD::IParticle * > &) |
| template<typename P> | |
| double * | handleArg (const std::vector< P > &arg, std::vector< const xAOD::IParticle * > &particles) |
Definition at line 20 of file ITrigGlobalEfficiencyCorrectionTool.h.
|
pure virtualinherited |
the list of all systematics this tool can be affected by
Implemented in AsgElectronEfficiencyCorrectionTool, AsgPhotonEfficiencyCorrectionTool, BaseFakeBkgTool, BTaggingEfficiencyJsonTool, BTaggingEfficiencyTool, BTaggingEigenVectorRecompositionTool, BTaggingTruthTaggingTool, CP::BaseFakeBkgTool, CP::EgammaCalibrationAndSmearingTool, CP::ElectronChargeEfficiencyCorrectionTool, CP::FFJetSmearingTool, CP::IIsolationCorrectionTool, CP::IsolationCorrectionTool, CP::JetQGTagger, CP::JetTileCorrectionTool, CP::MuonCalibIntHighpTSmearTool, CP::MuonCalibIntSagittaTool, CP::MuonCalibIntScaleSmearTool, CP::MuonCalibTool, CP::MuonEfficiencyScaleFactors, CP::MuonTriggerScaleFactors, CP::PileupReweightingTool, CP::SystematicsTool, InDet::IInDetTrackBiasingTool, InDet::IInDetTrackSmearingTool, InDet::IInDetTrackTruthFilterTool, InDet::IJetTrackFilterTool, InDet::InclusiveTrackFilterTool, InDet::InDetTrackBiasingTool, InDet::InDetTrackSmearingTool, InDet::InDetTrackSystematicsTool, InDet::InDetTrackTruthFilterTool, InDet::JetTrackFilterTool, JetUncertaintiesTool, met::METSystematicsTool, ParticleScaleFactorTool, PMGTools::PMGHFProductionFractionTool, PMGTools::PMGTruthWeightTool, SimpleElectronEfficiencyCorrectionTool, SimpleMuonTriggerScaleFactors, SimplePhotonEfficiencyCorrectionTool, TauAnalysisTools::CommonEfficiencyTool, TauAnalysisTools::CommonSmearingTool, TauAnalysisTools::DiTauEfficiencyCorrectionsTool, TauAnalysisTools::DiTauSmearingTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, TauAnalysisTools::TauSmearingTool, and TrigGlobalEfficiencyCorrectionTool.
|
pure virtualinherited |
effects: configure this tool for the given list of systematic variations.
any requested systematics that are not affecting this tool will be silently ignored (unless they cause other errors). failures: systematic unknown failures: requesting multiple variations on the same systematic (e.g. up & down) failures: requesting an unsupported variation on an otherwise supported systematic (e.g. a 2 sigma variation and the tool only supports 1 sigma variations) failures: unsupported combination of supported systematic failures: other tool specific errors
Implemented in AsgElectronEfficiencyCorrectionTool, AsgPhotonEfficiencyCorrectionTool, BaseFakeBkgTool, BTaggingEfficiencyTool, BTaggingEigenVectorRecompositionTool, BTaggingTruthTaggingTool, CP::BaseFakeBkgTool, CP::EgammaCalibrationAndSmearingTool, CP::ElectronChargeEfficiencyCorrectionTool, CP::FFJetSmearingTool, CP::IIsolationCorrectionTool, CP::IsolationCorrectionTool, CP::JetQGTagger, CP::JetTileCorrectionTool, CP::MuonCalibIntHighpTSmearTool, CP::MuonCalibIntSagittaTool, CP::MuonCalibIntScaleSmearTool, CP::MuonCalibTool, CP::MuonEfficiencyScaleFactors, CP::MuonTriggerScaleFactors, CP::PileupReweightingTool, CP::SystematicsTool, InDet::IInDetTrackBiasingTool, InDet::IInDetTrackSmearingTool, InDet::IInDetTrackTruthFilterTool, InDet::IJetTrackFilterTool, InDet::InclusiveTrackFilterTool, InDet::InDetTrackBiasingTool, InDet::InDetTrackSmearingTool, InDet::InDetTrackSystematicsTool, InDet::InDetTrackTruthFilterTool, InDet::JetTrackFilterTool, JetUncertaintiesTool, met::METSystematicsTool, ParticleScaleFactorTool, SimpleElectronEfficiencyCorrectionTool, SimpleMuonTriggerScaleFactors, SimplePhotonEfficiencyCorrectionTool, TauAnalysisTools::CommonEfficiencyTool, TauAnalysisTools::CommonSmearingTool, TauAnalysisTools::DiTauEfficiencyCorrectionsTool, TauAnalysisTools::DiTauSmearingTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, TauAnalysisTools::TauSmearingTool, and TrigGlobalEfficiencyCorrectionTool.
|
pure virtual |
Implemented in TrigGlobalEfficiencyCorrectionTool.
| auto ITrigGlobalEfficiencyCorrectionTool::checkTriggerMatching | ( | BoolOrMap & | matched, |
| Args &... | args ) -> std::enable_if_t<validArgs<Args...>(0), CP::CorrectionCode> |
Definition at line 111 of file ITrigGlobalEfficiencyCorrectionTool.h.
|
pure virtual |
Implemented in TrigGlobalEfficiencyCorrectionTool.
|
pure virtual |
This utility function provides the number of legs for the specified trigger.
Implemented in TrigGlobalEfficiencyCorrectionTool.
| auto ITrigGlobalEfficiencyCorrectionTool::getEfficiency | ( | Args &... | args | ) | -> std::enable_if_t<validArgs<Args...>(2), CP::CorrectionCode> |
Definition at line 102 of file ITrigGlobalEfficiencyCorrectionTool.h.
|
pure virtual |
Implemented in TrigGlobalEfficiencyCorrectionTool.
|
pure virtual |
Implemented in TrigGlobalEfficiencyCorrectionTool.
| auto ITrigGlobalEfficiencyCorrectionTool::getEfficiencyScaleFactor | ( | Args &... | args | ) | -> std::enable_if_t<validArgs<Args...>(1), CP::CorrectionCode> |
Alternatively, the list of particles can be supplied via one or several vectors of xAOD::Electron*/Muon*/Photon* The generic signature is getEfficiencyScaleFactor((const) vector<(const)Type1*>&, ..., (const) vector<(const)TypeN*>&, double& efficiencyScaleFactor) e.g.
getEfficiencyScaleFactor(electrons, muons, sf); getEfficiencyScaleFactor(photons, sf); getEfficiencyScaleFactor(muons, electrons, photons, sf); don't forget the last argument(s)! (scale factor for getEfficiencyScaleFactor(), data and MC efficiencies for getEfficiency())
Definition at line 93 of file ITrigGlobalEfficiencyCorrectionTool.h.
|
pure virtual |
Implemented in TrigGlobalEfficiencyCorrectionTool.
|
pure virtual |
These should in principle not be used (except by unit tests), as the CP tools require the EventInfo decoration "RandomRunNumber" to be present.
Implemented in TrigGlobalEfficiencyCorrectionTool.
|
pure virtual |
This will fill the 'triggers' argument with the names of the triggers relevant for the current run number, among those specified in the tool configuration.
Implemented in TrigGlobalEfficiencyCorrectionTool.
|
inlineprotected |
Definition at line 60 of file ITrigGlobalEfficiencyCorrectionTool.h.
|
inlineprotected |
Definition at line 59 of file ITrigGlobalEfficiencyCorrectionTool.h.
|
pure virtualinherited |
Declare the interface that this class provides.
returns: whether this tool is affected by the given systematics
Implemented in AsgElectronEfficiencyCorrectionTool, AsgPhotonEfficiencyCorrectionTool, BaseFakeBkgTool, BTaggingEfficiencyTool, BTaggingEigenVectorRecompositionTool, BTaggingTruthTaggingTool, CP::BaseFakeBkgTool, CP::EgammaCalibrationAndSmearingTool, CP::ElectronChargeEfficiencyCorrectionTool, CP::FFJetSmearingTool, CP::IIsolationCorrectionTool, CP::IsolationCorrectionTool, CP::JetQGTagger, CP::JetTileCorrectionTool, CP::MuonCalibIntHighpTSmearTool, CP::MuonCalibIntSagittaTool, CP::MuonCalibIntScaleSmearTool, CP::MuonCalibTool, CP::MuonEfficiencyScaleFactors, CP::MuonTriggerScaleFactors, CP::PileupReweightingTool, CP::SystematicsTool, InDet::IInDetTrackBiasingTool, InDet::IInDetTrackSmearingTool, InDet::IInDetTrackTruthFilterTool, InDet::IJetTrackFilterTool, InDet::InclusiveTrackFilterTool, InDet::InDetTrackBiasingTool, InDet::InDetTrackSmearingTool, InDet::InDetTrackSystematicsTool, InDet::InDetTrackTruthFilterTool, InDet::JetTrackFilterTool, JetUncertaintiesTool, met::METSystematicsTool, ParticleScaleFactorTool, SimpleElectronEfficiencyCorrectionTool, SimpleMuonTriggerScaleFactors, SimplePhotonEfficiencyCorrectionTool, TauAnalysisTools::CommonEfficiencyTool, TauAnalysisTools::CommonSmearingTool, TauAnalysisTools::DiTauEfficiencyCorrectionsTool, TauAnalysisTools::DiTauSmearingTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, TauAnalysisTools::TauSmearingTool, and TrigGlobalEfficiencyCorrectionTool.
|
pure virtualinherited |
Print the state of the tool.
Implemented in asg::AsgTool, AsgHelloTool, HI::HIPileupTool, JetBottomUpSoftDrop, JetConstituentsRetriever, JetDumper, JetFinder, JetFromPseudojet, JetModifiedMassDrop, JetPileupLabelingTool, JetPruner, JetPseudojetRetriever, JetReclusterer, JetReclusteringTool, JetRecTool, JetRecursiveSoftDrop, JetSoftDrop, JetSplitter, JetSubStructureMomentToolsBase, JetToolRunner, JetTrimmer, JetTruthLabelingTool, KtDeltaRTool, and LundVariablesTool.
|
pure virtualinherited |
the list of all systematics this tool recommends to use
Implemented in AsgElectronEfficiencyCorrectionTool, AsgPhotonEfficiencyCorrectionTool, BaseFakeBkgTool, BTaggingEfficiencyJsonTool, BTaggingEfficiencyTool, BTaggingEigenVectorRecompositionTool, BTaggingTruthTaggingTool, CP::BaseFakeBkgTool, CP::EgammaCalibrationAndSmearingTool, CP::ElectronChargeEfficiencyCorrectionTool, CP::FFJetSmearingTool, CP::IIsolationCorrectionTool, CP::IsolationCorrectionTool, CP::JetQGTagger, CP::JetTileCorrectionTool, CP::MuonCalibIntHighpTSmearTool, CP::MuonCalibIntSagittaTool, CP::MuonCalibIntScaleSmearTool, CP::MuonCalibTool, CP::MuonEfficiencyScaleFactors, CP::MuonTriggerScaleFactors, CP::PileupReweightingTool, CP::SystematicsTool, InDet::IInDetTrackBiasingTool, InDet::IInDetTrackSmearingTool, InDet::IInDetTrackTruthFilterTool, InDet::IJetTrackFilterTool, InDet::InclusiveTrackFilterTool, InDet::InDetTrackBiasingTool, InDet::InDetTrackSmearingTool, InDet::InDetTrackSystematicsTool, InDet::InDetTrackTruthFilterTool, InDet::JetTrackFilterTool, JetUncertaintiesTool, met::METSystematicsTool, ParticleScaleFactorTool, PMGTools::PMGHFProductionFractionTool, PMGTools::PMGTruthWeightTool, SimpleElectronEfficiencyCorrectionTool, SimpleMuonTriggerScaleFactors, SimplePhotonEfficiencyCorrectionTool, TauAnalysisTools::CommonEfficiencyTool, TauAnalysisTools::CommonSmearingTool, TauAnalysisTools::DiTauEfficiencyCorrectionsTool, TauAnalysisTools::DiTauSmearingTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, TauAnalysisTools::TauSmearingTool, and TrigGlobalEfficiencyCorrectionTool.
|
inlinestatic |
To be used with the ListOfLegsPerTool property:
Definition at line 57 of file ITrigGlobalEfficiencyCorrectionTool.h.
|
staticconstexpr |
Definition at line 68 of file ITrigGlobalEfficiencyCorrectionTool.h.
|
staticconstexpr |
Definition at line 81 of file ITrigGlobalEfficiencyCorrectionTool.h.