ATLAS Offline Software
Loading...
Searching...
No Matches
jTowerMakerFromJfexTowers.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef jTowerMakerFromJfexTowers_H
6#define jTowerMakerFromJfexTowers_H
7
8// STL
9#include <string>
10
11// Athena/Gaudi
16#include "jTowerBuilder.h"
18
19class CaloIdManager;
20
21namespace LVL1 {
22
24{
25 public:
26
27 jTowerMakerFromJfexTowers(const std::string& name, ISvcLocator* pSvcLocator);
29
30 virtual StatusCode initialize() override;
31 virtual StatusCode execute(const EventContext& ctx) const override;
32
33
34 private:
35
36 // Decoded input data
37 SG::ReadHandleKey<xAOD::jFexTowerContainer> m_DataTowerKey {this, "InputDataTowers", "L1_jFexDataTowers", "jfexTowers (use L1_jFexEmulatedTowers for built from SC, or L1_jFexDataTowers for efex readout"};
38
39 //Emulated input data
40 // the use-case for this second input tower collection is in monitoring when running in prescaled readout mode
41 // we want to use the input data readout when we have it, but otherwise fallback to the calo readout
42 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"};
43
44 //Gaudi properties
45 Gaudi::Property<bool> m_UseEmulated {this, "UseEmulated", true, "It switches off the CaloCell -> Jtower path. It uses instead L1_jFexDataTowers and L1_jFexEmulatedTowers "};
46 Gaudi::Property<bool> m_isMC {this, "IsMC", false, "Is used to know when we run on data. So L1_jFexDataTowers can be present"};
47
48
49 // SG object for the jFEX simulation input
50 SG::WriteHandleKey<LVL1::jTowerContainer> m_jTowerContainerSGKey {this, "MyJTowers", "jTowerContainer", "MyJTowers"};
51
52 ToolHandle<IjTowerBuilder> m_jTowerBuilderTool {this, "jTowerBuilderTool", "LVL1::jTowerBuilder", "Tool that builds jTowers for simulation"};
53 ToolHandle<IjSuperCellTowerMapper> m_jSuperCellTowerMapperTool {this, "jSuperCellTowerMapperTool", "LVL1::jSuperCellTowerMapper", "Tool that maps supercells to jTowers"};
54};
55
56} // end of LVL1 namespace
57#endif
This file defines the class for a collection of AttributeLists where each one is associated with a ch...
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...