ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetCalibAlgs
PixelCalibAlgs
src
HitMapBuilder.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef PIXELCONDITIONSALGS_HITMAPBUILDER_H
6
#define PIXELCONDITIONSALGS_HITMAPBUILDER_H
7
8
#include "
AthenaBaseComps/AthAlgorithm.h
"
9
#include "GaudiKernel/ServiceHandle.h"
10
#include "
PixelReadoutGeometry/IPixelReadoutManager.h
"
11
#include "
StoreGate/ReadHandleKey.h
"
12
#include "
StoreGate/ReadCondHandleKey.h
"
13
#include "GaudiKernel/ITHistSvc.h"
14
15
#include <string>
16
#include <vector>
17
#include <utility>
// pair
18
19
// EDM
20
#include "
InDetRawData/PixelRDO_Container.h
"
21
22
#include "TH1.h"
23
#include "TH2.h"
24
25
26
class
PixelID
;
27
28
29
namespace
InDetDD
{
30
class
PixelDetectorManager
;
31
}
32
45
46
class
HitMapBuilder
:
public
AthAlgorithm
{
47
48
public
:
49
50
//Delegate to base-class constructor
51
using
AthAlgorithm::AthAlgorithm
;
52
53
~HitMapBuilder
();
54
55
StatusCode
initialize
();
56
StatusCode
execute
(
const
EventContext& ctx);
57
StatusCode
finalize
();
58
59
private
:
60
std::string
getDCSIDFromPosition
(
int
bec,
int
layer,
int
modPhi,
int
modEta);
61
std::vector<std::string> &
splitter
(
const
std::string &
str
,
char
delim, std::vector<std::string> &elems);
62
std::vector<std::string>
splitter
(
const
std::string &
str
,
char
delim);
63
StatusCode
registerHistograms
();
64
const
std::string
histoSuffix
(
const
int
bec,
const
int
layer);
65
66
private
:
67
ServiceHandle <ITHistSvc>
m_tHistSvc
{
this
,
"THistSvc"
,
"THistSvc/THistSvc"
};
68
SG::ReadHandleKey<PixelRDO_Container>
m_pixelRDOKey
{
this
,
"PixelRDOKey"
,
"PixelRDOs"
,
"StoreGate Key of Pixel RDOs"
};
69
70
const
InDetDD::PixelDetectorManager
*
m_pixman
=
nullptr
;
71
const
PixelID
*
m_pixelID
=
nullptr
;
72
73
// vector of modulename and vector(barrel/endcap, layer, phi, eta)
74
std::vector< std::pair< std::string, std::vector<int> > >
m_pixelMapping
;
75
76
double
m_nEvents
=0;
77
std::vector<double>
m_nEventsLB
;
// Events per LB
78
std::vector<double>
m_nEventsLBCategory
;
// Events per certain LB for LB category
79
80
std::unique_ptr<TH1F>
m_nEventsHist
;
81
std::unique_ptr<TH1F>
m_nEventsLBHist
;
82
std::vector<std::unique_ptr<TH2F>>
m_occupancyMaps
;
83
std::vector<std::unique_ptr<TH2F>>
m_occupancyMapsIBL2dLB
;
84
std::vector<std::unique_ptr<TH1F>>
m_TOTdistributions
;
85
std::vector<std::unique_ptr<TH1F>>
m_TOTdistributionsIBL2dLB
;
86
std::vector<std::unique_ptr<TH1F>>
m_occupancyLB
;
87
88
Gaudi::Property<int>
m_hist_lbMax
{
this
,
"nLBmax"
, 3001,
"Maximum number of LB (for histograms binning)"
};
// max number of LB
89
Gaudi::Property<int>
m_evt_lbMin
{
this
,
"LBMin"
,0,
"First lumi block to consider"
};
// lower limit for LB to be taken into account
90
Gaudi::Property<int>
m_evt_lbMax
{
this
,
"LBMax"
,-1,
"Last lumi block to consider"
};
// upper limit for LB to be taken into account
91
92
int
m_LBrange_max
= -9999;
93
94
const
unsigned
int
m_nIblFes
= 14 * (4 + 6*2) * 2;
// 14 stave * (4 3Ds + 6 2Ds * 2 Fes) * 2 sides = 448
95
const
int
m_perLB_min
=0,
m_perLB_max
=3000,
m_perLB_step
=100;
// For plots per certain LBs
96
const
int
m_perLB_n
= (
m_perLB_max
-
m_perLB_min
)/
m_perLB_step
;
// For plots per certain LBs
97
98
const
int
m_fei4bPixels
= 26880;
// 80 * 336
99
const
int
m_pixModPixels
= 46080;
// 144 * 320;
100
};
101
102
103
#endif
// PIXELCONDITIONSALGS_HITMAPBUILDER_H
AthAlgorithm.h
IPixelReadoutManager.h
PixelRDO_Container.h
ReadCondHandleKey.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
AthAlgorithm::AthAlgorithm
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthAlgorithm.cxx:10
HitMapBuilder
HitMapBuilder.h.
Definition
HitMapBuilder.h:46
HitMapBuilder::m_LBrange_max
int m_LBrange_max
Definition
HitMapBuilder.h:92
HitMapBuilder::~HitMapBuilder
~HitMapBuilder()
Definition
HitMapBuilder.cxx:24
HitMapBuilder::m_occupancyLB
std::vector< std::unique_ptr< TH1F > > m_occupancyLB
Definition
HitMapBuilder.h:86
HitMapBuilder::histoSuffix
const std::string histoSuffix(const int bec, const int layer)
Definition
HitMapBuilder.cxx:43
HitMapBuilder::m_evt_lbMax
Gaudi::Property< int > m_evt_lbMax
Definition
HitMapBuilder.h:90
HitMapBuilder::m_pixelID
const PixelID * m_pixelID
Definition
HitMapBuilder.h:71
HitMapBuilder::m_pixModPixels
const int m_pixModPixels
Definition
HitMapBuilder.h:99
HitMapBuilder::m_pixelRDOKey
SG::ReadHandleKey< PixelRDO_Container > m_pixelRDOKey
Definition
HitMapBuilder.h:68
HitMapBuilder::registerHistograms
StatusCode registerHistograms()
Definition
HitMapBuilder.cxx:121
HitMapBuilder::getDCSIDFromPosition
std::string getDCSIDFromPosition(int bec, int layer, int modPhi, int modEta)
Definition
HitMapBuilder.cxx:27
HitMapBuilder::execute
StatusCode execute(const EventContext &ctx)
Execute method.
Definition
HitMapBuilder.cxx:334
HitMapBuilder::m_TOTdistributions
std::vector< std::unique_ptr< TH1F > > m_TOTdistributions
Definition
HitMapBuilder.h:84
HitMapBuilder::m_occupancyMapsIBL2dLB
std::vector< std::unique_ptr< TH2F > > m_occupancyMapsIBL2dLB
Definition
HitMapBuilder.h:83
HitMapBuilder::m_perLB_step
const int m_perLB_step
Definition
HitMapBuilder.h:95
HitMapBuilder::m_pixelMapping
std::vector< std::pair< std::string, std::vector< int > > > m_pixelMapping
Definition
HitMapBuilder.h:74
HitMapBuilder::m_nEventsLB
std::vector< double > m_nEventsLB
Definition
HitMapBuilder.h:77
HitMapBuilder::finalize
StatusCode finalize()
Definition
HitMapBuilder.cxx:424
HitMapBuilder::m_perLB_n
const int m_perLB_n
Definition
HitMapBuilder.h:96
HitMapBuilder::m_perLB_max
const int m_perLB_max
Definition
HitMapBuilder.h:95
HitMapBuilder::m_evt_lbMin
Gaudi::Property< int > m_evt_lbMin
Definition
HitMapBuilder.h:89
HitMapBuilder::m_tHistSvc
ServiceHandle< ITHistSvc > m_tHistSvc
Definition
HitMapBuilder.h:67
HitMapBuilder::initialize
StatusCode initialize()
Definition
HitMapBuilder.cxx:79
HitMapBuilder::m_nEventsLBHist
std::unique_ptr< TH1F > m_nEventsLBHist
Definition
HitMapBuilder.h:81
HitMapBuilder::m_TOTdistributionsIBL2dLB
std::vector< std::unique_ptr< TH1F > > m_TOTdistributionsIBL2dLB
Definition
HitMapBuilder.h:85
HitMapBuilder::m_pixman
const InDetDD::PixelDetectorManager * m_pixman
Definition
HitMapBuilder.h:70
HitMapBuilder::m_perLB_min
const int m_perLB_min
Definition
HitMapBuilder.h:95
HitMapBuilder::AthAlgorithm
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthAlgorithm.cxx:10
HitMapBuilder::m_occupancyMaps
std::vector< std::unique_ptr< TH2F > > m_occupancyMaps
Definition
HitMapBuilder.h:82
HitMapBuilder::m_nEvents
double m_nEvents
Definition
HitMapBuilder.h:76
HitMapBuilder::m_nEventsHist
std::unique_ptr< TH1F > m_nEventsHist
Definition
HitMapBuilder.h:80
HitMapBuilder::m_fei4bPixels
const int m_fei4bPixels
Definition
HitMapBuilder.h:98
HitMapBuilder::m_nEventsLBCategory
std::vector< double > m_nEventsLBCategory
Definition
HitMapBuilder.h:78
HitMapBuilder::m_hist_lbMax
Gaudi::Property< int > m_hist_lbMax
Definition
HitMapBuilder.h:88
HitMapBuilder::splitter
std::vector< std::string > & splitter(const std::string &str, char delim, std::vector< std::string > &elems)
Definition
HitMapBuilder.cxx:59
HitMapBuilder::m_nIblFes
const unsigned int m_nIblFes
Definition
HitMapBuilder.h:94
InDetDD::PixelDetectorManager
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated pixel ...
Definition
PixelDetectorManager.h:47
PixelID
This is an Identifier helper class for the Pixel subdetector.
Definition
PixelID.h:69
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
InDetDD
Message Stream Member.
Definition
FakeTrackBuilder.h:8
str
Definition
BTagTrackIpAccessor.cxx:11
Generated on
for ATLAS Offline Software by
1.17.0