ATLAS Offline Software
Loading...
Searching...
No Matches
Egamma1_LArStrip_Fex_RowAware.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3 */
4
5#ifndef GLOBALSIM_EGAMMA1_LARSTRIP_FEX_ROWAWARE_H
6#define GLOBALSIM_EGAMMA1_LARSTRIP_FEX_ROWAWARE_H
7
8/*
9 This Algorithm finds and outputs CaloCell in the neighborhoods of eFEX
10 RoIs. These neighhoods are used to run various Algorithms in GlobalSim.
11*/
12
13#include "ICaloCellsProducer.h"
14#include "eFexRoIAlgTool.h"
18
20#include "../IO/eEmNbhoodTOB.h"
21
24
25#include <vector>
26
27namespace GlobalSim {
28
29
31
32 public:
33
34 Egamma1_LArStrip_Fex_RowAware(const std::string& name, ISvcLocator* pSvcLocator);
35
36 virtual StatusCode initialize() override;
37 virtual StatusCode execute(const EventContext& ) const override;
38
39 private:
40
42 this,
43 "EventInfo",
44 "EventInfo",
45 "EventInfo name"};
46
47 // tool to get a vector of cal cells
48 ToolHandle<ICaloCellsProducer> m_cellProducer{this,
49 "caloCellProducer",
50 "EMB1CellFromCaloCells",
51 "AlgTool to provide a vector of CaloCells"
52 };
53
54 // tool to get eFexRoIs
55 ToolHandle<eFexRoIAlgTool>
57 "roiAlgTool",
58 "EMB1CellFromCaloCells",
59 "AlgTool to provide a vector<const xAOD::eFexEMRoI*>"};
60
64 this,
65 "totalNoiseKey",
66 "totalNoise",
67 "SG Key of CaloNoise data object"};
68
69 Gaudi::Property<bool> m_dump {
70 this,
71 "dump",
72 false,
73 "flag to enable dumps"};
74
75 Gaudi::Property<bool> m_dumpTerse {
76 this,
77 "dumpTerse",
78 false,
79 "flag to enable terse dumps"};
80
83 this,
84 "stripNeighborhoodTOBKey",
85 "stripNeighborhoodTOBContainer",
86 "location to write strip neighborhoods of EFex RoIs, with the associated TOBs"};
87
88 StatusCode
89 findNeighborhoods_RowAware(const std::vector<const xAOD::eFexEMRoI*>&,
90 const std::vector<const CaloCell*>&,
92 const CaloNoise&) const;
93
94 StatusCode
96 const std::vector<const CaloCell*>&,
98 const CaloNoise&) const;
99
100 StatusCode
102 const std::vector<const CaloCell*>&,
103 const CaloCell*&) const;
104 };
105
106}
107#endif
108
109
110
111
An algorithm that can be simultaneously executed in multiple threads.
Data object for each calorimeter readout cell.
Definition CaloCell.h:57
SG::ReadCondHandleKey< CaloNoise > m_totalNoiseKey
Key to the total noise used for each CaloCell.
SG::WriteHandleKey< IOBitwise::eEmNbhoodTOBContainer > m_neighKey
virtual StatusCode execute(const EventContext &) const override
StatusCode findNeighborhood_RowAware(const xAOD::eFexEMRoI *, const std::vector< const CaloCell * > &, IOBitwise::eEmNbhoodTOBContainer &, const CaloNoise &) const
StatusCode findClosestCellToRoI(const xAOD::eFexEMRoI *, const std::vector< const CaloCell * > &, const CaloCell *&) const
StatusCode findNeighborhoods_RowAware(const std::vector< const xAOD::eFexEMRoI * > &, const std::vector< const CaloCell * > &, IOBitwise::eEmNbhoodTOBContainer &, const CaloNoise &) const
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Egamma1_LArStrip_Fex_RowAware(const std::string &name, ISvcLocator *pSvcLocator)
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
DataVector< GlobalSim::IOBitwise::eEmNbhoodTOB > eEmNbhoodTOBContainer
AlgTool that to test whether expected the TIP values generated by data supplied by eEmMultTestBench c...
eFexEMRoI_v1 eFexEMRoI
Define the latest version of the eFexEMRoI class.
Definition eFexEMRoI.h:17