11#ifndef LARCELLREC_LARNOISYROTOOL_H
12#define LARCELLREC_LARNOISYROTOOL_H 1
30#include <unordered_map>
43 using base_class::base_class;
51 virtual std::unique_ptr<LArNoisyROSummary>
process(
const EventContext&,
const CaloCellContainer*,
const std::set<unsigned int>*,
63 unsigned int preamp = channel / 4;
69 for (
size_t i = 0; i < 32; i++)
86 std::unordered_map<unsigned int, unsigned int>
m_mapPSFEB;
98 Gaudi::Property<unsigned int>
m_CellQualityCut{
this,
"CellQualityCut", 4000,
"Qfactor value above which a channel is considered bad"};
104 Gaudi::Property<unsigned int>
m_BadChanPerFEB{
this,
"BadChanPerFEB", 30,
"number of bad channels to declare a FEB noisy"};
106 Gaudi::Property<unsigned int>
m_MinBadFEB{
this,
"BadFEBCut", 3,
"min number of bad FEB to put LAr warning in event info"};
109 " Qfactor value above which (>=) a channel is considered with a saturated Qfactor"};
112 "Count saturated Qfactor cells above this energy cut (absolute value)"};
114 Gaudi::Property<unsigned int>
m_SaturatedCellTightCut{
this,
"SaturatedCellTightCut", 20,
"min number of saturated Qfactor cells to declare an event bad"};
116 Gaudi::Property<bool>
m_doHVline{
this,
"DoHVflag",
true,
"do HVline flagging"};
118 Gaudi::Property<float>
m_BadChanFracPerHVline{
this,
"BadChanFracPerHVline", 0.25,
"fraction of bad cells in one HV line"};
120 Gaudi::Property<unsigned int>
m_MinBadHV{
this,
"BadHVCut", 3,
" min number of bad HV lines"};
122 Gaudi::Property<unsigned int>
m_MNBLooseCut{
this,
"MNBLooseCut", 5,
"Loose cut on number of cells above CellQualityCut"};
123 Gaudi::Property<unsigned int>
m_MNBTightCut{
this,
"MNBTightCut", 17,
"Thight cut on number of cells above CellQualityCut"};
Container class for CaloCell.
Helper class for offline cell identifiers.
This class provides the client interface for accessing the detector description information common to...
Helper for the Liquid Argon Calorimeter cell at the electrode level.
const std::string process