ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Calorimeter
CaloMonitoring
src
CaloBaselineMonAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// ********************************************************************
6
// NAME: CaloBaselineMonAlg.h
7
//
8
// Based on code from Benjamin Trocme (LPSC Grenoble) 01/2018
9
//
10
// ********************************************************************
11
12
#ifndef CALOBASELINEMONALG_H
13
#define CALOBASELINEMONALG_H
14
15
#include "
CaloMonAlgBase.h
"
16
17
#include "GaudiKernel/ToolHandle.h"
18
#include "Identifier/Identifier.h"
19
#include "
CaloIdentifier/CaloIdManager.h
"
20
#include "
StoreGate/ReadHandleKey.h
"
21
#include "
StoreGate/ReadCondHandleKey.h
"
22
#include "
LumiBlockData/BunchCrossingCondData.h
"
23
24
class
CaloBaselineMonAlg
:
public
CaloMonAlgBase
{
25
public
:
26
27
CaloBaselineMonAlg
(
const
std::string& name, ISvcLocator* pSvcLocator);
28
virtual
~CaloBaselineMonAlg
(){};
29
30
virtual
StatusCode
initialize
() override final;
31
virtual StatusCode fillHistograms(
const
EventContext& ctx)
const
override final;
32
33
private
:
34
35
StatusCode
retrieveTools
();
36
37
// CaloCellContainer name
38
SG
::ReadHandleKey<
CaloCellContainer
>
m_cellContainerKey
{
this
,
"CellContainer"
,
"AllCalo"
,
"Input CaloCellContainer key"
};
39
40
SG::ReadCondHandleKey<BunchCrossingCondData>
m_bcDataKey
{
this
,
"BunchCrossingCondDataKey"
,
"BunchCrossingData"
,
"SG Key of BunchCrossing CDO"
};
41
42
Gaudi::Property<std::string>
m_MonGroupName
{
this
,
"MonGroupName"
,
"CaloBaselineGroup"
};
43
// LHC BCID caracteristics. Do not change it
44
const
float
m_BCID0_min
= 0.;
45
const
float
m_BCID0_max
= 3563.;
46
const
int
m_BCID0_nbins
= 3563;
47
// Minimal BCID distance away from a bunch train to compute pedestal baseline
48
// If equal to negative, do not compute pedestal baseline in inter train
49
Gaudi::Property<int>
m_pedestalMon_BCIDmin
{
this
,
"pedestalMon_BCIDmin"
, 25};
50
// Maximal BCID distance away from the start of bunch train to monitor CaloLumiBCIDTool
51
// If equal to negative, do not monitor CaloLumiBCIDTool
52
Gaudi::Property<int>
m_bcidtoolMon_BCIDmax
{
this
,
"bcidtoolMon_BCIDmax"
, 144};
53
// Definition of eta range as a function of partitions
54
Gaudi::Property<std::vector<float> >
m_etaMax
{
this
,
"maximumEta"
, {}};
55
Gaudi::Property<std::vector<float> >
m_etaMin
{
this
,
"minimumEta"
, {}};
56
Gaudi::Property<std::vector<uint> >
m_nbOfEtaBins
{
this
,
"nbOfEtaBins"
, {}};
57
// List of partitions given in job options;
58
// Can be : EM, HEC, FCal, HEC+FCal
59
Gaudi::Property<std::vector<std::string> >
m_partNames
{
this
,
"partionList"
, {}};
60
61
std::vector<float>
m_etaBinWidth
;
62
std::vector<float>
m_inv_etaBinWidth
;
63
64
// Boolean to switch off/on monitoring - Derived from the two above properties
65
bool
m_bool_pedestalMon
;
66
bool
m_bool_bcidtoolMon
;
67
68
/* Histogram grouping (part)(ieta) */
69
std::vector<std::vector<int> >
m_histoGroups
;
70
71
// Control plots of BCID filled for each type
72
//TH1I_LW* m_h1_BCID_bcidtoolMon;
73
//TH1I_LW* m_h1_BCID_pedestalMon;
74
75
/*
76
struct partitionHistos
77
{
78
TProfile_LW* hProf_bcidtoolMon_vs_Eta=nullptr;
79
TProfile_LW* hProf_bcidtoolMon_vs_LB=nullptr;
80
std::vector<TProfile_LW*> hProf_bcidtoolMon_vs_EtaBCID;
81
82
TProfile_LW* hProf_pedestalMon_vs_Eta=nullptr;
83
TProfile_LW* hProf_pedestalMon_vs_LB=nullptr;
84
std::vector<TProfile_LW*> hProf_pedestalMon_vs_EtaBCID;
85
};
86
*/
87
88
// Map between the 4 partition and the m_partNames
89
// Filled at initialize
90
std::vector<int>
m_partMap
;
91
92
// std::vector<partitionHistos> m_partHistos;
93
94
};
95
96
#endif
// CaloBaselineMonAlg_H
BunchCrossingCondData.h
Replaces the BunchCrossing AlgTool used in run1/2.
CaloIdManager.h
CaloMonAlgBase.h
ReadCondHandleKey.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
CaloBaselineMonAlg::m_inv_etaBinWidth
std::vector< float > m_inv_etaBinWidth
Definition
CaloBaselineMonAlg.h:62
CaloBaselineMonAlg::m_histoGroups
std::vector< std::vector< int > > m_histoGroups
Definition
CaloBaselineMonAlg.h:69
CaloBaselineMonAlg::m_MonGroupName
Gaudi::Property< std::string > m_MonGroupName
Definition
CaloBaselineMonAlg.h:42
CaloBaselineMonAlg::retrieveTools
StatusCode retrieveTools()
CaloBaselineMonAlg::m_bool_pedestalMon
bool m_bool_pedestalMon
Definition
CaloBaselineMonAlg.h:65
CaloBaselineMonAlg::m_etaMin
Gaudi::Property< std::vector< float > > m_etaMin
Definition
CaloBaselineMonAlg.h:55
CaloBaselineMonAlg::m_bcidtoolMon_BCIDmax
Gaudi::Property< int > m_bcidtoolMon_BCIDmax
Definition
CaloBaselineMonAlg.h:52
CaloBaselineMonAlg::m_etaMax
Gaudi::Property< std::vector< float > > m_etaMax
Definition
CaloBaselineMonAlg.h:54
CaloBaselineMonAlg::m_nbOfEtaBins
Gaudi::Property< std::vector< uint > > m_nbOfEtaBins
Definition
CaloBaselineMonAlg.h:56
CaloBaselineMonAlg::m_bcDataKey
SG::ReadCondHandleKey< BunchCrossingCondData > m_bcDataKey
Definition
CaloBaselineMonAlg.h:40
CaloBaselineMonAlg::m_BCID0_nbins
const int m_BCID0_nbins
Definition
CaloBaselineMonAlg.h:46
CaloBaselineMonAlg::m_partMap
std::vector< int > m_partMap
Definition
CaloBaselineMonAlg.h:90
CaloBaselineMonAlg::m_partNames
Gaudi::Property< std::vector< std::string > > m_partNames
Definition
CaloBaselineMonAlg.h:59
CaloBaselineMonAlg::m_BCID0_min
const float m_BCID0_min
Definition
CaloBaselineMonAlg.h:44
CaloBaselineMonAlg::~CaloBaselineMonAlg
virtual ~CaloBaselineMonAlg()
Definition
CaloBaselineMonAlg.h:28
CaloBaselineMonAlg::m_bool_bcidtoolMon
bool m_bool_bcidtoolMon
Definition
CaloBaselineMonAlg.h:66
CaloBaselineMonAlg::m_cellContainerKey
SG::ReadHandleKey< CaloCellContainer > m_cellContainerKey
Definition
CaloBaselineMonAlg.h:38
CaloBaselineMonAlg::m_BCID0_max
const float m_BCID0_max
Definition
CaloBaselineMonAlg.h:45
CaloBaselineMonAlg::m_etaBinWidth
std::vector< float > m_etaBinWidth
Definition
CaloBaselineMonAlg.h:61
CaloBaselineMonAlg::m_pedestalMon_BCIDmin
Gaudi::Property< int > m_pedestalMon_BCIDmin
Definition
CaloBaselineMonAlg.h:49
CaloCellContainer
Container class for CaloCell.
Definition
CaloCellContainer.h:55
SG::ReadCondHandleKey
Definition
ReadCondHandleKey.h:21
const
CaloBaselineMonAlg
Definition
CaloBaselineMonAlg.py:1
CaloMonAlgBase
Definition
CaloMonAlgBase.py:1
SG
Forward declaration.
Definition
CaloCellPacker_400_500.h:32
initialize
void initialize()
Definition
run_EoverP.cxx:894
private
#define private
Definition
testRead.cxx:27
Generated on
for ATLAS Offline Software by
1.17.0