ATLAS Offline Software
Loading...
Searching...
No Matches
BuildVertexPointingAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef PHOTONVERTEXSELECTION_BUILDVERTEXPOINTINGALG_H
6#define PHOTONVERTEXSELECTION_BUILDVERTEXPOINTINGALG_H
7
10
14
19#include <AsgTools/AsgTool.h>
21
22#include <string>
23
24
32 public:
33 BuildVertexPointingAlg(const std::string& name,
34 ISvcLocator* svcLoc = nullptr);
35 virtual StatusCode initialize();
36 virtual StatusCode execute();
37
38 private:
40 this, "PhotonContainerKey", "Photons",
41 "The input photons (or electrons) container"};
43 "EventInfo", ""};
45 this, "PointingVertexContainerKey", "PhotonPointingVertices", ""};
46
47 // additional information written to the vertex as decorations
60
61 // decoration read from Photon by xAOD::PVHelpers::getZCommonAndError function
62 // the user should not change them
71
72 ToolHandle<IAsgSelectionTool> m_selectionTool{
73 this, "selectionTool", "CP::AsgPtEtaSelectionTool/PhotonSelectionTool",
74 "the selection tool we apply to photons to compute pointing variables"};
75
76 ToolHandle<IAsgSelectionTool> m_goodPhotonSelectionTool{
77 this, "goodPhotonSelectionTool", "",
78 "the selection tool to count good photons"};
79
80 Gaudi::Property<float> m_convPtCut {this, "convPtCut", 2E3, "the conversion pt cut"};
81 Gaudi::Property<int> m_nphotons_to_use {this, "nphotonsToUse", -1, "the number of photons to use for the pointing computation"};
82
83 void selectPhotons(const xAOD::EgammaContainer& original_photons,
84 ConstDataVector<DataVector<xAOD::Egamma>>& photons_selected) const;
85
86
87};
88
89#endif // PHOTONVERTEXSELECTION_BUILDVERTEXPOINTINGALG_H
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
SG::ReadDecorHandleKey< xAOD::EgammaContainer > m_photon_errz_key
virtual StatusCode initialize()
void selectPhotons(const xAOD::EgammaContainer &original_photons, ConstDataVector< DataVector< xAOD::Egamma > > &photons_selected) const
SG::ReadDecorHandleKey< xAOD::EgammaContainer > m_photon_zvertex_key
ToolHandle< IAsgSelectionTool > m_goodPhotonSelectionTool
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_photons_px_key
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_photon_links_key
Gaudi::Property< int > m_nphotons_to_use
Gaudi::Property< float > m_convPtCut
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_z_common_nphotons_key
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_nphotons_good_key
SG::WriteHandleKey< xAOD::VertexContainer > m_pointingVertexContainerKey
SG::ReadHandleKey< xAOD::EgammaContainer > m_photonContainerKey
BuildVertexPointingAlg(const std::string &name, ISvcLocator *svcLoc=nullptr)
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_photons_py_key
ToolHandle< IAsgSelectionTool > m_selectionTool
SG::ReadDecorHandleKey< xAOD::EgammaContainer > m_photon_HPV_zvertex_key
SG::ReadDecorHandleKey< xAOD::EgammaContainer > m_photon_HPV_errz_key
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_photons_pz_key
DataVector adapter that acts like it holds const pointers.
Derived DataVector<T>.
Definition DataVector.h:795
the (new) base class for EventLoop algorithms
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
EgammaContainer_v1 EgammaContainer
Definition of the current "egamma container version".