ATLAS Offline Software
Loading...
Searching...
No Matches
CaloMonAlgBase.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef CALOMONITORING_CALOMONALGBASE
6#define CALOMONITORING_CALOMONALGBASE
7
12
14 public:
15
16 CaloMonAlgBase(const std::string& name, ISvcLocator* pSvcLocator);
17
18 virtual ~CaloMonAlgBase(){};
19
20 virtual StatusCode initialize();
21
22 StatusCode checkFilters(bool &ifPass, bool &passBeamBackgroundRemoval, const std::string &MonGroupName, const EventContext &ctx) const;
23
24 private:
25 // LArCollisionTime name
26 SG::ReadHandleKey<LArCollisionTime> m_LArCollisionTimeKey{this,"LArCollisionTimeKey","LArCollisionTime"};
27 SG::ReadHandleKey<BeamBackgroundData> m_beamBackgroundKey{this,"BeamBackgroundKey","CSCBackgroundForCaloMon"};
28
29 // Handles on filtering tools
31 ToolHandle<IDQFilterTool> m_BadLBTool{this, "DQBadLBFilterTool","DQBadLBFilterTool"};
33 ToolHandle<IDQFilterTool> m_ReadyFilterTool{this, "DQAtlasReadyFilterTool", "DQAtlasReadyFilterTool"};
34
36 //bool m_useTriggerFilter;
39
40protected:
41
42 // Common methods for LArCell-oriented histograms
43 const CaloCell_ID* m_calo_id{nullptr};
44
45 void getHistoCoordinates(const CaloDetDescrElement* dde, float& celleta, float& cellphi, unsigned& iLyr, unsigned& iLyrNS) const;
46 //enums to help with the conversion of Layer, partitions and such:
47 //Enumerate layers
52
53 //Enumerate layer-types, ignoring sides. Useful for configuration that is per-definition symmetric
56
57
58
59 //Mapping of CaloCell nomencature to CaloCellMonitoring nomencature
60 const std::map<unsigned,LayerEnumNoSides> m_caloSamplingToLyrNS{
61 {CaloSampling::PreSamplerB, EMBPNS},{CaloSampling::EMB1,EMB1NS},{CaloSampling::EMB2,EMB2NS},{CaloSampling::EMB3,EMB3NS}, //LAr Barrel
62 {CaloSampling::PreSamplerE, EMECPNS},{CaloSampling::EME1,EMEC1NS}, {CaloSampling::EME2,EMEC2NS}, {CaloSampling::EME3,EMEC3NS}, //LAr Endcap
63 {CaloSampling::HEC0,HEC0NS}, {CaloSampling::HEC1,HEC1NS}, {CaloSampling::HEC2,HEC2NS}, {CaloSampling::HEC3,HEC3NS}, //Hadronic endcap
64 {CaloSampling::FCAL0,FCAL1NS}, {CaloSampling::FCAL1,FCAL2NS}, {CaloSampling::FCAL2,FCAL3NS} //FCAL
65 };
66
67
68
69
70};
71
72
73#endif
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
This class groups all DetDescr information related to a CaloCell.
ToolHandle< IDQFilterTool > m_ReadyFilterTool
SG::ReadHandleKey< LArCollisionTime > m_LArCollisionTimeKey
bool m_useBeamBackgroundRemoval
ToolHandle< IDQFilterTool > m_BadLBTool
const std::map< unsigned, LayerEnumNoSides > m_caloSamplingToLyrNS
virtual ~CaloMonAlgBase()
bool m_useCollisionFilterTool
const CaloCell_ID * m_calo_id
SG::ReadHandleKey< BeamBackgroundData > m_beamBackgroundKey
Property holding a SG store/key/clid from which a ReadHandle is made.
void initialize()