ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Calorimeter
CaloRec
src
CaloThinCellsBySamplingAlg.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-2026 CERN for the benefit of the ATLAS collaboration.
4
*/
11
12
13
#ifndef CALOREC_CALOTHINCELLSBYSAMPLINGALG_H
14
#define CALOREC_CALOTHINCELLSBYSAMPLINGALG_H
15
16
17
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
18
#include "
CaloEvent/CaloCellContainer.h
"
19
#include "
xAODCaloEvent/CaloClusterContainer.h
"
20
#include "
Identifier/IdentifierHash.h
"
21
#include "
StoreGate/ReadHandleKey.h
"
22
#include "
StoreGate/ThinningHandleKey.h
"
23
#include <vector>
24
25
26
class
CaloCell_ID
;
27
28
32
class
CaloThinCellsBySamplingAlg
:
public
AthReentrantAlgorithm
33
{
34
public
:
35
using
AthReentrantAlgorithm::AthReentrantAlgorithm;
36
37
41
virtual
StatusCode
initialize
()
override
;
42
43
48
virtual
StatusCode
execute
(
const
EventContext& ctx)
const override
;
49
50
51
private
:
55
StatusCode
decodeSamplings
();
56
57
59
StringProperty
m_streamName
60
{
this
,
"StreamName"
,
""
,
"Name of the stream being thinned"
};
61
63
SG::ThinningHandleKey<CaloCellContainer>
m_cells
64
{
this
,
"Cells"
,
"AllCalo"
,
"Cell container to thin."
};
65
66
StringArrayProperty
m_samplingNames
67
{
this
,
"SamplingCellsName"
, {},
68
"List of names of samplings for which cells should be saved"
};
69
71
std::vector<IdentifierHash>
m_cellHashes
;
72
74
const
CaloCell_ID
*
m_caloID
{};
75
};
76
77
78
#endif
// not CALOREC_CALOTHINCELLSBYSAMPLINGALG_H
AthReentrantAlgorithm.h
CaloCellContainer.h
CaloClusterContainer.h
IdentifierHash.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
CaloCell_ID
Helper class for offline cell identifiers.
Definition
CaloCell_ID.h:34
CaloThinCellsBySamplingAlg
Thin calorimeter cells by sampling.
Definition
CaloThinCellsBySamplingAlg.h:33
CaloThinCellsBySamplingAlg::m_streamName
StringProperty m_streamName
Name of the stream being thinned.
Definition
CaloThinCellsBySamplingAlg.h:60
CaloThinCellsBySamplingAlg::m_caloID
const CaloCell_ID * m_caloID
Calo ID helper.
Definition
CaloThinCellsBySamplingAlg.h:74
CaloThinCellsBySamplingAlg::decodeSamplings
StatusCode decodeSamplings()
Decode the provided list of calorimeter samplings.
Definition
CaloThinCellsBySamplingAlg.cxx:57
CaloThinCellsBySamplingAlg::m_samplingNames
StringArrayProperty m_samplingNames
Definition
CaloThinCellsBySamplingAlg.h:67
CaloThinCellsBySamplingAlg::m_cells
SG::ThinningHandleKey< CaloCellContainer > m_cells
Cell container to thin.
Definition
CaloThinCellsBySamplingAlg.h:64
CaloThinCellsBySamplingAlg::m_cellHashes
std::vector< IdentifierHash > m_cellHashes
Decoded list of cells to save.
Definition
CaloThinCellsBySamplingAlg.h:71
CaloThinCellsBySamplingAlg::initialize
virtual StatusCode initialize() override
Gaudi initialize method.
Definition
CaloThinCellsBySamplingAlg.cxx:22
CaloThinCellsBySamplingAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Execute the algorithm.
Definition
CaloThinCellsBySamplingAlg.cxx:38
SG::ThinningHandleKey
HandleKey object for adding thinning to an object.
Definition
ThinningHandleKey.h:39
Generated on
for ATLAS Offline Software by
1.17.0