ATLAS Offline Software
Calorimeter
CaloClusterCorrection
src
CaloClusterRemoveDuplicates.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 CALOCLUSTERCORRECTION_CALOCLUSTERREMOVEDUPLICATES_H
6
#define CALOCLUSTERCORRECTION_CALOCLUSTERREMOVEDUPLICATES_H
7
8
/**************************************************************************
9
10
NAME: CaloClusterRemoveDuplicates.h
11
AUTHORS: M. Cooke
12
13
CREATED: May, 2008
14
15
PURPOSE: Address duplicate cluster problem (pathology under investigation)
16
Searches for pairs within a window and eliminates one w/ lower Et
17
18
Base class: CaloClusterCollectionProcessor
19
20
***************************************************************************/
21
22
// INCLUDE HEADER FILES:
23
#include "
CaloUtils/CaloClusterCollectionProcessor.h
"
24
#include "
xAODCaloEvent/CaloCluster.h
"
25
#include "
AthenaBaseComps/AthAlgTool.h
"
26
27
class
CaloClusterRemoveDuplicates
:
public
AthAlgTool
,
virtual
public
CaloClusterCollectionProcessor
28
{
29
30
public
:
31
32
// Constructor
33
CaloClusterRemoveDuplicates
(
const
std::string&
type
,
34
const
std::string&
name
,
35
const
IInterface*
parent
);
36
37
using
CaloClusterCollectionProcessor::execute
;
// xxx temporary
38
StatusCode
execute
(
const
EventContext& ctx,
39
xAOD::CaloClusterContainer
* clusColl)
const override
;
40
41
private
:
42
43
int
compare
(
xAOD::CaloCluster
* clus1 ,
xAOD::CaloCluster
* clus2 )
const
;
44
45
CaloClusterRemoveDuplicates
();
46
47
// If two cluster are within deta_cut and dphi_cut, lower ET one will be removed
48
float
m_deta_cut
;
49
float
m_dphi_cut
;
50
};
51
52
#endif
CaloClusterRemoveDuplicates::execute
StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *clusColl) const override
Execute on an entire collection of clusters.
Definition:
CaloClusterRemoveDuplicates.cxx:41
CaloClusterCollectionProcessor::execute
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *collection) const =0
Execute on an entire collection of clusters.
CaloClusterCollectionProcessor
Definition:
CaloClusterCollectionProcessor.h:32
CaloClusterRemoveDuplicates::compare
int compare(xAOD::CaloCluster *clus1, xAOD::CaloCluster *clus2) const
Definition:
CaloClusterRemoveDuplicates.cxx:89
CaloClusterRemoveDuplicates::m_dphi_cut
float m_dphi_cut
Definition:
CaloClusterRemoveDuplicates.h:61
CaloClusterRemoveDuplicates::m_deta_cut
float m_deta_cut
Definition:
CaloClusterRemoveDuplicates.h:60
xAOD::CaloCluster_v1
Description of a calorimeter cluster.
Definition:
CaloCluster_v1.h:59
CaloCluster.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
CaloClusterRemoveDuplicates::CaloClusterRemoveDuplicates
CaloClusterRemoveDuplicates()
test_pyathena.parent
parent
Definition:
test_pyathena.py:15
DataVector
Derived DataVector<T>.
Definition:
DataVector.h:794
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
CaloClusterRemoveDuplicates
Definition:
CaloClusterRemoveDuplicates.py:1
CaloClusterCollectionProcessor.h
Base class for cluster processing tools called from CaloClusterMaker.
python.CaloScaleNoiseConfig.type
type
Definition:
CaloScaleNoiseConfig.py:78
AthAlgTool
Definition:
AthAlgTool.h:26
Generated on Sun Dec 22 2024 21:07:52 for ATLAS Offline Software by
1.8.18