ATLAS Offline Software
Loading...
Searching...
No Matches
IMuonTriggerScaleFactors.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4
5#ifndef IMUONTRIGGERSCALEFACTORS_H_
6#define IMUONTRIGGERSCALEFACTORS_H_
7
8#include <map>
9#include <string>
10#include <vector>
11
12#include "AsgTools/IAsgTool.h"
15#include "xAODMuon/Muon.h"
17
18namespace TrigMuonEff {
19
24 bool isData;
26
27 Configuration(const bool isData_ = true, const int replicaIndex_ = -1) : isData(isData_), replicaIndex(replicaIndex_) {}
28 };
29} // namespace TrigMuonEff
30
34
35namespace CP {
36
37 class IMuonTriggerScaleFactors : public virtual asg::IAsgTool, virtual public CP::ISystematicsTool {
39
40 public:
41 virtual StatusCode initialize(void) = 0;
42
43 virtual CorrectionCode getTriggerScaleFactor(const xAOD::MuonContainer& mucont, Double_t& triggersf,
44 const std::string& trigger) const = 0;
45
46 virtual CorrectionCode getTriggerScaleFactor(const xAOD::Muon& muon, Double_t& triggersf, const std::string& trigger) const = 0;
47
48 virtual CorrectionCode getTriggerEfficiency(const xAOD::Muon& mu, Double_t& efficiency, const std::string& trigger,
49 Bool_t dataType) const = 0;
50
51 virtual int getBinNumber(const xAOD::Muon& muon, const std::string& trigger) const = 0;
53 virtual bool isTriggerSupported(const std::string& trigger) const = 0;
54 };
55 // class IMuonEfficiencyTool
56
57} // namespace CP
58
59#endif /* IMUONTRIGGERSCALEFACTORS_H_ */
#define ASG_TOOL_INTERFACE(CLASSNAME)
Return value from object correction CP tools.
virtual CorrectionCode getTriggerEfficiency(const xAOD::Muon &mu, Double_t &efficiency, const std::string &trigger, Bool_t dataType) const =0
virtual CorrectionCode getTriggerScaleFactor(const xAOD::Muon &muon, Double_t &triggersf, const std::string &trigger) const =0
virtual int getBinNumber(const xAOD::Muon &muon, const std::string &trigger) const =0
virtual bool isTriggerSupported(const std::string &trigger) const =0
Returns whether the trigger is supported in the current data-period.
virtual StatusCode initialize(void)=0
virtual CorrectionCode getTriggerScaleFactor(const xAOD::MuonContainer &mucont, Double_t &triggersf, const std::string &trigger) const =0
Interface for all CP tools supporting systematic variations.
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
void efficiency(std::vector< double > &bins, std::vector< double > &values, const std::vector< std::string > &files, const std::string &histname, const std::string &tplotname, const std::string &label="")
Select isolated Photons, Electrons and Muons.
Muon_v1 Muon
Reference the current persistent version:
MuonContainer_v1 MuonContainer
Definition of the current "Muon container version".
int replicaIndex
index of replicated histograms to access
Configuration(const bool isData_=true, const int replicaIndex_=-1)