ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
Tools
McEventCollectionFilter
src
TruthClosureCheck.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRUTHCLOSURECHECK_H
6
#define TRUTHCLOSURECHECK_H
7
8
// Base class include
9
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
10
11
// Athena includes
12
#include "
StoreGate/ReadHandleKey.h
"
13
#include "
GeneratorObjects/McEventCollection.h
"
14
15
class
TruthClosureCheck
:
public
AthReentrantAlgorithm
{
16
17
public
:
18
using
AthReentrantAlgorithm::AthReentrantAlgorithm;
19
virtual
StatusCode
initialize
()
override
final
;
20
virtual
StatusCode
execute
(
const
EventContext& ctx)
const
override
final
;
21
22
private
:
23
StatusCode
sanityCheck
(
const
HepMC::GenEvent
& event)
const
;
24
StatusCode
compareGenVertex
(
const
HepMC::ConstGenVertexPtr
& origVertex,
25
const
HepMC::ConstGenVertexPtr
& resetVertex)
const
;
26
StatusCode
compareGenParticle
(
const
HepMC::ConstGenParticlePtr
& origParticle,
27
const
HepMC::ConstGenParticlePtr
& resetParticle)
const
;
28
void
printGenVertex
(
const
HepMC::ConstGenVertexPtr
& origVertex,
29
const
HepMC::ConstGenVertexPtr
& resetVertex)
const
;
30
StatusCode
compareMomenta
(
const
HepMC::FourVector
& origMomenta,
31
const
HepMC::FourVector
& resetMomenta)
const
;
32
33
SG::ReadHandleKey<McEventCollection>
m_originalMcEventCollection
{
this
,
"OriginalMcEventCollection"
,
"BeamTruthEvent"
};
34
SG::ReadHandleKey<McEventCollection>
m_resetMcEventCollection
{
this
,
"ResetMcEventCollection"
,
"NewTruthEvent"
};
35
Gaudi::Property<bool>
m_compareMomenta
{
this
,
"CompareMomenta"
,
true
};
36
double
m_momentaLimit
{0.000000000001};
37
Gaudi::Property<bool>
m_postSimulation
{
this
,
"PostSimulation"
,
false
};
38
};
39
#endif
AthReentrantAlgorithm.h
McEventCollection.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
TruthClosureCheck
Definition
TruthClosureCheck.h:15
TruthClosureCheck::compareGenVertex
StatusCode compareGenVertex(const HepMC::ConstGenVertexPtr &origVertex, const HepMC::ConstGenVertexPtr &resetVertex) const
Definition
TruthClosureCheck.cxx:86
TruthClosureCheck::m_originalMcEventCollection
SG::ReadHandleKey< McEventCollection > m_originalMcEventCollection
Definition
TruthClosureCheck.h:33
TruthClosureCheck::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition
TruthClosureCheck.cxx:205
TruthClosureCheck::compareMomenta
StatusCode compareMomenta(const HepMC::FourVector &origMomenta, const HepMC::FourVector &resetMomenta) const
Definition
TruthClosureCheck.cxx:148
TruthClosureCheck::m_momentaLimit
double m_momentaLimit
Definition
TruthClosureCheck.h:36
TruthClosureCheck::printGenVertex
void printGenVertex(const HepMC::ConstGenVertexPtr &origVertex, const HepMC::ConstGenVertexPtr &resetVertex) const
Definition
TruthClosureCheck.cxx:65
TruthClosureCheck::sanityCheck
StatusCode sanityCheck(const HepMC::GenEvent &event) const
Definition
TruthClosureCheck.cxx:33
TruthClosureCheck::initialize
virtual StatusCode initialize() override final
Definition
TruthClosureCheck.cxx:23
TruthClosureCheck::m_compareMomenta
Gaudi::Property< bool > m_compareMomenta
Definition
TruthClosureCheck.h:35
TruthClosureCheck::compareGenParticle
StatusCode compareGenParticle(const HepMC::ConstGenParticlePtr &origParticle, const HepMC::ConstGenParticlePtr &resetParticle) const
Definition
TruthClosureCheck.cxx:174
TruthClosureCheck::m_postSimulation
Gaudi::Property< bool > m_postSimulation
Definition
TruthClosureCheck.h:37
TruthClosureCheck::m_resetMcEventCollection
SG::ReadHandleKey< McEventCollection > m_resetMcEventCollection
Definition
TruthClosureCheck.h:34
HepMC::FourVector
HepMC3::FourVector FourVector
Definition
SimpleVector.h:11
HepMC::ConstGenParticlePtr
HepMC3::ConstGenParticlePtr ConstGenParticlePtr
Definition
GenParticle.h:20
HepMC::ConstGenVertexPtr
HepMC3::ConstGenVertexPtr ConstGenVertexPtr
Definition
GenVertex.h:24
HepMC::GenEvent
HepMC3::GenEvent GenEvent
Definition
GenEvent.h:39
Generated on
for ATLAS Offline Software by
1.17.0