ATLAS Offline Software
Loading...
Searching...
No Matches
ITrigMuonMatching.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2019 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
14public:
15 std::string chain;
16 std::pair<std::string, std::string> thresholds;
17 bool isEFFS;
19 bool isValid;
20
21DimuonChainInfo(const std::string& chain_="") :
22 chain(chain_), thresholds(), isEFFS(false), isSymmetric(false), isValid(false) {}
23
24};
25
26
27namespace Trig {
28
29 class ITrigMuonMatching : public virtual asg::IAsgTool {
30
32
33 public:
34 virtual StatusCode initialize(void) = 0;
35
36 virtual Bool_t match(const xAOD::Muon* mu,
37 const std::string &chain,
38 const double mindelR = 0.1) const = 0;
39
40 virtual Bool_t matchL1(const xAOD::Muon* mu,
41 const std::string &l1item,
42 const double DelR = 0.2) const = 0;
43
44 virtual Bool_t matchL2SA(const xAOD::Muon* mu,
45 const std::string &l1item,
46 const std::string & chain,
47 const double DelR = 0.2) const = 0;
48
49 virtual Bool_t matchL2CB(const xAOD::Muon* mu,
50 const std::string & chain,
51 const double DelR = 0.2) const = 0;
52
53 virtual Double_t minDelR(const xAOD::Muon* mu,
54 const std::string &chain,
55 const double mindelR = 0.1) const = 0;
56
57 virtual Double_t minDelRL1(const xAOD::Muon* mu,
58 const std::string &l1item,
59 const double DelR = 0.2) const = 0;
60
61 virtual Bool_t matchDimuon(const xAOD::Muon* mu1,
62 const xAOD::Muon* mu2,
63 const std::string& chain,
64 std::pair<Bool_t, Bool_t>& result1,
65 std::pair<Bool_t, Bool_t>& result2,
66 const Double_t& mindelR = 0.1) = 0;
67
68 virtual Bool_t match(const double eta,
69 const double phi,
70 const std::string &chain,
71 const double mindelR = 0.1) const = 0;
72
73 virtual Bool_t matchL1(const double eta,
74 const double phi,
75 const std::string &l1item,
76 const double DelR = 0.2) const = 0;
77
78 virtual Bool_t matchDimuon(const TLorentzVector& muon1,
79 const TLorentzVector& muon2,
80 const std::string& chain,
81 std::pair<Bool_t, Bool_t>& result1,
82 std::pair<Bool_t, Bool_t>& result2,
83 const Double_t& mindelR = 0.1) = 0;
84
85 virtual Bool_t isPassedRerun(const std::string& trigger) const = 0;
86
87 };
88
89}
90
91#endif
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
#define ASG_TOOL_INTERFACE(CLASSNAME)
virtual Bool_t matchL2CB(const xAOD::Muon *mu, const std::string &chain, const double DelR=0.2) const =0
virtual StatusCode initialize(void)=0
virtual Bool_t match(const xAOD::Muon *mu, const std::string &chain, const double mindelR=0.1) const =0
virtual Bool_t matchL1(const xAOD::Muon *mu, const std::string &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 Bool_t match(const double eta, const double phi, const std::string &chain, const double mindelR=0.1) const =0
virtual Bool_t matchL1(const double eta, const double phi, const std::string &l1item, const double DelR=0.2) const =0
virtual Bool_t isPassedRerun(const std::string &trigger) const =0
virtual Double_t minDelRL1(const xAOD::Muon *mu, const std::string &l1item, const double DelR=0.2) const =0
virtual Double_t minDelR(const xAOD::Muon *mu, const std::string &chain, const double mindelR=0.1) 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, const std::string &l1item, const std::string &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