#include <ISystematicsTool.h>
Public Member Functions | |
virtual | ~ISystematicsTool () |
Declare the interface that this class provides. | |
virtual bool | isAffectedBySystematic (const SystematicVariation &systematic) const =0 |
returns: whether this tool is affected by the given systematics | |
virtual SystematicSet | affectingSystematics () const =0 |
returns: the list of all systematics this tool can be affected by | |
virtual SystematicSet | recommendedSystematics () const =0 |
returns: the list of all systematics this tool recommends to use | |
virtual SystematicCode | applySystematicVariation (const SystematicSet &systConfig)=0 |
Interface for all CP tools supporting systematic variations
This interface is meant to be used by the systematics handling system to configure different CP tools to change their behaviour at runtime.
virtual CP::ISystematicsTool::~ISystematicsTool | ( | ) | [inline, virtual] |
Declare the interface that this class provides.
Virtual destructor
virtual SystematicCode CP::ISystematicsTool::applySystematicVariation | ( | const SystematicSet & | systConfig | ) | [pure virtual] |
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 CP::JetCalibrationToolExample, AsgElectronEfficiencyCorrectionTool, CP::ElectronChargeEfficiencyCorrectionTool, CP::EgammaCalibrationAndSmearingTool, InDet::IInDetTrackBiasingTool, InDet::IInDetTrackSmearingTool, InDet::IInDetTrackTruthFilterTool, InDet::IJetTrackFilterTool, CP::IIsolationCorrectionTool, CP::IsolationCorrectionTool, CP::JetJvtEfficiency, JERSmearingTool, CP::JetTileCorrectionTool, JetUncertaintiesTool, met::METSystematicsTool, CP::MuonEfficiencyScaleFactors, CP::MuonTriggerScaleFactors, CP::IMuonCalibrationAndSmearingTool, CP::MuonCalibrationAndSmearingTool, CP::SystematicsTool, AsgPhotonEfficiencyCorrectionTool, CP::PileupReweightingTool, ana::AnaTool, ana::QuickAna, ParticleScaleFactorTool, TauAnalysisTools::CommonEfficiencyTool, TauAnalysisTools::CommonSmearingTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, TauAnalysisTools::TauSmearingTool, DummyElectronEfficiencyCorrectionTool, DummyMuonTriggerScaleFactors, and BTaggingEfficiencyTool.