ATLAS Offline Software
TrigTauMatching.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGTAUMATCHING_TRIGTAUMATCHING_H
6 #define TRIGTAUMATCHING_TRIGTAUMATCHING_H
7 
8 
10 
11 #include <AsgTools/AsgTool.h>
12 #include <AsgTools/ToolHandle.h>
13 
15 
16 namespace Trig
17 {
19  virtual public ITrigTauMatchingTool,
20  virtual public asg::AsgTool
21  {
24 
25  public:
27  TrigTauMatchingTool(const std::string &name);
28 
29  virtual ~TrigTauMatchingTool() {};
30 
31  virtual StatusCode initialize(void);
32 
33  // Check if an HLT trigger is passed, and match a tau to a HLT tau
34  // associated with the chain within a cone of dR < deltaRCut
35  virtual bool match(const xAOD::TauJet *p,
36  const std::string &trigger,
37  double deltaRCut = 0.2);
38 
39  // Check if a trigger is passed and match a reco tau to an HLT tau in
40  // a given container within a cone of dR < deltaRCut
41  virtual bool match(const xAOD::TauJet *p,
42  const std::string &trigger,
43  const xAOD::TauJetContainer *c,
44  double deltaRCut = 0.2);
45 
46  // Check if an L1 trigger is passed, and match a tau to a L1 EmTau (with
47  // TauRoIWord) within a cone of dR < deltaRCut
48  virtual bool matchL1(const xAOD::TauJet *p,
49  const std::string &trigger,
51  double deltaRCut = 0.3);
52 
53  // Check if an HLT trigger is passed, and return the associated HLT
54  // TauJet matching the given tau.
55  virtual const xAOD::TauJet *
56  getHLT(const xAOD::TauJet *p,
57  const std::string &trigger,
58  double deltaRCut = 0.2);
59 
60  // Check if an HLT trigger is passed, get the HLT associated HLT tau
61  // matching the given tau, and return the EmTauRoI associated with
62  // it.
63  virtual const xAOD::EmTauRoI *
65  const std::string &trigger,
67  double deltaRCut = 0.3);
68 
69  // Get the trigger condition that the tool currently uses
70  virtual unsigned int getCondition();
71  private:
72  ToolHandle<Trig::TrigDecisionTool> m_trigDecTool;
73  std::string m_hltLabel;
74  std::string m_l1Label;
76 
77  private:
78  static const std::string kDefaultHLTLabel;
79  static const std::string kDefaultL1Label;
80  };
81 }
82 
83 #endif
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
Trig::TrigTauMatchingTool::matchL1
virtual bool matchL1(const xAOD::TauJet *p, const std::string &trigger, const xAOD::EmTauRoIContainer *c, double deltaRCut=0.3)
Definition: TrigTauMatching.cxx:68
Trig::ITrigTauMatchingTool
Definition: ITrigTauMatching.h:16
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
Trig::TrigTauMatchingTool::getL1FromHLT
virtual const xAOD::EmTauRoI * getL1FromHLT(const xAOD::TauJet *p, const std::string &trigger, const xAOD::EmTauRoIContainer *c, double deltaRCut=0.3)
Definition: TrigTauMatching.cxx:144
Trig
The common trigger namespace for trigger analysis tools.
Definition: CaloTowerVecMon.h:44
Trig::TrigTauMatchingTool::~TrigTauMatchingTool
virtual ~TrigTauMatchingTool()
Definition: TrigTauMatching.h:29
Trig::TrigTauMatchingTool
Definition: TrigTauMatching.h:21
Trig::TrigTauMatchingTool::kDefaultHLTLabel
static const std::string kDefaultHLTLabel
Definition: TrigTauMatching.h:78
Trig::TrigTauMatchingTool::m_hltLabel
std::string m_hltLabel
Definition: TrigTauMatching.h:73
TrigDecisionTool.h
Trig::TrigTauMatchingTool::getCondition
virtual unsigned int getCondition()
Definition: TrigTauMatching.cxx:164
Trig::TrigTauMatchingTool::initialize
virtual StatusCode initialize(void)
Dummy implementation of the initialisation function.
Definition: TrigTauMatching.cxx:33
xAOD::EmTauRoI_v2
Class describing a LVL1 em/tau region of interest.
Definition: EmTauRoI_v2.h:35
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trig::TrigTauMatchingTool::m_l1Label
std::string m_l1Label
Definition: TrigTauMatching.h:74
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
Trig::TrigTauMatchingTool::match
virtual bool match(const xAOD::TauJet *p, const std::string &trigger, double deltaRCut=0.2)
Definition: TrigTauMatching.cxx:42
Trig::TrigTauMatchingTool::kDefaultL1Label
static const std::string kDefaultL1Label
Definition: TrigTauMatching.h:79
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
ITrigTauMatching.h
Trig::TrigTauMatchingTool::TrigTauMatchingTool
TrigTauMatchingTool(const std::string &name)
Proper constructor for Athena.
Definition: TrigTauMatching.cxx:15
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
Trig::TrigTauMatchingTool::getHLT
virtual const xAOD::TauJet * getHLT(const xAOD::TauJet *p, const std::string &trigger, double deltaRCut=0.2)
Definition: TrigTauMatching.cxx:99
ToolHandle.h
AsgTool.h
python.compressB64.c
def c
Definition: compressB64.py:93
PhysDESDM_Quirks.trigger
trigger
Definition: PhysDESDM_Quirks.py:27
Trig::TrigTauMatchingTool::m_allowResurrectedDecision
bool m_allowResurrectedDecision
Definition: TrigTauMatching.h:75
Trig::TrigTauMatchingTool::m_trigDecTool
ToolHandle< Trig::TrigDecisionTool > m_trigDecTool
Definition: TrigTauMatching.h:72