ATLAS Offline Software
CaloThinCellsByClusterAlg.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 /*
3  * Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration.
4  */
13 #ifndef CALOREC_CALOTHINCELLSBYCLUSTER_H
14 #define CALOREC_CALOTHINCELLSBYCLUSTER_H
15 
16 
23 #include <vector>
24 
25 
34 {
35 public:
36  using AthReentrantAlgorithm::AthReentrantAlgorithm;
37 
38 
42  virtual StatusCode initialize() override;
43 
44 
49  virtual StatusCode execute(const EventContext& ctx) const override;
50 
51 
52 private:
57 
58 
60  StringProperty m_streamName
61  { this, "StreamName", "", "Name of the stream being thinned" };
62 
65  { this, "Cells", "AllCalo", "Cell container to thin." };
66 
69  { this, "Clusters", "", "Container of clusters for which cells should be saved." };
70 
73  this, "CaloClusterCellLinks", "",
74  "Container of CaloClusterCellLinks corresponding to the clusters for which we save cells."};
75 
76  StringArrayProperty m_samplingNames
77  { this, "SamplingCellsName", {},
78  "List of names of samplings for which all cluster cells in a rectangular window should be saved" };
79 
80  SG::ReadCondHandleKey<CaloDetDescrManager> m_caloMgrKey{this,"CaloDetDescrManager", "CaloDetDescrManager"};
81 
83  std::vector<int> m_validSamplings;
84 };
85 
86 
87 #endif // not CALOREC_CALOTHINCELLSBYCLUSTER_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
CaloThinCellsByClusterAlg::initialize
virtual StatusCode initialize() override
Gaudi initialize method.
Definition: CaloThinCellsByClusterAlg.cxx:21
SG::ThinningHandleKey< CaloCellContainer >
CaloThinCellsByClusterAlg::m_clusters
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_clusters
Clusters to read.
Definition: CaloThinCellsByClusterAlg.h:69
SG::ReadHandleKey< xAOD::CaloClusterContainer >
CaloDetDescrManager.h
Definition of CaloDetDescrManager.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
CaloThinCellsByClusterAlg::m_samplingNames
StringArrayProperty m_samplingNames
Definition: CaloThinCellsByClusterAlg.h:77
CaloThinCellsByClusterAlg::decodeSamplings
StatusCode decodeSamplings()
Decode the provided list of calorimeter samplings.
Definition: CaloThinCellsByClusterAlg.cxx:129
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CaloThinCellsByClusterAlg::m_cells
SG::ThinningHandleKey< CaloCellContainer > m_cells
Cell container to thin.
Definition: CaloThinCellsByClusterAlg.h:65
CaloThinCellsByClusterAlg
Thin calorimeter cells not associated with clusters.
Definition: CaloThinCellsByClusterAlg.h:34
AthReentrantAlgorithm.h
CaloThinCellsByClusterAlg::m_clusterCellLinks
SG::ThinningHandleKey< CaloClusterCellLinkContainer > m_clusterCellLinks
Calo Cell links for the clusters we keep cells for.
Definition: CaloThinCellsByClusterAlg.h:72
CaloCellContainer.h
SG::ReadCondHandleKey< CaloDetDescrManager >
CaloThinCellsByClusterAlg::m_streamName
StringProperty m_streamName
Name of the stream being thinned.
Definition: CaloThinCellsByClusterAlg.h:61
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
CaloClusterContainer.h
CaloThinCellsByClusterAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Execute the algorithm.
Definition: CaloThinCellsByClusterAlg.cxx:41
CaloThinCellsByClusterAlg::m_validSamplings
std::vector< int > m_validSamplings
Decoded list of samplings.
Definition: CaloThinCellsByClusterAlg.h:83
CaloThinCellsByClusterAlg::m_caloMgrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
Definition: CaloThinCellsByClusterAlg.h:80