ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
egamma
egammaCaloTools
src
egammaCaloClusterSelector.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef EGAMMACALOTOOLS_EGAMMACALOCLUSTERSELECTOR_H
5
#define EGAMMACALOTOOLS_EGAMMACALOCLUSTERSELECTOR_H
6
7
// Package includes
8
#include "
egammaInterfaces/IegammaCaloClusterSelector.h
"
9
#include "
CaloEvent/CaloCellContainer.h
"
10
#include "
egammaCaloUtils/egammaMiddleShape.h
"
11
#include "
egammaInterfaces/IegammaCheckEnergyDepositTool.h
"
12
#include "
egammaInterfaces/IegammaIso.h
"
13
// Framework includes
14
#include "
AthenaBaseComps/AthAlgTool.h
"
15
16
// STL includes
17
#include <string>
18
47
class
egammaCaloClusterSelector
:
public
extends<AthAlgTool, IegammaCaloClusterSelector> {
48
public
:
49
egammaCaloClusterSelector
(
const
std::string&
type
,
const
std::string& name,
const
IInterface* parent);
50
51
virtual
StatusCode
initialize
()
override
final
;
52
virtual
StatusCode
finalize
()
override
final
;
53
55
bool
passSelection
(
const
xAOD::CaloCluster
* cluster,
56
const
CaloDetDescrManager
& cmgr)
const
override
final
;
57
58
private
:
60
SG::ReadHandleKey<CaloCellContainer>
m_cellsKey
{
this
,
61
"CellContainerName"
,
"AllCalo"
,
62
"Names of containers which contain cells"
};
63
65
ToolHandle<IegammaCheckEnergyDepositTool>
m_egammaCheckEnergyDepositTool
{
this
,
66
"egammaCheckEnergyDepositTool"
,
""
,
67
"Optional tool that performs basic checks of viability of cluster"
};
68
70
ToolHandle<IegammaIso>
m_HadronicLeakageTool
{
this
,
71
"HadronicLeakageTool"
,
"egammaIso"
,
72
"Handle of the EMCaloIsolationTool for Hadronic leakage"
};
73
74
Gaudi::Property<double>
m_ClusterEtCut
{
this
,
75
"ClusterEtCut"
, 0.0,
"Cut on cluster EM+Had Et"
};
76
77
Gaudi::Property<double>
m_EMEtCut
{
this
,
78
"EMEtCut"
, 0.0,
"EM Et cut"
};
79
80
Gaudi::Property<double>
m_EMEtSplittingFraction
{
this
,
81
"EMEtSplittingFraction"
, 1.0,
"Apply only fraction of EMEt cut for crack region"
};
82
83
Gaudi::Property<double>
m_EMFCut
{
this
,
84
"EMFCut"
, 0.0,
"Cut on cluster EM fraction"
};
85
86
static
constexpr
double
RETA_DEFAULT_NO_CUT
= 0.0;
87
Gaudi::Property<double>
m_RetaCut
{
this
,
88
"RetaCut"
,
RETA_DEFAULT_NO_CUT
,
"Cut on cluster Reta"
};
89
90
static
constexpr
double
HAD_LEAK_DEFAULT_NO_CUT
= 999.;
91
Gaudi::Property<double>
m_HadLeakCut
{
this
,
92
"HadLeakCut"
,
HAD_LEAK_DEFAULT_NO_CUT
,
"Cut on cluster Hadronic Leakage"
};
93
94
// these variables are set at initialize based on the configuration
95
bool
m_doReta
{
false
};
96
bool
m_doHadLeak
{
false
};
97
};
98
99
#endif
// RECONSTRUCTION/EGAMMA/EGAMMACALOTOOLS_EGAMMACALOCLUSTERSELECTOR_H
AthAlgTool.h
CaloCellContainer.h
IegammaCaloClusterSelector.h
IegammaCheckEnergyDepositTool.h
IegammaIso.h
CaloDetDescrManager
This class provides the client interface for accessing the detector description information common to...
Definition
CaloDetDescrManager.h:469
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
egammaCaloClusterSelector::m_HadronicLeakageTool
ToolHandle< IegammaIso > m_HadronicLeakageTool
Tool for hadronic leakage calculation; onlud used if cuts needing are defined.
Definition
egammaCaloClusterSelector.h:70
egammaCaloClusterSelector::m_RetaCut
Gaudi::Property< double > m_RetaCut
Definition
egammaCaloClusterSelector.h:87
egammaCaloClusterSelector::initialize
virtual StatusCode initialize() override final
Definition
egammaCaloClusterSelector.cxx:22
egammaCaloClusterSelector::m_EMEtSplittingFraction
Gaudi::Property< double > m_EMEtSplittingFraction
Definition
egammaCaloClusterSelector.h:80
egammaCaloClusterSelector::finalize
virtual StatusCode finalize() override final
Definition
egammaCaloClusterSelector.cxx:45
egammaCaloClusterSelector::m_HadLeakCut
Gaudi::Property< double > m_HadLeakCut
Definition
egammaCaloClusterSelector.h:91
egammaCaloClusterSelector::m_doReta
bool m_doReta
Definition
egammaCaloClusterSelector.h:95
egammaCaloClusterSelector::m_cellsKey
SG::ReadHandleKey< CaloCellContainer > m_cellsKey
Name of the cluster intput collection.
Definition
egammaCaloClusterSelector.h:60
egammaCaloClusterSelector::HAD_LEAK_DEFAULT_NO_CUT
static constexpr double HAD_LEAK_DEFAULT_NO_CUT
Definition
egammaCaloClusterSelector.h:90
egammaCaloClusterSelector::egammaCaloClusterSelector
egammaCaloClusterSelector(const std::string &type, const std::string &name, const IInterface *parent)
Definition
egammaCaloClusterSelector.cxx:15
egammaCaloClusterSelector::m_doHadLeak
bool m_doHadLeak
Definition
egammaCaloClusterSelector.h:96
egammaCaloClusterSelector::m_egammaCheckEnergyDepositTool
ToolHandle< IegammaCheckEnergyDepositTool > m_egammaCheckEnergyDepositTool
Pointer to the egammaCheckEnergyDepositTool.
Definition
egammaCaloClusterSelector.h:65
egammaCaloClusterSelector::passSelection
bool passSelection(const xAOD::CaloCluster *cluster, const CaloDetDescrManager &cmgr) const override final
pass the selection described in the class egammaCaloClusterSelector
Definition
egammaCaloClusterSelector.cxx:50
egammaCaloClusterSelector::m_EMEtCut
Gaudi::Property< double > m_EMEtCut
Definition
egammaCaloClusterSelector.h:77
egammaCaloClusterSelector::m_EMFCut
Gaudi::Property< double > m_EMFCut
Definition
egammaCaloClusterSelector.h:83
egammaCaloClusterSelector::RETA_DEFAULT_NO_CUT
static constexpr double RETA_DEFAULT_NO_CUT
Definition
egammaCaloClusterSelector.h:86
egammaCaloClusterSelector::m_ClusterEtCut
Gaudi::Property< double > m_ClusterEtCut
Definition
egammaCaloClusterSelector.h:74
egammaMiddleShape.h
xAOD::CaloCluster
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
Definition
Event/xAOD/xAODCaloEvent/xAODCaloEvent/CaloCluster.h:19
type
Generated on
for ATLAS Offline Software by
1.17.0