ATLAS Offline Software
eTowerBuilder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
6 #ifndef ETOWERBUILDER_H
7 #define ETOWERBUILDER_H
8 
9 // STL
10 #include <string>
11 
12 // Athena/Gaudi
17 #include "L1CaloFEXSim/eTower.h"
19 
20 class CaloIdManager;
21 
22 namespace LVL1 {
23 
24 class eTowerBuilder: public AthAlgTool, virtual public IeTowerBuilder {
25 
26  public:
27  eTowerBuilder(const std::string& type,const std::string& name,const IInterface* parent);
28  virtual ~eTowerBuilder() = default;
29 
30  virtual void init(std::unique_ptr<eTowerContainer> & eTowerContainerRaw) const override;
31  virtual void execute(std::unique_ptr<eTowerContainer> & eTowerContainerRaw) const override;
32  virtual void reset() const override;
33 
34  private:
35 
36  virtual void BuildEMBeTowers(std::unique_ptr<eTowerContainer> & eTowerContainerRaw) const override;
37  virtual void BuildTRANSeTowers(std::unique_ptr<eTowerContainer> & eTowerContainerRaw) const override;
38  virtual void BuildEMEeTowers(std::unique_ptr<eTowerContainer> & eTowerContainerRaw) const override;
39  virtual void BuildHECeTowers(std::unique_ptr<eTowerContainer> & eTowerContainerRaw) const override;
40  virtual void BuildAllTowers(std::unique_ptr<eTowerContainer> & eTowerContainerRaw) const override;
41  virtual void BuildSingleTower(std::unique_ptr<eTowerContainer> & eTowerContainerRawRaw,float eta, float phi, float keybase, int posneg) const override;
42 
43 };
44 
45 } // end of LVL1 namespace
46 #endif
LVL1::eTowerBuilder::reset
virtual void reset() const override
Definition: eTowerBuilder.cxx:33
eTowerContainer.h
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
LVL1::eTowerBuilder::BuildEMEeTowers
virtual void BuildEMEeTowers(std::unique_ptr< eTowerContainer > &eTowerContainerRaw) const override
Definition: eTowerBuilder.cxx:80
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
LVL1::eTowerBuilder::BuildAllTowers
virtual void BuildAllTowers(std::unique_ptr< eTowerContainer > &eTowerContainerRaw) const override
Definition: eTowerBuilder.cxx:159
LVL1::eTowerBuilder::eTowerBuilder
eTowerBuilder(const std::string &type, const std::string &name, const IInterface *parent)
Definition: eTowerBuilder.cxx:20
LVL1::eTowerBuilder::BuildTRANSeTowers
virtual void BuildTRANSeTowers(std::unique_ptr< eTowerContainer > &eTowerContainerRaw) const override
Definition: eTowerBuilder.cxx:65
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::eTowerBuilder::execute
virtual void execute(std::unique_ptr< eTowerContainer > &eTowerContainerRaw) const override
Definition: eTowerBuilder.cxx:38
AthAlgorithm.h
CaloIdManager
This class initializes the Calo (LAr and Tile) offline identifiers.
Definition: CaloIdManager.h:45
LVL1::eTowerBuilder::BuildHECeTowers
virtual void BuildHECeTowers(std::unique_ptr< eTowerContainer > &eTowerContainerRaw) const override
Definition: eTowerBuilder.cxx:128
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TrigConf::name
Definition: HLTChainList.h:35
LVL1::eTowerBuilder
Definition: eTowerBuilder.h:24
CaloCellContainer.h
LVL1::eTowerBuilder::~eTowerBuilder
virtual ~eTowerBuilder()=default
LVL1::eTowerBuilder::BuildEMBeTowers
virtual void BuildEMBeTowers(std::unique_ptr< eTowerContainer > &eTowerContainerRaw) const override
Definition: eTowerBuilder.cxx:53
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
LVL1::IeTowerBuilder
Definition: IeTowerBuilder.h:28
LVL1::eTowerBuilder::init
virtual void init(std::unique_ptr< eTowerContainer > &eTowerContainerRaw) const override
Definition: eTowerBuilder.cxx:27
LVL1::eTowerBuilder::BuildSingleTower
virtual void BuildSingleTower(std::unique_ptr< eTowerContainer > &eTowerContainerRawRaw, float eta, float phi, float keybase, int posneg) const override
Definition: eTowerBuilder.cxx:154
AthAlgTool
Definition: AthAlgTool.h:26
IeTowerBuilder.h
eTower.h