ATLAS Offline Software
Loading...
Searching...
No Matches
ITrigMuonMatching.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRIGMUONEFFICIENCY_IMUONEFFICIENCYTOOL_H
6#define TRIGMUONEFFICIENCY_IMUONEFFICIENCYTOOL_H
7
8#include "AsgTools/IAsgTool.h"
9
10#include "xAODMuon/Muon.h"
12#include <string>
13#include <string_view>
14
16public:
17 std::string chain;
18 std::pair<std::string, std::string> thresholds;
19 bool isEFFS;
21 bool isValid;
22
23DimuonChainInfo(const std::string& chain_="") :
24 chain(chain_), thresholds(), isEFFS(false), isSymmetric(false), isValid(false) {}
25
26};
27
28
29namespace Trig {
30
31 class ITrigMuonMatching : public virtual asg::IAsgTool {
32
34
35 public:
36 virtual StatusCode initialize(void) = 0;
37
38 virtual Bool_t match(const xAOD::Muon* mu,
39 std::string_view chain,
40 const double mindelR = 0.1) const = 0;
41
42 virtual Bool_t matchL1(const xAOD::Muon* mu,
43 std::string_view l1item,
44 const double DelR = 0.2) const = 0;
45
46 virtual Bool_t matchL2SA(const xAOD::Muon* mu,
47 std::string_view l1item,
48 std::string_view chain,
49 const double DelR = 0.2) const = 0;
50
51 virtual Bool_t matchL2CB(const xAOD::Muon* mu,
52 std::string_view chain,
53 const double DelR = 0.2) const = 0;
54
55 virtual Double_t minDelR(const xAOD::Muon* mu,
56 std::string_view chain,
57 const double mindelR = 0.1) const = 0;
58
59 virtual Double_t minDelRL1(const xAOD::Muon* mu,
60 std::string_view l1item,
61 const double DelR = 0.2) const = 0;
62
63 virtual Bool_t matchDimuon(const xAOD::Muon* mu1,
64 const xAOD::Muon* mu2,
65 const std::string& chain,
66 std::pair<Bool_t, Bool_t>& result1,
67 std::pair<Bool_t, Bool_t>& result2,
68 const Double_t& mindelR = 0.1) = 0;
69
70 virtual Bool_t match(const double eta,
71 const double phi,
72 std::string_view chain,
73 const double mindelR = 0.1) const = 0;
74
75 virtual Bool_t matchL1(const double eta,
76 const double phi,
77 std::string_view l1item,
78 const double DelR = 0.2) const = 0;
79
80 virtual Bool_t matchDimuon(const TLorentzVector& muon1,
81 const TLorentzVector& muon2,
82 const std::string& chain,
83 std::pair<Bool_t, Bool_t>& result1,
84 std::pair<Bool_t, Bool_t>& result2,
85 const Double_t& mindelR = 0.1) = 0;
86
87 virtual Bool_t isPassedRerun(const std::string& trigger) const = 0;
88
89 };
90
91}
92
93#endif
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
#define ASG_TOOL_INTERFACE(CLASSNAME)
virtual Bool_t matchL1(const xAOD::Muon *mu, std::string_view l1item, const double DelR=0.2) const =0
virtual Bool_t match(const double eta, const double phi, std::string_view chain, const double mindelR=0.1) const =0
virtual StatusCode initialize(void)=0
virtual Bool_t matchL1(const double eta, const double phi, std::string_view l1item, const double DelR=0.2) const =0
virtual Bool_t matchDimuon(const TLorentzVector &muon1, const TLorentzVector &muon2, const std::string &chain, std::pair< Bool_t, Bool_t > &result1, std::pair< Bool_t, Bool_t > &result2, const Double_t &mindelR=0.1)=0
virtual Double_t minDelRL1(const xAOD::Muon *mu, std::string_view l1item, const double DelR=0.2) const =0
virtual Double_t minDelR(const xAOD::Muon *mu, std::string_view chain, const double mindelR=0.1) const =0
virtual Bool_t isPassedRerun(const std::string &trigger) const =0
virtual Bool_t match(const xAOD::Muon *mu, std::string_view chain, const double mindelR=0.1) const =0
virtual Bool_t matchL2CB(const xAOD::Muon *mu, std::string_view chain, const double DelR=0.2) const =0
virtual Bool_t matchDimuon(const xAOD::Muon *mu1, const xAOD::Muon *mu2, const std::string &chain, std::pair< Bool_t, Bool_t > &result1, std::pair< Bool_t, Bool_t > &result2, const Double_t &mindelR=0.1)=0
virtual Bool_t matchL2SA(const xAOD::Muon *mu, std::string_view l1item, std::string_view chain, const double DelR=0.2) const =0
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
The common trigger namespace for trigger analysis tools.
Muon_v1 Muon
Reference the current persistent version:
DimuonChainInfo(const std::string &chain_="")
std::pair< std::string, std::string > thresholds