ATLAS Offline Software
Loading...
Searching...
No Matches
jTowerMakerFromJfexTowers.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 jTowerMakerFromJfexTowers_H
6#define jTowerMakerFromJfexTowers_H
7
8// Athena/Gaudi
13#include "jTowerBuilder.h"
14
15#include <string>
16
17class CaloIdManager;
18
19namespace LVL1 {
20
22{
23 public:
24
25 jTowerMakerFromJfexTowers(const std::string& name, ISvcLocator* pSvcLocator);
27
28 virtual StatusCode initialize() override;
29 virtual StatusCode execute(const EventContext& ctx) const override;
30
31
32 private:
33
34 // Decoded input data
35 SG::ReadHandleKey<xAOD::jFexTowerContainer> m_DataTowerKey {this, "InputDataTowers", "L1_jFexDataTowers", "jfexTowers (use L1_jFexEmulatedTowers for built from SC, or L1_jFexDataTowers for efex readout"};
36
37 //Emulated input data
38 // the use-case for this second input tower collection is in monitoring when running in prescaled readout mode
39 // we want to use the input data readout when we have it, but otherwise fallback to the calo readout
40 SG::ReadHandleKey<xAOD::jFexTowerContainer> m_EmulTowerKey {this, "InputEmulatedTowers", "L1_jFexEmulatedTowers", "If specified, will fallback to this collection of towers if the first collection is incomplete/empty"};
41
42 //Gaudi properties
43 Gaudi::Property<bool> m_UseEmulated {this, "UseEmulated", true, "It switches off the CaloCell -> Jtower path. It uses instead L1_jFexDataTowers and L1_jFexEmulatedTowers "};
44 Gaudi::Property<bool> m_isMC {this, "IsMC", false, "Is used to know when we run on data. So L1_jFexDataTowers can be present"};
45
46
47 // SG object for the jFEX simulation input
48 SG::WriteHandleKey<LVL1::jTowerContainer> m_jTowerContainerSGKey {this, "MyJTowers", "jTowerContainer", "MyJTowers"};
49
50 ToolHandle<IjTowerBuilder> m_jTowerBuilderTool {this, "jTowerBuilderTool", "LVL1::jTowerBuilder", "Tool that builds jTowers for simulation"};
51 ToolHandle<IjSuperCellTowerMapper> m_jSuperCellTowerMapperTool {this, "jSuperCellTowerMapperTool", "LVL1::jSuperCellTowerMapper", "Tool that maps supercells to jTowers"};
52};
53
54} // end of LVL1 namespace
55#endif
An algorithm that can be simultaneously executed in multiple threads.
This class initializes the Calo (LAr and Tile) offline identifiers.
jTowerMakerFromJfexTowers(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< xAOD::jFexTowerContainer > m_EmulTowerKey
SG::WriteHandleKey< LVL1::jTowerContainer > m_jTowerContainerSGKey
SG::ReadHandleKey< xAOD::jFexTowerContainer > m_DataTowerKey
virtual StatusCode initialize() override
virtual StatusCode execute(const EventContext &ctx) const override
ToolHandle< IjSuperCellTowerMapper > m_jSuperCellTowerMapperTool
ToolHandle< IjTowerBuilder > m_jTowerBuilderTool
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.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...