ATLAS Offline Software
Loading...
Searching...
No Matches
TBClusterMaker.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#ifndef TBREC_TBCLUSTERMAKER_H
6#define TBREC_TBCLUSTERMAKER_H
18
20
23#include "CaloGeoHelpers/CaloSampling.h"
26
27#include <map>
28#include <vector>
29#include <string>
30
32{
33 public:
34
35 TBClusterMaker(const std::string& type, const std::string& name,
36 const IInterface* parent);
37
39 virtual StatusCode execute(const EventContext& ctx,
40 xAOD::CaloClusterContainer* theClusters) const override;
41 virtual StatusCode initialize() override;
42 virtual StatusCode finalize() override;
43
44 private:
45
49 std::vector<CaloSampling::CaloSample> m_samplings;
50 std::vector<float> m_coneCuts;
51 std::vector<CaloCell_ID::SUBCALO> m_calos;
52
55 std::vector<float> m_samplingConeCuts;
56
59 float m_cellCut;
60
64 float m_seedCut;
65
69 float m_deltaR;
70
74
78
81 float m_eta0;
82 float m_phi0;
83
86
89
91 { this, "ElecNoiseKey", "electronicNoise", "SG key for electronic noise" };
92
96 std::vector<std::string> m_samplingNames;
97
98 std::map<std::string, CaloSampling::CaloSample> m_samplingFromNameLookup;
99 std::map<CaloSampling::CaloSample, CaloCell_ID::SUBCALO> m_caloLookup;
100 std::vector<float> m_adcToMeV;
101
103 StatusCode setupLookupTables();
104};
105
106#endif // TBCLUSTERMAKER_H
Base class for cluster processing tools called from CaloClusterMaker.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *collection) const =0
Execute on an entire collection of clusters.
This class groups all DetDescr information related to a CaloCell.
float m_cellCut
Threshold cut on cell energy in sigma noise units.
virtual StatusCode initialize() override
StatusCode setupLookupTables()
Setup lookup tables.
std::vector< std::string > m_samplingNames
std::vector< float > m_samplingConeCuts
Map of cone cuts for calorimeter samplings.
bool m_fixClusterPosition
Flag to fix cluster position ( ) from JO file.
const CaloCell_ID * m_calo_id
Services.
bool m_CellEnergyInADC
True if cell enrgy is in ADC counts, default = FALSE.
float m_eta0
Cluster ) set in JO file.
std::vector< CaloSampling::CaloSample > m_samplings
Vectors containing the list of used samplings and corresponding cone cuts; list of used calorimeters.
std::map< CaloSampling::CaloSample, CaloCell_ID::SUBCALO > m_caloLookup
std::string m_clusterContainerName
std::vector< float > m_coneCuts
std::vector< CaloCell_ID::SUBCALO > m_calos
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *theClusters) const override
Execute on an entire collection of clusters.
float m_seedCut
Threshold cut on seed cell energy in sigma noise units to find the 1st approximation of cluster .
std::map< std::string, CaloSampling::CaloSample > m_samplingFromNameLookup
TBClusterMaker(const std::string &type, const std::string &name, const IInterface *parent)
SG::ReadCondHandleKey< CaloNoise > m_elecNoiseKey
int m_maxIter
Maximal number of iterations to find cluster position.
float m_deltaR
Maximal claster position shift at the current step to stop iterations.
std::string m_caloCellContainerName
Names.
virtual StatusCode finalize() override
std::vector< float > m_adcToMeV
CaloClusterContainer_v1 CaloClusterContainer
Define the latest version of the calorimeter cluster container.