ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
AFPSiLayerSummaryManager Class Reference

Class managing (booking and filling) summary distributions. More...

#include <AFPSiLayerSummaryManager.h>

Collaboration diagram for AFPSiLayerSummaryManager:

Public Member Functions

 ~AFPSiLayerSummaryManager ()
 Deletes all summary objects, i.e. all in AFPSiLayerSummaryManager::m_bases. More...
 
void book () const
 Executes AFPSiLayerSummaryProfileBase::book() method on all objects in AFPSiLayerSummaryManager::m_bases. More...
 
void fillHits (const std::string &binName, const xAOD::AFPSiHit &hit) const
 Executes IAFPSiLayerSummaryHit::fillHits() on all objects in AFPSiLayerSummaryManager::m_hits. More...
 
void fillEventEnd (const std::string &binName, const IAFPSiLayerMonitor *layer) const
 Executes IAFPSiLayerSummaryHit::fillEventEnd() on all objects in AFPSiLayerSummaryManager::m_eventEnds. More...
 
template<typename T >
AFPSiLayerSummaryProfileBasecreateSummaryHits (AFPHitsMonitorTool *parentTool, const ManagedMonitorToolBase::MonGroup &monGrp, const std::string &name, const std::string &title, T(xAOD::AFPSiHit::*value)() const)
 Creates a new monitoring object of type AFPSiLayerSummaryProfileHit adds to AFPSiLayerSummaryManager::m_bases and AFPSiLayerSummaryManager::m_hits. More...
 
template<typename T >
AFPSiLayerSummaryProfileBasecreateSummaryEventEnd (AFPHitsMonitorTool *parentTool, const ManagedMonitorToolBase::MonGroup &monGrp, const std::string &name, const std::string &title, T(IAFPSiLayerMonitor::*value)() const)
 Creates a new monitoring object of type AFPSiLayerSummaryProfileEventEnd adds to AFPSiLayerSummaryManager::m_bases and AFPSiLayerSummaryManager::m_eventEnds. More...
 

Private Attributes

std::vector< AFPSiLayerSummaryProfileBase * > m_bases
 Vector of all summary objects. More...
 
std::vector< IAFPSiLayerSummaryHit * > m_hits
 Vector of summary objects which should be filled for every hit. More...
 
std::vector< IAFPSiLayerSummaryEventEnd * > m_eventEnds
 Vector of summary objects which should be filled once per event for every plane. More...
 

Detailed Description

Class managing (booking and filling) summary distributions.

Definition at line 22 of file AFPSiLayerSummaryManager.h.

Constructor & Destructor Documentation

◆ ~AFPSiLayerSummaryManager()

AFPSiLayerSummaryManager::~AFPSiLayerSummaryManager ( )

Deletes all summary objects, i.e. all in AFPSiLayerSummaryManager::m_bases.

Definition at line 9 of file AFPSiLayerSummaryManager.cxx.

10 {
12  delete base;
13 }

Member Function Documentation

◆ book()

void AFPSiLayerSummaryManager::book ( ) const

Executes AFPSiLayerSummaryProfileBase::book() method on all objects in AFPSiLayerSummaryManager::m_bases.

Definition at line 15 of file AFPSiLayerSummaryManager.cxx.

16 {
17  for (AFPSiLayerSummaryProfileBase* baseDist : m_bases)
18  baseDist->book();
19 }

◆ createSummaryEventEnd()

template<typename T >
template AFPSiLayerSummaryProfileBase * AFPSiLayerSummaryManager::createSummaryEventEnd< double > ( AFPHitsMonitorTool parentTool,
const ManagedMonitorToolBase::MonGroup monGrp,
const std::string &  name,
const std::string &  title,
T(IAFPSiLayerMonitor::*)() const  value 
)

Creates a new monitoring object of type AFPSiLayerSummaryProfileEventEnd adds to AFPSiLayerSummaryManager::m_bases and AFPSiLayerSummaryManager::m_eventEnds.

Created object will be filled once per event for each layer. The filling is done in the layer object AFPSiLayerMonitor::eventEnd()

Parameters
parentToolpointer to the main monitoring tool to which the summary distribution belongs to
monGrpmonitoring properties e.g. frequency of rebooking (every lumi-block or run), directory where to save the distribution
namename of the distribution will be used as key in the output file
titletitle of the distribution will be displayed at the top
valuepointer to the member method calculating the value for which distribution is to be created
Returns
pointer to the base class of created object in order to avoid templates

Definition at line 133 of file AFPSiLayerSummaryManager.h.

139 {
142  parentTool, monGrp, name, title, value);
143  m_bases.push_back(summary);
144  m_eventEnds.push_back(summary);
145 
146  return summary;
147 }

◆ createSummaryHits()

template<typename T >
template AFPSiLayerSummaryProfileBase * AFPSiLayerSummaryManager::createSummaryHits< float > ( AFPHitsMonitorTool parentTool,
const ManagedMonitorToolBase::MonGroup monGrp,
const std::string &  name,
const std::string &  title,
T(xAOD::AFPSiHit::*)() const  value 
)

Creates a new monitoring object of type AFPSiLayerSummaryProfileHit adds to AFPSiLayerSummaryManager::m_bases and AFPSiLayerSummaryManager::m_hits.

Created object will be filled with every hit. The filling is done in the layer object AFPSiLayerMonitor::fillHistograms()

Parameters
parentToolpointer to the main monitoring tool to which the summary distribution belongs to
monGrpmonitoring properties e.g. frequency of rebooking (every lumi-block or run), directory where to save the distribution
namename of the distribution will be used as key in the output file
titletitle of the distribution will be displayed at the top
valuepointer to the member method calculating the value for which distribution is to be created
Returns
pointer to the base class of created object in order to avoid templates

Definition at line 93 of file AFPSiLayerSummaryManager.h.

99 {
101  new AFPSiLayerSummaryProfileHit<T>(parentTool, monGrp, name, title, value);
102  m_bases.push_back(summary);
103  m_hits.push_back(summary);
104 
105  return summary;
106 }

◆ fillEventEnd()

void AFPSiLayerSummaryManager::fillEventEnd ( const std::string &  binName,
const IAFPSiLayerMonitor layer 
) const

Executes IAFPSiLayerSummaryHit::fillEventEnd() on all objects in AFPSiLayerSummaryManager::m_eventEnds.

Definition at line 27 of file AFPSiLayerSummaryManager.cxx.

28 {
29  for (IAFPSiLayerSummaryEventEnd* eventEndDist : m_eventEnds)
30  eventEndDist->fillEventEnd(binName, layer);
31 }

◆ fillHits()

void AFPSiLayerSummaryManager::fillHits ( const std::string &  binName,
const xAOD::AFPSiHit hit 
) const

Executes IAFPSiLayerSummaryHit::fillHits() on all objects in AFPSiLayerSummaryManager::m_hits.

Definition at line 21 of file AFPSiLayerSummaryManager.cxx.

22 {
23  for (IAFPSiLayerSummaryHit* hitDist : m_hits)
24  hitDist->fillHit(binName, hit);
25 }

Member Data Documentation

◆ m_bases

std::vector<AFPSiLayerSummaryProfileBase*> AFPSiLayerSummaryManager::m_bases
private

Vector of all summary objects.

Definition at line 82 of file AFPSiLayerSummaryManager.h.

◆ m_eventEnds

std::vector<IAFPSiLayerSummaryEventEnd*> AFPSiLayerSummaryManager::m_eventEnds
private

Vector of summary objects which should be filled once per event for every plane.

Definition at line 88 of file AFPSiLayerSummaryManager.h.

◆ m_hits

std::vector<IAFPSiLayerSummaryHit*> AFPSiLayerSummaryManager::m_hits
private

Vector of summary objects which should be filled for every hit.

Definition at line 85 of file AFPSiLayerSummaryManager.h.


The documentation for this class was generated from the following files:
base
std::string base
Definition: hcg.cxx:78
AFPSiLayerSummaryProfileBase
Base class for summary distributions (showing mean value for each plane)
Definition: AFPSiLayerSummaryProfileBase.h:20
AFPSiLayerSummaryManager::m_eventEnds
std::vector< IAFPSiLayerSummaryEventEnd * > m_eventEnds
Vector of summary objects which should be filled once per event for every plane.
Definition: AFPSiLayerSummaryManager.h:88
athena.value
value
Definition: athena.py:122
IAFPSiLayerSummaryHit
Class providing interface to summary object which can be filled for every hit.
Definition: IAFPSiLayerSummaryHit.h:15
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
AFPSiLayerSummaryManager::m_hits
std::vector< IAFPSiLayerSummaryHit * > m_hits
Vector of summary objects which should be filled for every hit.
Definition: AFPSiLayerSummaryManager.h:85
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
AFPSiLayerSummaryProfileHit
Final class representing a summary distribution filled for every hit.
Definition: AFPSiLayerSummaryProfileHit.h:18
AFPSiLayerSummaryProfileEventEnd
Final class representing a summary distribution filled once per event.
Definition: AFPSiLayerSummaryProfileEventEnd.h:18
AFPSiLayerSummaryManager::m_bases
std::vector< AFPSiLayerSummaryProfileBase * > m_bases
Vector of all summary objects.
Definition: AFPSiLayerSummaryManager.h:82
SCT_Monitoring::summary
@ summary
Definition: SCT_MonitoringNumbers.h:65