ATLAS Offline Software
Loading...
Searching...
No Matches
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-2019 CERN for the benefit of the ATLAS collaboration.
4 */
11
12
13#ifndef CALOREC_CALOTHINCELLSBYSAMPLINGALG_H
14#define CALOREC_CALOTHINCELLSBYSAMPLINGALG_H
15
16
23#include <vector>
24
25
26class CaloCell_ID;
27
28
33{
34public:
35 using AthReentrantAlgorithm::AthReentrantAlgorithm;
36
37
41 virtual StatusCode initialize() override;
42
43
48 virtual StatusCode execute(const EventContext& ctx) const override;
49
50
51private:
55 StatusCode decodeSamplings();
56
57
59 StringProperty m_streamName
60 { this, "StreamName", "", "Name of the stream being thinned" };
61
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
75};
76
77
78#endif // not CALOREC_CALOTHINCELLSBYSAMPLINGALG_H
Property holding a SG store/key/clid from which a ReadHandle is made.
HandleKey object for adding thinning to an object.
An algorithm that can be simultaneously executed in multiple threads.
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
Thin calorimeter cells by sampling.
StringProperty m_streamName
Name of the stream being thinned.
const CaloCell_ID * m_caloID
Calo ID helper.
StatusCode decodeSamplings()
Decode the provided list of calorimeter samplings.
SG::ThinningHandleKey< CaloCellContainer > m_cells
Cell container to thin.
std::vector< IdentifierHash > m_cellHashes
Decoded list of cells to save.
virtual StatusCode initialize() override
Gaudi initialize method.
virtual StatusCode execute(const EventContext &ctx) const override
Execute the algorithm.
HandleKey object for adding thinning to an object.