ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
DerivationFramework
DerivationFrameworkMCTruth
DerivationFrameworkMCTruth
GenericTruthThinning.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// GenericTruthThinning.h, (c) ATLAS Detector software
8
9
#ifndef DERIVATIONFRAMEWORK_GENERICTRUTHTHINNING_H
10
#define DERIVATIONFRAMEWORK_GENERICTRUTHTHINNING_H
11
12
#include <string>
13
#include <atomic>
14
15
#include "
AthenaBaseComps/AthAlgTool.h
"
16
#include "
DerivationFrameworkInterfaces/IThinningTool.h
"
17
#include "
DerivationFrameworkMCTruth/DecayGraphHelper.h
"
18
#include "
xAODTruth/TruthVertexContainer.h
"
19
#include "
xAODTruth/TruthEventContainer.h
"
20
#include "
StoreGate/ThinningHandleKey.h
"
21
#include "GaudiKernel/ToolHandle.h"
22
23
#include "
ExpressionEvaluation/ExpressionParserUser.h
"
24
25
namespace
DerivationFramework
{
26
27
enum
EGenericTruthThinningParser
{
kGenericTruthThinningPartParser
,
kGenericTruthThinningParserNum
};
28
class
GenericTruthThinning
:
public
extends<ExpressionParserUser<AthAlgTool,kGenericTruthThinningParserNum>, IThinningTool> {
29
public
:
30
GenericTruthThinning
(
const
std::string& t,
const
std::string& n,
const
IInterface* p);
31
virtual
~GenericTruthThinning
();
32
virtual
StatusCode
initialize
()
override
;
33
virtual
StatusCode
finalize
()
override
;
34
virtual
StatusCode
doThinning
(
const
EventContext& ctx)
const override
;
35
36
private
:
37
mutable
std::atomic<unsigned int>
m_ntotvtx
,
m_ntotpart
,
m_npassvtx
,
m_npasspart
;
38
StringProperty
m_streamName
39
{
this
,
"StreamName"
,
""
,
"Name of the stream being thinned"
};
40
SG::ThinningHandleKey<xAOD::TruthParticleContainer>
m_particlesKey
41
{
this
,
"ParticlesKey"
,
"TruthParticles"
,
""
};
42
SG::ThinningHandleKey<xAOD::TruthVertexContainer>
m_verticesKey
43
{
this
,
"VerticesKey"
,
"TruthVertices"
,
""
};
44
std::string
m_partString
;
45
//std::string m_vtxString;
46
bool
m_preserveDescendants
;
47
bool
m_preserveGeneratorDescendants
;
48
bool
m_preserveAncestors
;
49
bool
m_tauHandling
;
50
};
51
}
52
53
#endif
// DERIVATIONFRAMEWORK_GENERICTRUTHTHINNING_H
AthAlgTool.h
DecayGraphHelper.h
ExpressionParserUser.h
IThinningTool.h
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
TruthEventContainer.h
TruthVertexContainer.h
DerivationFramework::GenericTruthThinning::doThinning
virtual StatusCode doThinning(const EventContext &ctx) const override
Definition
GenericTruthThinning.cxx:84
DerivationFramework::GenericTruthThinning::m_npasspart
std::atomic< unsigned int > m_npasspart
Definition
GenericTruthThinning.h:37
DerivationFramework::GenericTruthThinning::m_streamName
StringProperty m_streamName
Definition
GenericTruthThinning.h:39
DerivationFramework::GenericTruthThinning::m_preserveGeneratorDescendants
bool m_preserveGeneratorDescendants
Definition
GenericTruthThinning.h:47
DerivationFramework::GenericTruthThinning::m_ntotpart
std::atomic< unsigned int > m_ntotpart
Definition
GenericTruthThinning.h:37
DerivationFramework::GenericTruthThinning::m_preserveAncestors
bool m_preserveAncestors
Definition
GenericTruthThinning.h:48
DerivationFramework::GenericTruthThinning::m_verticesKey
SG::ThinningHandleKey< xAOD::TruthVertexContainer > m_verticesKey
Definition
GenericTruthThinning.h:43
DerivationFramework::GenericTruthThinning::m_partString
std::string m_partString
Definition
GenericTruthThinning.h:44
DerivationFramework::GenericTruthThinning::m_particlesKey
SG::ThinningHandleKey< xAOD::TruthParticleContainer > m_particlesKey
Definition
GenericTruthThinning.h:41
DerivationFramework::GenericTruthThinning::~GenericTruthThinning
virtual ~GenericTruthThinning()
Definition
GenericTruthThinning.cxx:47
DerivationFramework::GenericTruthThinning::initialize
virtual StatusCode initialize() override
Definition
GenericTruthThinning.cxx:51
DerivationFramework::GenericTruthThinning::finalize
virtual StatusCode finalize() override
Definition
GenericTruthThinning.cxx:74
DerivationFramework::GenericTruthThinning::m_ntotvtx
std::atomic< unsigned int > m_ntotvtx
Definition
GenericTruthThinning.h:37
DerivationFramework::GenericTruthThinning::GenericTruthThinning
GenericTruthThinning(const std::string &t, const std::string &n, const IInterface *p)
Definition
GenericTruthThinning.cxx:23
DerivationFramework::GenericTruthThinning::m_preserveDescendants
bool m_preserveDescendants
Definition
GenericTruthThinning.h:46
DerivationFramework::GenericTruthThinning::m_npassvtx
std::atomic< unsigned int > m_npassvtx
Definition
GenericTruthThinning.h:37
DerivationFramework::GenericTruthThinning::m_tauHandling
bool m_tauHandling
Definition
GenericTruthThinning.h:49
SG::ThinningHandleKey
HandleKey object for adding thinning to an object.
Definition
ThinningHandleKey.h:39
DerivationFramework
THE reconstruction tool.
Definition
CascadeTools.h:16
DerivationFramework::EGenericTruthThinningParser
EGenericTruthThinningParser
Definition
GenericTruthThinning.h:27
DerivationFramework::kGenericTruthThinningParserNum
@ kGenericTruthThinningParserNum
Definition
GenericTruthThinning.h:27
DerivationFramework::kGenericTruthThinningPartParser
@ kGenericTruthThinningPartParser
Definition
GenericTruthThinning.h:27
Generated on
for ATLAS Offline Software by
1.17.0