ATLAS Offline Software
Loading...
Searching...
No Matches
TruthClosureCheck.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 TRUTHCLOSURECHECK_H
6#define TRUTHCLOSURECHECK_H
7
8// Base class include
10
11// Athena includes
14
16
17public:
18 TruthClosureCheck(const std::string& name, ISvcLocator* pSvcLocator);
19 ~TruthClosureCheck() = default;
20 virtual StatusCode initialize() override final;
21 virtual StatusCode execute() override final;
22
23 private:
24 StatusCode sanityCheck(const HepMC::GenEvent& event) const;
25#ifdef HEPMC3
26 StatusCode compareGenVertex(const HepMC::ConstGenVertexPtr& origVertex,
27 const HepMC::ConstGenVertexPtr& resetVertex) const;
28 StatusCode compareGenParticle(const HepMC::ConstGenParticlePtr& origParticle,
29 const HepMC::ConstGenParticlePtr& resetParticle) const;
30 void printGenVertex(const HepMC::ConstGenVertexPtr& origVertex,
31 const HepMC::ConstGenVertexPtr& resetVertex) const;
32#else
33 StatusCode compareGenVertex(const HepMC::GenVertex& origVertex,
34 const HepMC::GenVertex& resetVertex) const;
35 StatusCode compareGenParticle(const HepMC::GenParticle& origParticle,
36 const HepMC::GenParticle& resetParticle) const;
37 void printGenVertex(const HepMC::GenVertex& origVertex,
38 const HepMC::GenVertex& resetVertex) const;
39#endif
40 StatusCode compareMomenta(const HepMC::FourVector& origMomenta,
41 const HepMC::FourVector& resetMomenta) const;
42
45 bool m_compareMomenta{true};
46 double m_momentaLimit{0.000000000001};
47 bool m_postSimulation{false};
48};
49#endif
Property holding a SG store/key/clid from which a ReadHandle is made.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Property holding a SG store/key/clid from which a ReadHandle is made.
SG::ReadHandleKey< McEventCollection > m_originalMcEventCollection
StatusCode compareMomenta(const HepMC::FourVector &origMomenta, const HepMC::FourVector &resetMomenta) const
TruthClosureCheck(const std::string &name, ISvcLocator *pSvcLocator)
StatusCode compareGenVertex(const HepMC::GenVertex &origVertex, const HepMC::GenVertex &resetVertex) const
StatusCode sanityCheck(const HepMC::GenEvent &event) const
StatusCode compareGenParticle(const HepMC::GenParticle &origParticle, const HepMC::GenParticle &resetParticle) const
virtual StatusCode execute() override final
void printGenVertex(const HepMC::GenVertex &origVertex, const HepMC::GenVertex &resetVertex) const
virtual StatusCode initialize() override final
~TruthClosureCheck()=default
SG::ReadHandleKey< McEventCollection > m_resetMcEventCollection
const GenParticle * ConstGenParticlePtr
Definition GenParticle.h:38
const HepMC::GenVertex * ConstGenVertexPtr
Definition GenVertex.h:60
#define private