ATLAS Offline Software
Loading...
Searching...
No Matches
EMPIDBuilder.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 EGAMMATOOLS_EMPIDBUILDER_H
6#define EGAMMATOOLS_EMPIDBUILDER_H
15#include "egammaBaseTool.h"
16
17#include "GaudiKernel/EventContext.h"
18#include "GaudiKernel/ToolHandle.h"
19
24
25#include <string>
26#include <vector>
27
28class EMPIDBuilder final : public egammaBaseTool
29{
30public:
32 EMPIDBuilder(const std::string& type,
33 const std::string& name,
34 const IInterface* parent);
35
37 virtual ~EMPIDBuilder() = default;
38
40 virtual StatusCode initialize() override final;
42 virtual StatusCode execute(const EventContext& ctx,
43 xAOD::Egamma*) const override final;
44
48 this,
49 "electronIsEMselectors",
50 {},
51 "The selectors that we need to apply to the Electron object"
52 };
53 Gaudi::Property<std::vector<std::string>> m_electronIsEMselectorResultNames{
54 this,
55 "electronIsEMselectorResultNames",
56 {},
57 "The selector result names"
58 };
59
60 ToolHandleArray<IAsgElectronLikelihoodTool> m_electronLHselectors{
61 this,
62 "electronLHselectors",
63 {},
64 "The selectors that we need to apply to the LH electron object"
65 };
66 Gaudi::Property<std::vector<std::string>> m_electronLHselectorResultNames{
67 this,
68 "electronLHselectorResultNames",
69 {},
70 "The selector result names"
71 };
72
73 ToolHandleArray<IAsgSelectionTool> m_genericIsEMselectors{
74 this,
75 "genericIsEMselectors",
76 {},
77 "The selectors that we need to apply to the generic object"
78 };
79
80 Gaudi::Property<std::vector<std::string>> m_genericIsEMselectorResultNames{
81 this,
82 "genericIsEMselectorResultNames",
83 {},
84 "The selector result names"
85 };
86
87 ToolHandleArray<IAsgPhotonIsEMSelector> m_photonIsEMselectors{
88 this,
89 "photonIsEMselectors",
90 {},
91 "The selectors that we need to apply to the pothon object"
92 };
93 Gaudi::Property<std::vector<std::string>> m_photonIsEMselectorResultNames{
94 this,
95 "photonIsEMselectorResultNames",
96 {},
97 "The selector result names"
98 };
99
100 ToolHandle<ILumiBlockMuTool> m_lumiBlockMuTool{
101 this,
102 "LuminosityTool",
103 "LumiBlockMuTool/LumiBlockMuTool",
104 "Luminosity Tool"
105 };
106
107 Gaudi::Property<std::string> m_LHValueName{ this,
108 "LHValueName",
109 "LHValue",
110 "The LH Value name" };
111
112 Gaudi::Property<bool> m_UselumiBlockMuTool{
113 this,
114 "UseLuminosityTool",
115 false,
116 "Use Luminosity Tool instead of value stored in xAOD"
117 };
118};
119
120#endif
121
ToolHandle< ILumiBlockMuTool > m_lumiBlockMuTool
ToolHandleArray< IAsgPhotonIsEMSelector > m_photonIsEMselectors
Gaudi::Property< std::vector< std::string > > m_electronIsEMselectorResultNames
virtual ~EMPIDBuilder()=default
Destructor.
EMPIDBuilder(const std::string &type, const std::string &name, const IInterface *parent)
Default constructor.
ToolHandleArray< IAsgElectronIsEMSelector > m_electronIsEMselectors
Handle to the selectors.
Gaudi::Property< std::vector< std::string > > m_genericIsEMselectorResultNames
Gaudi::Property< std::vector< std::string > > m_photonIsEMselectorResultNames
Gaudi::Property< bool > m_UselumiBlockMuTool
Gaudi::Property< std::string > m_LHValueName
Gaudi::Property< std::vector< std::string > > m_electronLHselectorResultNames
ToolHandleArray< IAsgElectronLikelihoodTool > m_electronLHselectors
virtual StatusCode initialize() override final
initialize method
virtual StatusCode execute(const EventContext &ctx, xAOD::Egamma *) const override final
standard execute method
ToolHandleArray< IAsgSelectionTool > m_genericIsEMselectors
Interface to tool to select electrons.
egammaBaseTool(const std::string &type, const std::string &name, const IInterface *parent)
Default constructor.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
#define private