ATLAS Offline Software
CaloTopoClusterSplitter.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 //Dear emacs, this is -*-c++-*-
6 
7 #ifndef CALOTOPOCLUSTERSPLITTER_H
8 #define CALOTOPOCLUSTERSPLITTER_H
9 
39 class Identifier;
40 
42 
44 
46 
48 {
49  public:
50 
51  CaloTopoClusterSplitter(const std::string& type, const std::string& name,
52  const IInterface* parent);
53 
55  virtual StatusCode execute(const EventContext& ctx,
56  xAOD::CaloClusterContainer* theClusters) const override;
57  virtual StatusCode initialize() override;
58 
59  private:
60 
62 
87  std::string m_neighborOption;
89 
100 
108  int m_nCells;
109 
115  float m_minEnergy;
116 
136 
150 
164  std::vector<std::string> m_samplingNames;
165 
171  std::set<int> m_validSamplings;
172 
179 
186 
192  std::vector<bool> m_useSampling;
193 
201  std::vector<std::string> m_secondarySamplingNames;
202 
209 
216 
223 
230  std::vector<bool> m_useSecondarySampling;
231 
236 
240  bool m_absOpt;
241 
242 
245 
246  Gaudi::Property<bool> m_useGPUCriteria {this, "UseGPUCriteria", false, "Adopt a set of criteria that is consistent with the GPU implementation."};
247 };
248 
249 #endif // CALOTOPOCLUSTERSPLITTER_H
CaloTopoClusterSplitter::m_minSecondarySampling
int m_minSecondarySampling
smallest valid secondary sampling found
Definition: CaloTopoClusterSplitter.h:215
LArNeighbours::neighbourOption
neighbourOption
Definition: LArNeighbours.h:12
CaloTopoClusterSplitter::m_calo_id
const CaloCell_ID * m_calo_id
Definition: CaloTopoClusterSplitter.h:61
CaloTopoClusterSplitter::m_emShowerScale
float m_emShowerScale
typical em shower scale to use for distance criteria in shared cells
Definition: CaloTopoClusterSplitter.h:149
CaloTopoClusterSplitter::m_shareBorderCells
bool m_shareBorderCells
share cells at the border between two local maxima
Definition: CaloTopoClusterSplitter.h:135
CaloClusterCollectionProcessor::execute
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *collection) const =0
Execute on an entire collection of clusters.
CaloTopoClusterSplitter::initialize
virtual StatusCode initialize() override
Definition: CaloTopoClusterSplitter.cxx:94
CaloClusterCollectionProcessor
Definition: CaloClusterCollectionProcessor.h:32
CaloTopoClusterSplitter
topological cluster splitter.
Definition: CaloTopoClusterSplitter.h:48
CaloTopoClusterSplitter::m_useSampling
std::vector< bool > m_useSampling
flag for all samplings - true for used ones, false for excluded ones
Definition: CaloTopoClusterSplitter.h:192
CaloTopoClusterSplitter::m_treatL1PredictedCellsAsGood
bool m_treatL1PredictedCellsAsGood
if set to true treat cells with a dead OTX which can be predicted by L1 trigger info as good instead ...
Definition: CaloTopoClusterSplitter.h:235
CaloTopoClusterSplitter::m_maxSampling
int m_maxSampling
largest valid sampling found
Definition: CaloTopoClusterSplitter.h:185
CaloTopoClusterSplitter::m_validSamplings
std::set< int > m_validSamplings
actual set of samplings to be used
Definition: CaloTopoClusterSplitter.h:171
CaloTopoClusterSplitter::m_validSecondarySamplings
std::set< int > m_validSecondarySamplings
actual set of secondary samplings to be used
Definition: CaloTopoClusterSplitter.h:208
CaloTopoClusterSplitter::m_useSecondarySampling
std::vector< bool > m_useSecondarySampling
flag for all secondary samplings - true for used ones, false for excluded ones
Definition: CaloTopoClusterSplitter.h:230
CaloCell_ID.h
CaloTopoClusterSplitter::m_hashMin
IdentifierHash m_hashMin
Definition: CaloTopoClusterSplitter.h:243
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CaloTopoClusterSplitter::m_secondarySamplingNames
std::vector< std::string > m_secondarySamplingNames
vector of names of the secondary calorimeter samplings to consider.
Definition: CaloTopoClusterSplitter.h:201
test_pyathena.parent
parent
Definition: test_pyathena.py:15
CaloTopoClusterSplitter::m_useGPUCriteria
Gaudi::Property< bool > m_useGPUCriteria
Definition: CaloTopoClusterSplitter.h:246
CaloCell_ID
Helper class for offline cell identifiers.
Definition: CaloCell_ID.h:34
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
CaloTopoClusterSplitter::execute
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *theClusters) const override
Execute on an entire collection of clusters.
Definition: CaloTopoClusterSplitter.cxx:309
CaloTopoClusterSplitter::m_samplingNames
std::vector< std::string > m_samplingNames
vector of names of the calorimeter samplings to consider.
Definition: CaloTopoClusterSplitter.h:164
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
IdentifierHash.h
CaloClusterCollectionProcessor.h
Base class for cluster processing tools called from CaloClusterMaker.
CaloTopoClusterSplitter::m_minEnergy
float m_minEnergy
local maxima need at least this energy content
Definition: CaloTopoClusterSplitter.h:115
CaloTopoClusterSplitter::m_maxSecondarySampling
int m_maxSecondarySampling
largest valid secondary sampling found
Definition: CaloTopoClusterSplitter.h:222
CaloTopoClusterSplitter::m_neighborOption
std::string m_neighborOption
type of neighbor relations to use.
Definition: CaloTopoClusterSplitter.h:87
CaloTopoClusterSplitter::m_restrictHECIWandFCalNeighbors
bool m_restrictHECIWandFCalNeighbors
if set to true limit the neighbors in HEC IW and FCal2&3.
Definition: CaloTopoClusterSplitter.h:99
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
CaloTopoClusterSplitter::m_absOpt
bool m_absOpt
if set to true, splitter only looks at absolute value of Energy in order to identify potential seed c...
Definition: CaloTopoClusterSplitter.h:240
CaloTopoClusterSplitter::m_nCells
int m_nCells
local maxima need at least this number of neighbors to become seeds
Definition: CaloTopoClusterSplitter.h:108
AthAlgTool
Definition: AthAlgTool.h:26
IdentifierHash
Definition: IdentifierHash.h:38
CaloTopoClusterSplitter::m_nOption
LArNeighbours::neighbourOption m_nOption
Definition: CaloTopoClusterSplitter.h:88
CaloTopoClusterSplitter::m_hashMax
IdentifierHash m_hashMax
Definition: CaloTopoClusterSplitter.h:244
CaloTopoClusterSplitter::m_minSampling
int m_minSampling
smallest valid sampling found
Definition: CaloTopoClusterSplitter.h:178
CaloTopoClusterSplitter::CaloTopoClusterSplitter
CaloTopoClusterSplitter(const std::string &type, const std::string &name, const IInterface *parent)
Definition: CaloTopoClusterSplitter.cxx:47