ATLAS Offline Software
TileCellNoiseMonTool.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 // ********************************************************************
6 //
7 // NAME: TileCellNoiseMonTool.h
8 // PACKAGE: TileMonitoring
9 //
10 // AUTHORS: Christophe Clement
11 //
12 //
13 // ********************************************************************
14 #ifndef TILECELLNOISEMONTOOL_H
15 #define TILECELLNOISEMONTOOL_H
16 
17 #include "TileFatherMonTool.h"
18 #include <string>
19 #include <vector>
20 
21 class ITileBadChanTool;
22 class TH1F;
23 class TH2F;
24 class TF1;
25 
30 class ATLAS_NOT_THREAD_SAFE TileCellNoiseMonTool: public TileFatherMonTool { // deprecated: ATLASRECTS-7259
31 
32  public:
33 
34  TileCellNoiseMonTool(const std::string & type, const std::string & name,
35  const IInterface* parent);
36 
37  virtual ~TileCellNoiseMonTool();
38 
39  virtual StatusCode initialize() final;
40 
41  //pure virtual methods
45  StatusCode checkHists(bool fromFinalize);
47 
48  StatusCode bookCellNoiseHistos();
49 
50  StatusCode fillHistoPerCell();
51  void do2GFit(); // perform double gaussian fit
52  void do2GFit(TH1F* h, double *, TF1 *); // perform double gaussian fit
53 
54  void cleanHistVec();
55 
56  private:
57 
58  void initFirstEvent();
59 
60  ToolHandle<ITileBadChanTool> m_tileBadChanTool;
61 
62  bool m_doOnline{};
63 
64  std::string m_cellsContName;
65 
66  bool m_isFirstEvent{};
67 
68  // x-axis range for the individual cell noise histograms
69  float m_xMin{};
70  float m_xMax{};
71 
72  std::vector<TH1F*> m_tileCellEne[4][64]; // a 2D array of 4x64 partitions X modules, each containing a vector of cells
73 
74  TH2F* m_mapSigma1[4]={};
75  TH2F* m_mapSigma2[4]={};
76  TH2F* m_mapR[4]={};
77  TH2F* m_mapChi2[4]={};
78  TH2F* m_mapChi2prb[4]={};
79  TH2F* m_mapRmsOsig[4]={};
80  TH2F* m_mapRms[4]={};
81 
82  TH1F* m_hPartition1{};
83  TH1F* m_hPartition2{};
84 
85  TH2F* m_h2Partition0{};
86  TH2F* m_h2Partition1{};
87  TH2F* m_h2Partition2{};
88  TH2F* m_h2Partition3{};
89 
90  // TH2D* m_test;
91 };
92 
93 #endif
ManagedMonitorToolBase::bookHistograms
virtual StatusCode bookHistograms()
An inheriting class should either override this function or bookHists().
Definition: ManagedMonitorToolBase.cxx:1407
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
TH2F
Definition: rootspy.cxx:420
TileFatherMonTool.h
TileFatherMonTool
Base class for TileCal online monitoring tools in physics runs.
Definition: TileFatherMonTool.h:33
ManagedMonitorToolBase::procHistograms
virtual StatusCode procHistograms()
An inheriting class should either override this function or finalHists().
Definition: ManagedMonitorToolBase.cxx:1423
ManagedMonitorToolBase::checkHists
virtual StatusCode checkHists(bool calledFromFinalize)
This implementation does nothing; equivalent functionality may be provided by procHists(....
Definition: ManagedMonitorToolBase.cxx:1902
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TileFatherMonTool::initialize
virtual StatusCode initialize() override
The initialize will set some navigation variables and retrieve basic services.
Definition: TileFatherMonTool.cxx:101
TileCellNoiseMonTool::m_tileBadChanTool
ToolHandle< ITileBadChanTool > m_tileBadChanTool
Tile Bad Channel tool.
Definition: TileCellNoiseMonTool.h:60
h
TH1F
Definition: rootspy.cxx:320
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ManagedMonitorToolBase::finalHists
virtual StatusCode finalHists()
Calls procHists( true, true, true ).
Definition: ManagedMonitorToolBase.cxx:1334
ITileBadChanTool
An abstract inteface to get Tile channel and ADC status.
Definition: ITileBadChanTool.h:21
TileCellNoiseMonTool
Class for TileCal noise monitoring at cell level.
Definition: TileCellNoiseMonTool.h:30
ManagedMonitorToolBase::fillHistograms
virtual StatusCode fillHistograms()
An inheriting class should either override this function or fillHists().
Definition: ManagedMonitorToolBase.cxx:1415
TileCellNoiseMonTool::m_cellsContName
std::string m_cellsContName
Definition: TileCellNoiseMonTool.h:64