ATLAS Offline Software
JepJemMonitorAlgorithm.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGT1CALOMONITORING_JEPJEMMONITORALGORITHM_H
5 #define TRIGT1CALOMONITORING_JEPJEMMONITORALGORITHM_H
6 
10 
20 
22 public:JepJemMonitorAlgorithm( const std::string& name, ISvcLocator* pSvcLocator );
23  virtual ~JepJemMonitorAlgorithm()=default;
24  virtual StatusCode initialize() override;
25  virtual StatusCode fillHistograms( const EventContext& ctx ) const override;
26 
27 private:
28 
29  // Phi scale for jet element eta/phi plots
30  double m_phiScaleJE{};
31 
32  StringProperty m_packageName{this,"PackageName","JepJemMonitor","group name for histograming"};
33 
34  // The following enums are set in the python in order to get consistent histogram bins
35  Gaudi::Property<int> m_maxSlices {this, "s_maxSlices", 5, "Maximum number of slices"};
36  Gaudi::Property<int> m_crates {this, "s_crates", 2, "Number of JEM crates"};
37  Gaudi::Property<int> m_modules {this, "s_modules", 16, "Number of modules per crate"};
38  Gaudi::Property<int> m_tobsPerJEM{this, "s_tobsPerJEM", 4, "Maximum number of TOBs per JEM sent to CMX"};
39 
40  // container keys including steering parameter and description
44 
45  // Error summary bin labels
47 
48  // JEM fill functions
49  void fillJEMPhiMon(double eta, double phi,
50  Monitored::Scalar<double> &phiMonitoredScalar
51  ) const;
52 
53  void fillJEMEtaVsPhiMon(double eta, double phi,
54  Monitored::Scalar<double> &etaMonitoredScalar,
55  Monitored::Scalar<double> &phiMonitoredScalar,
57  ) const;
58 
59  void fillJEMEtaVsPhiMon(double eta, double phi,
60  Monitored::Scalar<double> &etaMonitoredScalar,
61  Monitored::Scalar<double> &phiMonitoredScalar
62  ) const;
63 
64  void fillJEMRoIEtaVsPhiMon(double eta, double phi,
65  Monitored::Scalar<double> &etaMonitoredScalar,
66  Monitored::Scalar<double> &phiMonitoredScalar,
68  ) const;
69 
70  void fillJEMRoIEtaVsPhiMon(double eta, double phi,
71  Monitored::Scalar<double> &etaMonitoredScalar,
72  Monitored::Scalar<double> &phiMonitoredScalar
73  ) const;
74 };
75 
76 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
JepJemMonitorAlgorithm::m_JetElementLocation
SG::ReadHandleKey< xAOD::JetElementContainer > m_JetElementLocation
Definition: JepJemMonitorAlgorithm.h:41
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
LVL1::TrigT1CaloDefs::JEMTobRoILocation
static const std::string JEMTobRoILocation
Definition: TrigT1CaloDefs.h:63
JEMTobRoIContainer.h
CoordToHardware.h
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
JepJemMonitorAlgorithm::SummaryErrors
SummaryErrors
Definition: JepJemMonitorAlgorithm.h:46
JepJemMonitorAlgorithm::m_JEMRoILocation
SG::ReadHandleKey< xAOD::JEMTobRoIContainer > m_JEMRoILocation
Definition: JepJemMonitorAlgorithm.h:43
JepJemMonitorAlgorithm::m_packageName
StringProperty m_packageName
Definition: JepJemMonitorAlgorithm.h:32
JepJemMonitorAlgorithm::HadParity
@ HadParity
Definition: JepJemMonitorAlgorithm.h:46
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:200
AthMonitorAlgorithm
Base class for Athena Monitoring Algorithms.
Definition: AthMonitorAlgorithm.h:36
JetElementContainer.h
JepJemMonitorAlgorithm::initialize
virtual StatusCode initialize() override
initialize
Definition: JepJemMonitorAlgorithm.cxx:13
JEMEtSumsContainer.h
LVL1::TrigT1CaloDefs::JEMEtSumsLocation
static const std::string JEMEtSumsLocation
Definition: TrigT1CaloDefs.h:48
JepJemMonitorAlgorithm::m_maxSlices
Gaudi::Property< int > m_maxSlices
Definition: JepJemMonitorAlgorithm.h:35
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthMonitorAlgorithm.h
JepJemMonitorAlgorithm::m_phiScaleJE
double m_phiScaleJE
Definition: JepJemMonitorAlgorithm.h:30
JepJemMonitorAlgorithm::JepJemMonitorAlgorithm
JepJemMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Definition: JepJemMonitorAlgorithm.cxx:7
JepJemMonitorAlgorithm::EMParity
@ EMParity
Definition: JepJemMonitorAlgorithm.h:46
JepJemMonitorAlgorithm::m_tobsPerJEM
Gaudi::Property< int > m_tobsPerJEM
Definition: JepJemMonitorAlgorithm.h:38
JepJemMonitorAlgorithm::~JepJemMonitorAlgorithm
virtual ~JepJemMonitorAlgorithm()=default
JEPRoIDecoder.h
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
DataError.h
Coordinate.h
JepJemMonitorAlgorithm::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition: JepJemMonitorAlgorithm.cxx:37
LVL1::TrigT1CaloDefs::JetElementLocation
static const std::string JetElementLocation
Definition: TrigT1CaloDefs.h:39
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
JepJemMonitorAlgorithm::JEMStatus
@ JEMStatus
Definition: JepJemMonitorAlgorithm.h:46
TrigT1CaloDefs.h
JepJemMonitorAlgorithm::HadLink
@ HadLink
Definition: JepJemMonitorAlgorithm.h:46
JepJemMonitorAlgorithm::m_JEMEtSumsLocation
SG::ReadHandleKey< xAOD::JEMEtSumsContainer > m_JEMEtSumsLocation
Definition: JepJemMonitorAlgorithm.h:42
CoordinateRange.h
JepJemMonitorAlgorithm::fillJEMPhiMon
void fillJEMPhiMon(double eta, double phi, Monitored::Scalar< double > &phiMonitoredScalar) const
Definition: JepJemMonitorAlgorithm.cxx:336
JepJemMonitorAlgorithm::m_crates
Gaudi::Property< int > m_crates
Definition: JepJemMonitorAlgorithm.h:36
JepJemMonitorAlgorithm::fillJEMEtaVsPhiMon
void fillJEMEtaVsPhiMon(double eta, double phi, Monitored::Scalar< double > &etaMonitoredScalar, Monitored::Scalar< double > &phiMonitoredScalar, Monitored::Scalar< int > &weight) const
Definition: JepJemMonitorAlgorithm.cxx:355
JepJemMonitorAlgorithm::m_modules
Gaudi::Property< int > m_modules
Definition: JepJemMonitorAlgorithm.h:37
JepJemMonitorAlgorithm::EMLink
@ EMLink
Definition: JepJemMonitorAlgorithm.h:46
Monitored::Scalar
Declare a monitored scalar variable.
Definition: MonitoredScalar.h:34
JepJemMonitorAlgorithm::fillJEMRoIEtaVsPhiMon
void fillJEMRoIEtaVsPhiMon(double eta, double phi, Monitored::Scalar< double > &etaMonitoredScalar, Monitored::Scalar< double > &phiMonitoredScalar, Monitored::Scalar< int > &weight) const
Definition: JepJemMonitorAlgorithm.cxx:418
JepJemMonitorAlgorithm
Definition: JepJemMonitorAlgorithm.py:1