ATLAS Offline Software
AFPSiLayerSummaryProfileEventEnd.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
6 #ifndef AFPSILAYERSUMMARYPROFILEEVENTEND_H
7 #define AFPSILAYERSUMMARYPROFILEEVENTEND_H
8 
14 
16 template <typename T>
18 {
19 public:
27  AFPSiLayerSummaryProfileEventEnd (AFPHitsMonitorTool* parentTool, const ManagedMonitorToolBase::MonGroup& monGrp, const std::string& name, const std::string& title, T (IAFPSiLayerMonitor::*value)() const) :
28  AFPSiLayerSummaryProfileBase (parentTool, monGrp, name, title),
29  m_value(value)
30  {}
31 
33  void fillEventEnd (const std::string& binName, const IAFPSiLayerMonitor* layer) override
34  {m_profile->Fill(binName.data(), (layer->*m_value)());}
35 
36 protected:
39 };
40 
41 // stop compiler from creating separete template for each instance of basic type
42 extern template class AFPSiLayerSummaryProfileEventEnd<int>;
43 extern template class AFPSiLayerSummaryProfileEventEnd<float>;
44 extern template class AFPSiLayerSummaryProfileEventEnd<double>;
45 
46 #endif
IAFPSiLayerMonitor.h
AFPSiLayerSummaryProfileBase
Base class for summary distributions (showing mean value for each plane)
Definition: AFPSiLayerSummaryProfileBase.h:20
AFPHitsMonitorTool.h
IAFPSiStationMonitor.h
AFPHitsMonitorTool
Main monitoring class for silicon detectors.
Definition: AFPHitsMonitorTool.h:32
AFPSiLayerSummaryProfileBase::m_profile
TProfile * m_profile
The summary distribution. TProfile ensures proper merging of mean values.
Definition: AFPSiLayerSummaryProfileBase.h:39
AFPSiLayerSummaryProfileEventEnd::AFPSiLayerSummaryProfileEventEnd
AFPSiLayerSummaryProfileEventEnd(AFPHitsMonitorTool *parentTool, const ManagedMonitorToolBase::MonGroup &monGrp, const std::string &name, const std::string &title, T(IAFPSiLayerMonitor::*value)() const)
Assigns values and calls base class constructor.
Definition: AFPSiLayerSummaryProfileEventEnd.h:27
athena.value
value
Definition: athena.py:122
AFPSiLayerSummaryProfileBase.h
ManagedMonitorToolBase::MonGroup
A container of information describing a monitoring object.
Definition: ManagedMonitorToolBase.h:138
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
IAFPSiLayerSummaryEventEnd
Class providing interface to summary objects which can be filled once per event.
Definition: IAFPSiLayerSummaryEventEnd.h:15
covarianceTool.title
title
Definition: covarianceTool.py:542
AFPSiLayerSummaryProfileEventEnd::m_value
T(IAFPSiLayerMonitor::* m_value)() const
pointer to the member method which calculates quantity used to fill the distribution.
Definition: AFPSiLayerSummaryProfileEventEnd.h:38
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TProfile::Fill
int Fill(double, double)
Definition: rootspy.cxx:523
AFPSiLayerSummaryProfileEventEnd::fillEventEnd
void fillEventEnd(const std::string &binName, const IAFPSiLayerMonitor *layer) override
Fills the distribution using data passed in arguments.
Definition: AFPSiLayerSummaryProfileEventEnd.h:33
AFPSiLayerSummaryProfileEventEnd
Final class representing a summary distribution filled once per event.
Definition: AFPSiLayerSummaryProfileEventEnd.h:18
IAFPSiLayerSummaryEventEnd.h
IAFPSiLayerMonitor
Interface of a class monitoring one silicon layer.
Definition: IAFPSiLayerMonitor.h:23
TSU::T
unsigned long long T
Definition: L1TopoDataTypes.h:35