ATLAS Offline Software
PhysicsAnalysis
DerivationFramework
DerivationFrameworkCalo
DerivationFrameworkCalo
CaloClusterThinning.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
// CaloClusterThinning.h, (c) ATLAS Detector software
8
9
#ifndef DERIVATIONFRAMEWORK_CALO_CALOCLUSTERPARTICLETHINNING_H
10
#define DERIVATIONFRAMEWORK_CALO_CALOCLUSTERPARTICLETHINNING_H
11
12
#include <atomic>
13
#include <string>
14
15
#include "
AthenaBaseComps/AthAlgTool.h
"
16
#include "
DerivationFrameworkInterfaces/IThinningTool.h
"
17
#include "
StoreGate/ReadHandleKey.h
"
18
#include "
StoreGate/ThinningHandleKey.h
"
19
#include "
xAODCaloEvent/CaloCluster.h
"
20
#include "
xAODCaloEvent/CaloClusterContainer.h
"
21
#include "
xAODEgamma/EgammaContainer.h
"
22
23
#include "
ExpressionEvaluation/ExpressionParserUser.h
"
24
25
namespace
DerivationFramework
{
26
27
class
CaloClusterThinning
28
:
public
extends<ExpressionParserUser<AthAlgTool>, IThinningTool>
29
{
30
public
:
31
CaloClusterThinning
(
const
std::string&
t
,
32
const
std::string&
n
,
33
const
IInterface*
p
);
34
virtual
~CaloClusterThinning
();
35
virtual
StatusCode
initialize
()
override
;
36
virtual
StatusCode
finalize
()
override
;
37
virtual
StatusCode
doThinning
()
const override
;
38
39
private
:
40
mutable
std::atomic<unsigned int>
m_ntot
,
m_ntotTopo
,
m_npass
,
41
m_npassTopo
;
//, m_ntotFrwd, m_npassFrwd;
42
bool
m_run_calo
,
m_run_topo
;
43
44
StringProperty
m_streamName
{
this
,
45
"StreamName"
,
46
""
,
47
"Name of the stream being thinned"
};
48
49
SG::ReadHandleKey<xAOD::IParticleContainer>
50
m_sgKey
{
this
,
"SGKey"
,
""
,
"SG key of particle container to thin"
};
51
52
SG::ThinningHandleKey<xAOD::CaloClusterContainer>
53
m_CaloClSGKey
{
this
,
"CaloClCollectionSGKey"
,
""
,
""
};
54
SG::ThinningHandleKey<xAOD::CaloClusterContainer>
55
m_TopoClSGKey
{
this
,
"TopoClCollectionSGKey"
,
""
,
""
};
56
// std::string m_FrwdClSGKey;
57
std::string
m_selectionString
;
58
float
m_coneSize
;
59
60
StatusCode
setClustersMask
(std::vector<bool>&
mask
,
61
const
xAOD::IParticle
*
particle
,
62
const
xAOD::CaloClusterContainer
* cps,
63
bool
is_muons,
64
bool
is_egamma,
65
bool
is_track)
const
;
66
StatusCode
particleCluster
(std::vector<bool>&
mask
,
67
const
xAOD::IParticle
*
particle
,
68
const
xAOD::CaloClusterContainer
* cps,
69
bool
is_muons,
70
bool
is_egamma,
71
bool
is_tau)
const
;
72
};
73
}
74
75
#endif // DERIVATIONFRAMEWORK_EGAMMACALOCLUSTERPARTIGLETHINNING_H
DerivationFramework::CaloClusterThinning::setClustersMask
StatusCode setClustersMask(std::vector< bool > &mask, const xAOD::IParticle *particle, const xAOD::CaloClusterContainer *cps, bool is_muons, bool is_egamma, bool is_track) const
Definition:
CaloClusterThinning.cxx:325
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition:
ParticleHypothesis.h:76
DerivationFramework::CaloClusterThinning::m_streamName
StringProperty m_streamName
Definition:
CaloClusterThinning.h:44
SG::ThinningHandleKey
HandleKey object for adding thinning to an object.
Definition:
ThinningHandleKey.h:38
ExpressionParserUser.h
DerivationFramework::CaloClusterThinning::m_TopoClSGKey
SG::ThinningHandleKey< xAOD::CaloClusterContainer > m_TopoClSGKey
Definition:
CaloClusterThinning.h:55
IThinningTool.h
read_hist_ntuple.t
t
Definition:
read_hist_ntuple.py:5
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition:
StoreGate/StoreGate/ReadHandleKey.h:39
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition:
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
python.utils.AtlRunQueryLookup.mask
string mask
Definition:
AtlRunQueryLookup.py:460
DerivationFramework::CaloClusterThinning::doThinning
virtual StatusCode doThinning() const override
Definition:
CaloClusterThinning.cxx:109
EgammaContainer.h
DerivationFramework::CaloClusterThinning::m_run_topo
bool m_run_topo
Definition:
CaloClusterThinning.h:42
DerivationFramework::CaloClusterThinning::initialize
virtual StatusCode initialize() override
Definition:
CaloClusterThinning.cxx:52
DerivationFramework::CaloClusterThinning::particleCluster
StatusCode particleCluster(std::vector< bool > &mask, const xAOD::IParticle *particle, const xAOD::CaloClusterContainer *cps, bool is_muons, bool is_egamma, bool is_tau) const
Definition:
CaloClusterThinning.cxx:366
python.utils.AtlRunQueryDQUtils.p
p
Definition:
AtlRunQueryDQUtils.py:210
DerivationFramework::CaloClusterThinning::m_ntotTopo
std::atomic< unsigned int > m_ntotTopo
Definition:
CaloClusterThinning.h:40
CaloCluster.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
DerivationFramework::CaloClusterThinning::m_npassTopo
std::atomic< unsigned int > m_npassTopo
Definition:
CaloClusterThinning.h:41
AthAlgTool.h
DerivationFramework::CaloClusterThinning::~CaloClusterThinning
virtual ~CaloClusterThinning()
DerivationFramework
THE reconstruction tool.
Definition:
ParticleSortingAlg.h:24
DataVector
Derived DataVector<T>.
Definition:
DataVector.h:581
DerivationFramework::CaloClusterThinning
Definition:
CaloClusterThinning.h:29
DerivationFramework::CaloClusterThinning::CaloClusterThinning
CaloClusterThinning(const std::string &t, const std::string &n, const IInterface *p)
Definition:
CaloClusterThinning.cxx:29
DerivationFramework::CaloClusterThinning::m_npass
std::atomic< unsigned int > m_npass
Definition:
CaloClusterThinning.h:40
DerivationFramework::CaloClusterThinning::finalize
virtual StatusCode finalize() override
Definition:
CaloClusterThinning.cxx:96
DerivationFramework::CaloClusterThinning::m_CaloClSGKey
SG::ThinningHandleKey< xAOD::CaloClusterContainer > m_CaloClSGKey
Definition:
CaloClusterThinning.h:53
DerivationFramework::CaloClusterThinning::m_selectionString
std::string m_selectionString
Definition:
CaloClusterThinning.h:57
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
CaloClusterContainer.h
DerivationFramework::CaloClusterThinning::m_sgKey
SG::ReadHandleKey< xAOD::IParticleContainer > m_sgKey
Definition:
CaloClusterThinning.h:50
DerivationFramework::CaloClusterThinning::m_coneSize
float m_coneSize
Definition:
CaloClusterThinning.h:58
DerivationFramework::CaloClusterThinning::m_ntot
std::atomic< unsigned int > m_ntot
Definition:
CaloClusterThinning.h:40
DerivationFramework::CaloClusterThinning::m_run_calo
bool m_run_calo
Definition:
CaloClusterThinning.h:42
Generated on Thu Nov 7 2024 21:11:24 for ATLAS Offline Software by
1.8.18