ATLAS Offline Software
Loading...
Searching...
No Matches
L1CaloMonitoringCaloTool.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// ********************************************************************
7//
8// NAME: L1CaloMonitoringCaloTool.h
9// PACKAGE: TrigT1CaloCalibTools
10//
11// AUTHOR: Peter Faulkner
12//
13// ********************************************************************
14#ifndef TRIGT1CALOCALIBTOOLS_L1CALOMONITORINGCALOTOOL_H
15#define TRIGT1CALOCALIBTOOLS_L1CALOMONITORINGCALOTOOL_H
16
17#include <string>
18#include <vector>
19
20#include "AsgTools/AsgTool.h"
21#include "GaudiKernel/ToolHandle.h"
23
27
28class IInterface;
29class StatusCode;
30
31class Identifier;
32class CaloLVL1_ID;
33
34namespace LVL1 {
35
37 {
40
41 public:
43 L1CaloMonitoringCaloTool( const std::string& name );
51
52 virtual StatusCode initialize();
53 virtual StatusCode finalize();
54
55 StatusCode loadCaloCells();
56 float et(const Identifier& ttid) const;
57 float caloQuality(const Identifier& ttid) const;
58
59 private:
60
61 int towerIndex(const Identifier& ttId) const;
62 int region(const int index) const;
63 int etaBin(const int index) const;
64
66 {this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"};
67
68 ToolHandle<LVL1::IL1CaloMatchCell2Tower> m_cellMatch
69 { this, "L1CaloMatchCell2Tower", "LVL1::L1CaloMatchCell2Tower", "L1CaloMatchCell2Tower" };
71
73
74 std::vector<float> m_energySums;
75 std::vector<float> m_quality;
76 std::vector<float> m_denom;
77 std::vector<float> m_sinTh;
78 std::vector<unsigned int> m_cellIds;
79 std::vector<int> m_ttIdx;
80 unsigned int m_maxCells;
81
87 std::vector<int> m_binOffset;
88 std::vector<int> m_indexOffset;
89 std::vector<int> m_etaShift;
90
91 static const int s_maxTowers = 7168;
92 static const int s_nregions = 4;
93 static const int s_nsinThBins = 33;
94 };
95
96} // end namespace
97
98#endif
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Map from calo cells to trigger towers.
Helper class for offline TT identifiers.
Definition CaloLVL1_ID.h:66
L1CaloMonitoringCaloTool & operator=(const L1CaloMonitoringCaloTool &rhs)=delete
L1CaloMonitoringCaloTool()=delete
delete the big 4
ToolHandle< LVL1::IL1CaloMatchCell2Tower > m_cellMatch
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
L1CaloMonitoringCaloTool(const std::string &name)
Create a proper constructor for Athena.
L1CaloMonitoringCaloTool(const L1CaloMonitoringCaloTool &rhs)=delete
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
StatusCode loadCaloCells()
Declare the interface that the class provides.
L1CaloMonitoringCaloTool(L1CaloMonitoringCaloTool &&rhs)=delete
float et(const Identifier &ttid) const
std::vector< unsigned int > m_cellIds
float caloQuality(const Identifier &ttid) const
int towerIndex(const Identifier &ttId) const
Base class for the dual-use tool implementation classes.
Definition AsgTool.h:47
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition index.py:1