ATLAS Offline Software
ZeeVertexRefittingTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // EGVertexRefittingTool.h, (c) ATLAS Detector software
7 // author: ioannis.nomidis@cern.ch
9 
15 #ifndef DERIVATIONFRAMEWORK_ZEEVERTEXREFITTINGTOOL_H
16 #define DERIVATIONFRAMEWORK_ZEEVERTEXREFITTINGTOOL_H
17 
18 #include <string>
19 #include <vector>
20 
24 #include "GaudiKernel/ToolHandle.h"
27 
31 
33 
34 namespace DerivationFramework {
35 
36  class ZeeVertexRefittingTool : public ExpressionParserUser<AthAlgTool>, public IAugmentationTool {
37  public:
38  ZeeVertexRefittingTool(const std::string& t, const std::string& n, const IInterface* p);
39 
40  StatusCode initialize() override;
41  StatusCode finalize() override;
42  StatusCode addBranches() const override;
43 
44  private:
45  std::string m_expression;
46  float m_massCut;
47 
48  SG::ReadHandleKey<xAOD::VertexContainer> m_primaryVertexKey{this, "PVContainerName", "PrimaryVertices", "" };
49  SG::ReadHandleKey<xAOD::ElectronContainer> m_electronKey { this, "ElectronContainerName", "Electrons", "" };
50  SG::WriteHandleKey<xAOD::VertexContainer> m_refitpvKey{this, "RefittedPVContainerName", "HggPrimaryVertices", "" };
51  SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey { this, "EventInfoKey", "EventInfo", "" };
52 
53  std::vector<unsigned int> m_MCSamples;
54 
55  ToolHandle < Analysis::PrimaryVertexRefitter > m_pvrefitter{this, "PrimaryVertexRefitterTool", "Analysis::PrimaryVertexRefitter"};
56 
57  StatusCode makeZeePairs( const xAOD::ElectronContainer *particles, std::vector<std::vector<unsigned int> > &ZeePairs) const;
58  };
59 }
60 
61 #endif // DERIVATIONFRAMEWORK_ZEEVERTEXREFITTINGTOOL_H
DerivationFramework::ZeeVertexRefittingTool
Definition: ZeeVertexRefittingTool.h:36
IAugmentationTool.h
ExpressionParserUser.h
DerivationFramework::ZeeVertexRefittingTool::addBranches
StatusCode addBranches() const override
Pass the thinning service
Definition: ZeeVertexRefittingTool.cxx:72
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
PrimaryVertexRefitter.h
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
DerivationFramework::IAugmentationTool
Definition: IAugmentationTool.h:24
DerivationFramework::ZeeVertexRefittingTool::ZeeVertexRefittingTool
ZeeVertexRefittingTool(const std::string &t, const std::string &n, const IInterface *p)
Definition: ZeeVertexRefittingTool.cxx:31
DerivationFramework::ZeeVertexRefittingTool::m_refitpvKey
SG::WriteHandleKey< xAOD::VertexContainer > m_refitpvKey
Definition: ZeeVertexRefittingTool.h:50
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
DerivationFramework::ZeeVertexRefittingTool::m_pvrefitter
ToolHandle< Analysis::PrimaryVertexRefitter > m_pvrefitter
Definition: ZeeVertexRefittingTool.h:55
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
DerivationFramework::ZeeVertexRefittingTool::m_massCut
float m_massCut
Definition: ZeeVertexRefittingTool.h:46
ElectronContainer.h
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
DerivationFramework::ZeeVertexRefittingTool::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition: ZeeVertexRefittingTool.h:51
DerivationFramework::ZeeVertexRefittingTool::m_primaryVertexKey
SG::ReadHandleKey< xAOD::VertexContainer > m_primaryVertexKey
Definition: ZeeVertexRefittingTool.h:48
DerivationFramework::ZeeVertexRefittingTool::m_electronKey
SG::ReadHandleKey< xAOD::ElectronContainer > m_electronKey
Definition: ZeeVertexRefittingTool.h:49
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
ExpressionParserUser
Definition: ExpressionParserUser.h:107
EventInfo.h
VertexContainer.h
LArG4FSStartPointFilter.particles
list particles
Definition: LArG4FSStartPointFilter.py:84
DerivationFramework::ZeeVertexRefittingTool::makeZeePairs
StatusCode makeZeePairs(const xAOD::ElectronContainer *particles, std::vector< std::vector< unsigned int > > &ZeePairs) const
Definition: ZeeVertexRefittingTool.cxx:203
ExpressionParser.h
DerivationFramework::ZeeVertexRefittingTool::initialize
StatusCode initialize() override
Definition: ZeeVertexRefittingTool.cxx:44
DerivationFramework::ZeeVertexRefittingTool::finalize
StatusCode finalize() override
Definition: ZeeVertexRefittingTool.cxx:66
DerivationFramework::ZeeVertexRefittingTool::m_MCSamples
std::vector< unsigned int > m_MCSamples
Definition: ZeeVertexRefittingTool.h:53
DerivationFramework::ZeeVertexRefittingTool::m_expression
std::string m_expression
Definition: ZeeVertexRefittingTool.h:45