ATLAS Offline Software
GfexMonitorAlgorithm.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGT1CALOMONITORING_GFEXMONITORALGORITHM_H
5 #define TRIGT1CALOMONITORING_GFEXMONITORALGORITHM_H
6 
10 #include "xAODTrigger/gFexJetRoI.h"
14 
16 public:GfexMonitorAlgorithm( const std::string& name, ISvcLocator* pSvcLocator );
17  virtual ~GfexMonitorAlgorithm()=default;
18  virtual StatusCode initialize() override;
19  virtual StatusCode fillHistograms( const EventContext& ctx ) const override;
20 
21 private:
22  // Private members
23  enum class FPGAType {FPGAa, FPGAb, FPGAc, None};
24  std::map<std::string, std::pair<std::string, std::string>> m_globTobVarMap;
25  StringProperty m_packageName{this,"PackageName","gfexMonitor","group name for histograming"};
26  FloatArrayProperty m_ptCutValues{this, "ptCutValues", {-1., 0., 10., 50., 100.}, "List of lower pt cut values, -1. for not cut applied."};
27  // Define read handles
28  SG::ReadHandleKeyArray<xAOD::gFexJetRoIContainer> m_gFexJetTobKeyList{this,"gFexJetTobKeyList",{"L1_gFexLRJetRoI", "L1_gFexSRJetRoI"},"Array of gFEX jet ReadHandleKeys to fill histograms for"};
29  SG::ReadHandleKeyArray<xAOD::gFexJetRoIContainer> m_gFexRhoTobKeyList{this,"gFexRhoTobKeyList",{"L1_gFexRhoRoI"},"Array of gFEX rho ReadHandleKeys to fill histograms for"};
30  SG::ReadHandleKeyArray<xAOD::gFexGlobalRoIContainer> m_gFexGlobalTobKeyList{this,"gFexGlobalTobKeyList", {"L1_gScalarEJwoj","L1_gMETComponentsJwoj","L1_gMHTComponentsJwoj","L1_gMSTComponentsJwoj","L1_gMETComponentsNoiseCut","L1_gMETComponentsRms","L1_gScalarENoiseCut","L1_gScalarERms"},"Array of gFEX global TOBs ReadHandleKeys to fill histograms for"};
31  // Define private methods
32  StatusCode fillJetHistograms(const std::string& handleKey, const xAOD::gFexJetRoIContainer* container, const float& ptCutValue) const;
33  StatusCode fillRhoHistograms(const std::string& handleKey, const xAOD::gFexJetRoIContainer* container) const;
34  StatusCode fillGlobalTobHistograms(const std::string& handleKey, const xAOD::gFexGlobalRoIContainer* container) const;
35  FPGAType getFPGAType(const float& eta) const;
36 };
37 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
GfexMonitorAlgorithm::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition: GfexMonitorAlgorithm.cxx:45
GfexMonitorAlgorithm::FPGAType::FPGAb
@ FPGAb
GfexMonitorAlgorithm::GfexMonitorAlgorithm
GfexMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Definition: GfexMonitorAlgorithm.cxx:14
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
gFexGlobalRoIContainer.h
GfexMonitorAlgorithm::m_gFexJetTobKeyList
SG::ReadHandleKeyArray< xAOD::gFexJetRoIContainer > m_gFexJetTobKeyList
Definition: GfexMonitorAlgorithm.h:28
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
gFexGlobalRoI.h
GfexMonitorAlgorithm::m_gFexRhoTobKeyList
SG::ReadHandleKeyArray< xAOD::gFexJetRoIContainer > m_gFexRhoTobKeyList
Definition: GfexMonitorAlgorithm.h:29
GfexMonitorAlgorithm::m_gFexGlobalTobKeyList
SG::ReadHandleKeyArray< xAOD::gFexGlobalRoIContainer > m_gFexGlobalTobKeyList
Definition: GfexMonitorAlgorithm.h:30
AthMonitorAlgorithm
Base class for Athena Monitoring Algorithms.
Definition: AthMonitorAlgorithm.h:36
GfexMonitorAlgorithm::~GfexMonitorAlgorithm
virtual ~GfexMonitorAlgorithm()=default
GfexMonitorAlgorithm
Definition: GfexMonitorAlgorithm.py:1
gFexJetRoIContainer.h
GfexMonitorAlgorithm::initialize
virtual StatusCode initialize() override
initialize
Definition: GfexMonitorAlgorithm.cxx:19
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthMonitorAlgorithm.h
GfexMonitorAlgorithm::fillRhoHistograms
StatusCode fillRhoHistograms(const std::string &handleKey, const xAOD::gFexJetRoIContainer *container) const
Definition: GfexMonitorAlgorithm.cxx:147
GfexMonitorAlgorithm::m_globTobVarMap
std::map< std::string, std::pair< std::string, std::string > > m_globTobVarMap
Definition: GfexMonitorAlgorithm.h:24
GfexMonitorAlgorithm::fillGlobalTobHistograms
StatusCode fillGlobalTobHistograms(const std::string &handleKey, const xAOD::gFexGlobalRoIContainer *container) const
Definition: GfexMonitorAlgorithm.cxx:156
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
GfexMonitorAlgorithm::FPGAType::None
@ None
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
GfexMonitorAlgorithm::m_ptCutValues
FloatArrayProperty m_ptCutValues
Definition: GfexMonitorAlgorithm.h:26
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
gFexJetRoI.h
GfexMonitorAlgorithm::FPGAType
FPGAType
Definition: GfexMonitorAlgorithm.h:23
GfexMonitorAlgorithm::fillJetHistograms
StatusCode fillJetHistograms(const std::string &handleKey, const xAOD::gFexJetRoIContainer *container, const float &ptCutValue) const
Definition: GfexMonitorAlgorithm.cxx:92
GfexMonitorAlgorithm::FPGAType::FPGAa
@ FPGAa
GfexMonitorAlgorithm::m_packageName
StringProperty m_packageName
Definition: GfexMonitorAlgorithm.h:25
GfexMonitorAlgorithm::getFPGAType
FPGAType getFPGAType(const float &eta) const
Definition: GfexMonitorAlgorithm.cxx:176
GfexMonitorAlgorithm::FPGAType::FPGAc
@ FPGAc