5#ifndef TILEMONITORING_TILEDIGITSMONITORALGORITHM_H
6#define TILEMONITORING_TILEDIGITSMONITORALGORITHM_H
29 virtual StatusCode
fillHistograms(
const EventContext& ctx)
const override;
38 void checkCRC(
bool isCalibMode, uint32_t crc32, uint32_t crcMask,
int nDMU,
int ros,
int drawer)
const;
39 StatusCode checkROD_CRC(
const TileDQstatus* dqStatus,
const EventContext& ctx)
const;
40 bool checkCorruptedData(
const std::vector<std::reference_wrapper<
const std::vector<uint32_t>>>& headerWordsAll,
41 uint32_t fragStatus,
int ros,
int drawer, std::vector<std::vector<bool>>& corruptedData)
const;
42 void checkBCID(
const std::vector<std::reference_wrapper<
const std::vector<uint32_t>>>& headerWordsAll,
43 uint32_t rodBCID,
int ros,
int drawer)
const;
46 "fillPedestalDifference",
true,
"Fill pedestal difference between monitored pedestal and one from DB"};
49 "fillErrorsHistograms",
true,
"Fill histograms per channel/gain with DMU, CRC, BCID errors"};
52 "fillPedestalHistograms",
true,
"Fill histograms per channel/gain with pedestals"};
55 "fillHighFrequencyNoiseHistograms",
true,
"Fill histograms per channel/gain with HFN"};
58 "fillSamplesHistograms",
true,
"Fill histograms per channel/gain with samples"};
61 "fillProfileHistograms",
true,
"Fill histograms per channel/gain with profile"};
64 "fillEventModule32Histograms",
true,
"Fill histograms per channel/gain with event number % 32"};
67 "fillCorrelationsHistograms",
true,
"Fill histograms which are used to produce correlation and corvariance plots"};
70 "TileDigitsContainer",
"TileDigitsCnt",
"Input Tile digits container key"};
73 "TileRawChannelContainer",
"",
"Input Tile raw channel container key"};
76 "TileCondToolNoiseSample",
"TileCondToolNoiseSample",
"Tile sample noise tool"};
Header file to be included by clients of the Monitored infrastructure.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
TileCalibMonitorAlgorithm(const std::string &name, ISvcLocator *svcLocator)
Class that holds Data Quality fragment information and provides functions to extract the data quality...
Gaudi::Property< bool > m_fillProfileHistograms
Gaudi::Property< bool > m_fillPedestalHistograms
std::vector< std::vector< int > > m_profGroups
float m_ADCmaxMinusEpsilon
SG::ReadHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
std::vector< std::vector< int > > m_crcErrGroups
std::vector< std::vector< int > > m_samplesGroups
virtual ~TileDigitsMonitorAlgorithm()=default
std::vector< std::vector< std::vector< int > > > m_bcidGroups
Gaudi::Property< bool > m_fillSamplesHistograms
std::vector< int > m_meanSampleGroups
Gaudi::Property< bool > m_fillHighFrequencyNoiseHistograms
std::vector< int > m_meanSampleProdGroups
std::vector< std::vector< int > > m_crcGlobalGroups
Gaudi::Property< bool > m_fillPedestalDifference
std::vector< std::vector< int > > m_pedGroups
SG::ReadHandleKey< TileDigitsContainer > m_digitsContainerKey
ToolHandle< TileCondToolNoiseSample > m_tileCondToolNoiseSample
Gaudi::Property< bool > m_fillErrorsHistograms
Gaudi::Property< bool > m_fillEventModule32Histograms
std::vector< std::vector< int > > m_evtMod32Groups
TileCalibMonitorAlgorithm(const std::string &name, ISvcLocator *svcLocator)
Gaudi::Property< bool > m_fillCorrelationsHistograms
std::vector< std::vector< int > > m_hfnGroups
std::vector< std::vector< std::vector< int > > > m_errorsGroups
std::vector< std::vector< std::vector< int > > > m_bcidErrGroups