ATLAS Offline Software
Loading...
Searching...
No Matches
TrigEgammaMatchingTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TrigEgammaMatchingTool_H
6#define TrigEgammaMatchingTool_H
7
12#include "AsgTools/AsgTool.h"
13#include "AsgTools/ToolHandle.h"
14#include <iostream>
15
16
17
18namespace Trig{
21 public virtual ITrigEgammaMatchingTool
22{
25
26 public:
27
28 TrigEgammaMatchingTool( const std::string& name );
29
31
32 virtual StatusCode initialize() override;
33
34
36 virtual bool match(const xAOD::Egamma *,const std::string&,const HLT::TriggerElement*&) override;
38 virtual bool match(const xAOD::Egamma *,const std::string&) override;
40 virtual bool matchHLT(const xAOD::Egamma *,const std::string&) override;
42 virtual const xAOD::Egamma* closestHLTObject(const xAOD::Egamma *,const std::string&) override;
43 double dR(const double, const double, const double, const double);
44 double m_dR;
45 double m_dRL1;
46 protected:
47 private:
48 ToolHandle<Trig::TrigDecisionTool> m_trigDecTool;
49
50 template<class T> const T* getFeature(const HLT::TriggerElement* te);
51 template<class T> bool ancestorPassed(const HLT::TriggerElement* te);
52 bool matchHLTElectron(const xAOD::Electron *,const std::string&,const HLT::TriggerElement*&);
53 bool matchHLTPhoton(const xAOD::Photon *,const std::string&,const HLT::TriggerElement*&);
54 bool matchHLTCalo(const xAOD::Egamma *,const std::string&,const HLT::TriggerElement*&);
55 bool matchL2Electron(const xAOD::Electron *,const std::string&,const HLT::TriggerElement*&);
56 bool matchL2Photon(const xAOD::Photon *,const std::string&,const HLT::TriggerElement*&);
57 bool matchL2Calo(const xAOD::Egamma *,const std::string&,const HLT::TriggerElement*&);
58 bool matchL1(const xAOD::Egamma *,const std::string&,const HLT::TriggerElement*&);
59
60};
61}
62#endif
#define ASG_TOOL_CLASS2(CLASSNAME, INT1, INT2)
#define ASG_TOOL_INTERFACE(CLASSNAME)
TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It...
bool matchHLTElectron(const xAOD::Electron *, const std::string &, const HLT::TriggerElement *&)
bool matchL2Electron(const xAOD::Electron *, const std::string &, const HLT::TriggerElement *&)
TrigEgammaMatchingTool(const std::string &name)
virtual const xAOD::Egamma * closestHLTObject(const xAOD::Egamma *, const std::string &) override
Egamma trigger matching to HLT Electron/Photon only – returns nearest object.
const T * getFeature(const HLT::TriggerElement *te)
virtual bool match(const xAOD::Egamma *, const std::string &, const HLT::TriggerElement *&) override
Egamma trigger matching which returns TE.
bool matchHLTCalo(const xAOD::Egamma *, const std::string &, const HLT::TriggerElement *&)
bool ancestorPassed(const HLT::TriggerElement *te)
bool matchL2Calo(const xAOD::Egamma *, const std::string &, const HLT::TriggerElement *&)
virtual bool matchHLT(const xAOD::Egamma *, const std::string &) override
Egamma trigger matching to HLT Electron/Photon Only.
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
bool matchL2Photon(const xAOD::Photon *, const std::string &, const HLT::TriggerElement *&)
bool matchHLTPhoton(const xAOD::Photon *, const std::string &, const HLT::TriggerElement *&)
ToolHandle< Trig::TrigDecisionTool > m_trigDecTool
bool matchL1(const xAOD::Egamma *, const std::string &, const HLT::TriggerElement *&)
double dR(const double, const double, const double, const double)
Base class for dual-use tools that provide file metadata access.
The common trigger namespace for trigger analysis tools.
Egamma_v1 Egamma
Definition of the current "egamma version".
Definition Egamma.h:17
Photon_v1 Photon
Definition of the current "egamma version".
Electron_v1 Electron
Definition of the current "egamma version".