ATLAS Offline Software
Loading...
Searching...
No Matches
CscCalibMonToolSlope.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUONCALIBMONITORING_CSCCALIBMONTOOLSLOPE_H
6#define MUONCALIBMONITORING_CSCCALIBMONTOOLSLOPE_H
7
9
12#include "GaudiKernel/MsgStream.h"
13
15class TH1F;
16class TH1I;
17class TProfile;
19
38// ^ modifying const histograms in StoreGate
39{
40
41 public:
43 CscCalibMonToolSlope (const std::string & type, const std::string & name,
44 const IInterface* parent);
45
48
50 StatusCode initialize();
51
53 StatusCode finalize();
54
55
57 StatusCode bookHistograms();
58
59 private:
63 virtual StatusCode handleParameter(const CscCalibResultCollection* parVals);
64
65
67 virtual StatusCode postProc();
68
70 StatusCode makeFracGraphs(const CscCalibReportSlope & slopeReport);
71
73 StatusCode findDeadChannels(const CscCalibReportSlope & slopeReport);
74
75 //Leftover from when I was using more arrays. I should get rid of this or replace it with something more vector friendly
76 //Maybe when I start using the slope program again more.. 2009-09-24
77 std::vector<float> & setArray(std::vector<float> & array , const float &value, const int &numEntries);
78
80 void genNeighborRatios(const std::vector<float> & source, std::vector<float> & ratios) const;
81
82 private:
85
88
90 float m_slopeMaxDiff{},m_interceptMax{},m_chi2Max{}, m_fracDevMax{}, m_peaktMaxDiff{};
91
93 int m_slopeBadBin{1}, m_interceptBadBin{2}, m_chi2BadBin{3}, m_peaktBadBin{4}, m_fracBadBin{5},
94 m_deadBadBin{6},m_missingBadBin{7};
95
96 int m_totalLiveBin{1}, m_totalDeadBin{2}, m_newLiveBin{3}, m_newDeadBin{4};
98 TH1I *m_h_numBad{};
99
101 TH1F *m_h_slopeCompareOverview{}, *m_h_interceptOverview{},*m_h_chi2Overview{},
103 //TH1F* m_h_peaktCompareOverview;
104
107
109 std::vector<TProfile*> m_fracProfs;
110
112 HistCollection *m_slopeNewColl{}, *m_slopeOldColl{}, *m_slopeDiffColl{};
113 HistCollection *m_peaktNewColl{}, *m_peaktOldColl{}, *m_peaktDiffColl{};
116 HistCollection *m_deadNewColl{}, *m_deadDiffColl{};
118
119
121
123
125 std::string m_histKey;
126
128 std::string m_subDir;
129
132
134 //std::set<int> m_expectedHashIdsAll, m_expectedHashIdsPrec;
135};
136
137
138#endif
Define macros for attributes used to control the static checker.
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
virtual StatusCode postProc()
Run after handleParameter.
virtual StatusCode handleParameter(const CscCalibResultCollection *parVals)
Should be written by user in derived class.
virtual StatusCode initialize()
initializes services, tools, etc.
CscCalibMonToolBase(const std::string &type, const std::string &name, const IInterface *parent)
constructor
virtual StatusCode finalize()
deletes private members
virtual StatusCode bookHistograms()
Standard function for a ManagedMonitorToolBase.
HistCollection * m_peaktNewColl
float m_slopeMaxDiff
Maximum deviation from expected values allowed before m_h_numBad is incremented.
HistCollection * m_slopeNewColl
HistCollections.
HistCollection * m_fitResColl
TH1I * m_h_numBad
Stores number of channels that are bad in several categories.
HistCollection * m_deadNewColl
std::string m_histKey
Storegate key for pedestal amplitude histograms.
int m_deadPulserLevelCutoff
Dead channel finding user defined parameters.
CscCalibMonToolSlope(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
int m_slopeBadBin
Bin corresponding to each category in m_h_numbad.
HistCollection * m_slopeRatioColl
DataVector< HistCollection > m_ampColls
std::string m_subDir
Name of subdirectory under EXPERT or SHIFT that the histograms will be stored.
std::vector< TProfile * > m_fracProfs
Holds fractional deviation TProfiles.
bool m_histAttenLevels
Histogram all values for all histograms.
TH1F * m_h_deadOverview
Overview of dead channels and changes.
TH1F * m_h_slopeCompareOverview
Histograms that simply histogram all entries for a value.
HistCollection * m_interceptColl
bool m_doNeighborRatios
Do neighbor ratios.
Derived DataVector<T>.
Definition DataVector.h:795
TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
Contains an array with data on a per-channel basis, as well as various histograms that give different...