ATLAS Offline Software
IAFPSiStationMonitor.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef AFP_MONITORING_IAFPSISTATIONMONITOR_H
6 #define AFP_MONITORING_IAFPSISTATIONMONITOR_H
7 
9 
10 #include <xAODForward/AFPSiHit.h>
11 
12 #include "GaudiKernel/IAlgTool.h"
14 
15 #include <string>
16 
17 class AFPHitsMonitorTool;
18 class AFPSiLayerMonitor;
19 
20 static const InterfaceID IID_IAFPSiStationMonitor ("IAFPSiStationMonitor", 1, 0);
21 
23 class IAFPSiStationMonitor : virtual public IAlgTool
24 {
25 public:
26  static const InterfaceID &interfaceID()
27  {return IID_IAFPSiStationMonitor;}
28 
30  virtual ~IAFPSiStationMonitor() {}
31 
33  virtual StatusCode initialize() = 0;
34 
36  virtual StatusCode finalize() = 0;
37 
41  virtual void bookHistograms(AFPHitsMonitorTool* toolToStoreHistograms) = 0;
42 
46  virtual void fillHistograms(const xAOD::AFPSiHit& hit) = 0;
47 
49  virtual void eventEnd() = 0;
50 
54  virtual void endOfLumiBlock(AFPHitsMonitorTool* toolToStoreHistograms) = 0;
55 
57  virtual int stationID () const = 0;
58 
60  virtual const ToolHandleArray<IAFPSiLayerMonitor>& layersMonitors () const = 0;
61 
63  virtual std::string makeName (const std::string& name) const = 0;
64 
66  virtual std::string makeTitle (const std::string& title) const = 0;
67 
70 };
71 
72 #endif
IAFPSiLayerMonitor.h
AFPHitsMonitorTool
Main monitoring class for silicon detectors.
Definition: AFPHitsMonitorTool.h:32
xAOD::AFPSiHit_v2
Class representing a hit in silicon detector.
Definition: AFPSiHit_v2.h:30
IAFPSiStationMonitor
Interface for an object monitoring one AFP station with silicon detectors.
Definition: IAFPSiStationMonitor.h:24
AFPSiLayerMonitor
Class monitoring one silicon layer.
Definition: AFPSiLayerMonitor.h:32
IAFPSiStationMonitor::~IAFPSiStationMonitor
virtual ~IAFPSiStationMonitor()
Does nothing.
Definition: IAFPSiStationMonitor.h:30
IAFPSiStationMonitor::initialize
virtual StatusCode initialize()=0
Initialise the tool.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IAFPSiStationMonitor::fillHistograms
virtual void fillHistograms(const xAOD::AFPSiHit &hit)=0
Fills stations monitoring histograms.
covarianceTool.title
title
Definition: covarianceTool.py:542
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
IAFPSiStationMonitor::finalize
virtual StatusCode finalize()=0
Finalise the tool.
IAFPSiStationMonitor::layersMonitors
virtual const ToolHandleArray< IAFPSiLayerMonitor > & layersMonitors() const =0
Array of tools monitoring planes in the station.
IAFPSiStationMonitor::bookHistograms
virtual void bookHistograms(AFPHitsMonitorTool *toolToStoreHistograms)=0
Books histograms for stations monitoring.
IAFPSiStationMonitor::eventEnd
virtual void eventEnd()=0
Method called once per event after processing all hits.
IAFPSiStationMonitor::setAllLayersParent
virtual void setAllLayersParent(AFPHitsMonitorTool *parent)=0
Sets main monitor tool as a parent in all layers tools.
AFPSiHit.h
IAFPSiStationMonitor::endOfLumiBlock
virtual void endOfLumiBlock(AFPHitsMonitorTool *toolToStoreHistograms)=0
Method called at the end of luminosity block to process histograms.
IAFPSiStationMonitor::makeName
virtual std::string makeName(const std::string &name) const =0
Return a string useful for creating a name of the distribution.
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
IAFPSiStationMonitor::interfaceID
static const InterfaceID & interfaceID()
Definition: IAFPSiStationMonitor.h:26
IAFPSiStationMonitor::stationID
virtual int stationID() const =0
ID number of the monitored station.
IAFPSiStationMonitor::makeTitle
virtual std::string makeTitle(const std::string &title) const =0
Return a string useful for creating a name of the distribution.