ATLAS Offline Software
AsgPhotonIsEMSelector.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // Dear emacs, this is -*-c++-*-
6 
7 #ifndef __ASGPHOTONISEMSELECTOR__
8 #define __ASGPHOTONISEMSELECTOR__
9 
22 // Atlas includes
24 #include "AsgTools/AsgTool.h"
25 // Include the interfaces
27 #include "xAODEgamma/PhotonFwd.h"
28 #include "xAODEgamma/EgammaFwd.h"
29 #include "xAODEgamma/ElectronFwd.h"
31 
32 class EventContext;
33 
34 namespace Root{
35  class TPhotonIsEMSelector;
36 }
37 
39  virtual public IAsgPhotonIsEMSelector
40 
41 {
44 
45  public:
46 
48  AsgPhotonIsEMSelector(const std::string& myname);
49 
52 
54  virtual StatusCode initialize();
55 
60  virtual const asg::AcceptInfo& getAcceptInfo() const;
61 
63  virtual asg::AcceptData accept( const xAOD::IParticle* part ) const ;
64  virtual asg::AcceptData accept( const EventContext& ctx, const xAOD::IParticle* part ) const ;
65 
67  virtual asg::AcceptData accept( const EventContext& ctx, const xAOD::Egamma* part) const ;
68 
70  virtual asg::AcceptData accept( const EventContext& ctx, const xAOD::Photon* part ) const ;
71 
73  virtual asg::AcceptData accept( const EventContext& ctx, const xAOD::Electron* part ) const ;
74 
76  virtual std::string getOperatingPointName( ) const;
77 
79  virtual StatusCode execute(const EventContext& ctx, const xAOD::Egamma* eg, unsigned int& isEM) const;
80 
81 private:
82 
84  std::string m_WorkingPoint;
85 
87  std::string m_configFile;
88 
91 
94 
96  bool m_caloOnly;
97  float m_trigEtTh;
98 
99  // Skip amboguyity check when emulating the HLT
101 
102  // remove TRT converted photon for Run-3
104 
105  // To retrieve mu
106  bool m_isMuDep = false;
107  float getMu(const EventContext& ctx) const;
108  int RunNumber(const EventContext& ctx) const;
110  "EventInfo", "EventInfo", "The event info object key" };
111 
112 }; // End: class definition
113 
114 #endif
LArG4FSStartPointFilter.part
part
Definition: LArG4FSStartPointFilter.py:21
EgammaFwd.h
AsgPhotonIsEMSelector::initialize
virtual StatusCode initialize()
AlgTool initialize method.
Definition: AsgPhotonIsEMSelector.cxx:89
IAsgEGammaIsEMSelector
Interface to tool to select photons.
Definition: IAsgEGammaIsEMSelector.h:29
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
Root
Definition: GoodRunsListSelectorTool.h:30
ParticleTest.eg
eg
Definition: ParticleTest.py:29
IAsgPhotonIsEMSelector.h
AsgPhotonIsEMSelector::m_rootTool
Root::TPhotonIsEMSelector * m_rootTool
Pointer to the underlying ROOT based tool.
Definition: AsgPhotonIsEMSelector.h:90
PhotonFwd.h
AsgPhotonIsEMSelector::m_caloOnly
bool m_caloOnly
Flag for calo only cut-base.
Definition: AsgPhotonIsEMSelector.h:96
xAOD::Egamma_v1
Definition: Egamma_v1.h:56
SG::ReadHandleKey< xAOD::EventInfo >
IAsgSelectionTool
Definition: IAsgSelectionTool.h:28
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:40
AsgPhotonIsEMSelector::m_WorkingPoint
std::string m_WorkingPoint
Working Point.
Definition: AsgPhotonIsEMSelector.h:84
Root::TPhotonIsEMSelector
Definition: TPhotonIsEMSelector.h:39
AsgPhotonIsEMSelector::m_trigEtTh
float m_trigEtTh
Definition: AsgPhotonIsEMSelector.h:97
asg::AcceptInfo
Definition: AcceptInfo.h:28
TPhotonIsEMSelector
This class in intented to apply a cut based identification criteria to photons.
AsgPhotonIsEMSelector::m_useF3core
bool m_useF3core
use f3core or f3 (default: use f3)
Definition: AsgPhotonIsEMSelector.h:93
AsgPhotonIsEMSelector::accept
virtual asg::AcceptData accept(const xAOD::IParticle *part) const
Accept with generic interface.
Definition: AsgPhotonIsEMSelector.cxx:227
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
AsgPhotonIsEMSelector::getOperatingPointName
virtual std::string getOperatingPointName() const
Method to get the operating point.
Definition: AsgPhotonIsEMSelector.cxx:281
AsgPhotonIsEMSelector::getAcceptInfo
virtual const asg::AcceptInfo & getAcceptInfo() const
Method to get the plain AcceptInfo.
Definition: AsgPhotonIsEMSelector.cxx:218
IAsgPhotonIsEMSelector
Interface to tool to select photons.
Definition: IAsgPhotonIsEMSelector.h:25
ElectronFwd.h
AsgPhotonIsEMSelector::m_configFile
std::string m_configFile
Config File.
Definition: AsgPhotonIsEMSelector.h:87
xAOD::Electron_v1
Definition: Electron_v1.h:34
EventInfo.h
AsgPhotonIsEMSelector::RunNumber
int RunNumber(const EventContext &ctx) const
Definition: AsgPhotonIsEMSelector.cxx:473
AsgPhotonIsEMSelector::m_skipAmbiguityCut
bool m_skipAmbiguityCut
Definition: AsgPhotonIsEMSelector.h:100
xAOD::Photon_v1
Definition: Photon_v1.h:37
AsgPhotonIsEMSelector::execute
virtual StatusCode execute(const EventContext &ctx, const xAOD::Egamma *eg, unsigned int &isEM) const
The basic isem.
Definition: AsgPhotonIsEMSelector.cxx:318
AsgPhotonIsEMSelector::m_EvtInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_EvtInfoKey
Definition: AsgPhotonIsEMSelector.h:109
ASG_TOOL_CLASS3
#define ASG_TOOL_CLASS3(CLASSNAME, INT1, INT2, INT3)
Definition: AsgToolMacros.h:85
AsgPhotonIsEMSelector::m_isMuDep
bool m_isMuDep
Definition: AsgPhotonIsEMSelector.h:106
AsgPhotonIsEMSelector::~AsgPhotonIsEMSelector
ASG_TOOL_CLASS3(AsgPhotonIsEMSelector, IAsgPhotonIsEMSelector, IAsgEGammaIsEMSelector, IAsgSelectionTool) public ~AsgPhotonIsEMSelector()
Default constructor.
Definition: AsgPhotonIsEMSelector.cxx:82
AsgPhotonIsEMSelector::m_removeTRTConversion
bool m_removeTRTConversion
Definition: AsgPhotonIsEMSelector.h:103
AsgTool.h
asg::AcceptData
Definition: AcceptData.h:30
AsgPhotonIsEMSelector::getMu
float getMu(const EventContext &ctx) const
Definition: AsgPhotonIsEMSelector.cxx:464
AsgPhotonIsEMSelector
Photon isEM selector.
Definition: AsgPhotonIsEMSelector.h:41