ATLAS Offline Software
Loading...
Searching...
No Matches
CaloClusterCellMonAlg.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
6#ifndef CALOMONITORING_LARCLUSTERCELLMONALG_H
7#define CALOMONITORING_LARCLUSTERCELLMONALG_H
8
9#include "CaloMonAlgBase.h"
10
16
17#include <vector>
18#include <string>
19#include <array>
20#include <map>
21#include <limits>
22
24
25 public:
28
29 virtual StatusCode initialize() override final;
30 virtual StatusCode fillHistograms(const EventContext& ctx) const override final;
31
32
34
35 // Job properties
36 SG::ReadHandleKey<xAOD::CaloClusterContainer> m_clusterContainerKey{this,"CaloClusterContainer","CaloTopoClusters","SG key of the input cluster container"};
37
38 SG::ReadCondHandleKey<CaloDetDescrManager> m_caloMgrKey {this,"CaloDetDescrManager", "CaloDetDescrManager", "SG Key for CaloDetDescrManager in the Condition Store" };
39 SG::ReadCondHandleKey<LArOnOffIdMapping> m_cablingKey{this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"};
40
41 Gaudi::Property<std::string> m_MonGroupName {this, "MonGroupName", "CaloClusterCellMonGroup"};
42
43
44 StringArrayProperty m_layerNames{this, "LayerNames", {"EMBPA", "EMBPC", "EMB1A", "EMB1C", "EMB2A", "EMB2C", "EMB3A", "EMB3C",
45 "HEC0A", "HEC0C", "HEC1A", "HEC1C", "HEC2A", "HEC2C", "HEC3A", "HEC3C",
46 "EMECPA", "EMECPC", "EMEC1A", "EMEC1C", "EMEC2A", "EMEC2C", "EMEC3A", "EMEC3C",
47 "FCAL1A", "FCAL1C", "FCAL2A", "FCAL2C", "FCAL3A", "FCAL3C"},
48 "Names of individual layers to monitor"};
49
50 //StringArrayProperty m_partitionNames{this, "PartitionNames", {"EMBA","EMBC","EMECA","EMECC","HECA","HECC","FCALA","FCALC"}};
51
52 // Trigger Awareness:
54
55 BooleanProperty m_useTrigger{this, "useTrigger", true};
56 std::array<StringProperty,NOTA> m_triggerNames{{{this,"rndmTriggerNames",""},
57 {this,"caloTriggerNames",""},
58 {this,"minBiasTriggerNames",""},
59 {this,"metTriggerNames",""},
60 {this,"miscTriggerNames",""}
61 }};
62
63
64 BooleanArrayProperty m_doBeamBackgroundRemovalProp{this, "DoBeamBackgroundRemoval"};
65
66 Gaudi::Property<float> m_clusterECut {this,"ClusterEnergyCut",std::numeric_limits<float>::lowest()};
67 Gaudi::Property<unsigned> m_nCellsPerCluster{this,"nCellsPerCluster",1,"Monitor the N highest-energy-cells of each cluster (0: all cells)"};
68
69 //Enumerate partitions
71
72 void checkTrigger() const;
73
74 const LArOnlineID* m_onlineID{nullptr};
75
76 const std::array<std::string,9> m_tileNames{
77 "TileBar0","TileBar1","TileBar2",
78 "TileGap0","TileGap1","TileGap2",
79 "TileExt0","TileExt1","TileExt2"};
80};
81
82#endif
Definition of CaloDetDescrManager.
Gaudi::Property< unsigned > m_nCellsPerCluster
StringArrayProperty m_layerNames
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Gaudi::Property< float > m_clusterECut
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
const std::array< std::string, 9 > m_tileNames
Gaudi::Property< std::string > m_MonGroupName
const LArOnlineID * m_onlineID
virtual StatusCode fillHistograms(const EventContext &ctx) const override final
adds event to the monitoring histograms
~CaloClusterCellMonAlg()=default
std::array< StringProperty, NOTA > m_triggerNames
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_clusterContainerKey
BooleanArrayProperty m_doBeamBackgroundRemovalProp
CaloMonAlgBase(const std::string &name, ISvcLocator *pSvcLocator)
Definition MET.py:1
Forward declaration.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
void initialize()
#define private