ATLAS Offline Software
TileCellBuilder.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 #ifndef TILERECUTILS_TILECELLBUILDER_H
6 #define TILERECUTILS_TILECELLBUILDER_H
7 
8 /********************************************************************
9  *
10  * NAME: TileCellBuilder
11  * PACKAGE: offline/TileCalorimeter/TileRecUtils
12  *
13  * AUTHOR : A. Solodkov
14  * CREATED: 20-Jun-2004
15  *
16  * PURPOSE: Create Cells from RawChannels and store them in container
17  *
18  * Input: TileRawChannel (one by one or from TileRawChannelContainer)
19  * Output: Container or collection with TileCells
20  * Parameters:
21  * TileRawChannelContainer - Name of input container
22  *
23  ********************************************************************/
24 
25 // Tile includes
28 #include "TileEvent/TileDQstatus.h"
37 
38 // Calo includes
41 
42 // Atlas includes
49 
50 // Gaudi includes
51 #include "GaudiKernel/ToolHandle.h"
52 #include "GaudiKernel/ServiceHandle.h"
53 
54 // C++ STL includes
55 #include <string>
56 #include <vector>
57 #include <memory>
58 
59 // forward declarations
60 class TileID;
61 class TileTBID;
62 class TileHWID;
63 class TileCablingService;
64 class TileCell;
65 class TileRawChannel;
68 class TileCellCollection;
69 class CaloCellContainer;
70 class TileDQstatus;
71 class TileInfo;
72 
73 
74 
81  public:
82  int nChannels = 0;
83  int nMaskedChannels = 0;
84  int nBadQuality = 0;
85  int nOverflow = 0;
86  int nUnderflow = 0;
87  int nSomeSignal = 0;
88 };
89 
96  public:
100 };
101 
108  : public extends<AthAlgTool, ICaloCellMakerTool>
109 {
110  public:
111  TileCellBuilder(const std::string& type, const std::string& name, const IInterface* parent);
112 
113  virtual ~TileCellBuilder();
114 
115  virtual StatusCode initialize() override;
116 
117  virtual StatusCode finalize() override;
118 
120  virtual StatusCode process (CaloCellContainer* theCellContainer,
121  const EventContext& ctx) const override;
122 
123  void reset(bool fullSizeCont, bool printReset = true);
124 
125  //AlgTool InterfaceID
126  static const InterfaceID& interfaceID();
127 
128 private:
129  // FIXME: Get rid of this abomination.
130  friend class TileHid2RESrcID;
131 
134 
135  // properties
137  "TileRawChannelCnt",
138  "Input Tile raw channel container key"};
139 
141  "TileRawChannelCnt",
142  "Input Tile DSP raw channel container key"};
143 
145  "EventInfo",
146  "EventInfo key"};
147 
148 
149 
151  "TileDQstatus",
152  "TileDQstatus key"};
153 
155  "MBTSContainer",
156  "Output Tile MBTS container key"};
157 
159  "E4prContainer",
160  "Output Tile E4 prime container key"};
161 
163  "EventInfo.TileStatus",
164  "Dummy decoration key to aid scheduling"};
165 
166 
168 
171  float m_zeroEnergy;
175  bool m_of2;
177 
178  // thresholds for parabolic amplitude correction
182 
183  float m_minEneChan[3];
184  float m_eThreshold;
186  float m_maxTime;
187  float m_minTime;
188  float m_maxChi2;
189  float m_minChi2;
197 
198  const TileID* m_tileID;
202 
207  "TileBadChannels", "TileBadChannels", "Input Tile bad channel status"};
208 
213  "TileEMScale", "TileEMScale", "Input Tile EMS calibration constants"};
214 
215  ToolHandle<TileCondToolTiming> m_tileToolTiming{this,
216  "TileCondToolTiming", "TileCondToolTiming", "Tile timing tool"};
217 
218  ToolHandleArray<ITileRawChannelTool> m_noiseFilterTools{this,
219  "NoiseFilterTools", {}, "Tile noise filter tools"};
220 
225  "TileDCS", "TileDCS", "Input Tile DCS status"};
226 
231  "TileCablingSvc", "TileCablingSvc", "The Tile cabling service"};
232 
235 
236  //unsigned int m_bsflags; //!< other flags stored in TileRawChannelContainer
237 
238  // These were accumulated, but never actually used.
239  // They also spoil reentrancy, so leave them commented-out for now.
240  // If this information is needed in the future, these can be changed
241  // to use atomics.
242  //TileDrawerRunStatus m_drawerRunStatus[5][64]; //!< overall status of drawer in whole run
243  //int m_eventErrorCounter[4]; //!< number of events with no errors(0), warnings(1), error(2), total(3)
244 
245  std::vector<CaloAffectedRegionInfo> m_affectedRegionInfo_global;
246  std::vector<CaloAffectedRegionInfo> m_affectedRegionInfo_current_run;
247 
248 
249  struct VecParams
250  {
251  // Type of TileRawChannels (Fit, OF2, etc.)
253 
254  // Unit for TileRawChannels (ADC, pCb, etc.)
256 
257  // max possible time when time correction is applied
258  float m_maxTimeCorr = 75.0;
259 
260  // If true, amplitude is corrected by parabolic function (needed for OF without iterations)
262 
263  // should time be corrected (deltat added from CondDB)
265 
266  // If true, assume OF2 method for amplitude correction, otherwise - OF1
267  bool m_of2;
268  };
269 
271  template<class ITERATOR, class COLLECTION>
272  void build (const EventContext& ctx,
273  TileDrawerEvtStatusArray& drawerEvtStatus,
274  VecParams& params,
275  const ITERATOR & begin,
276  const ITERATOR & end,
277  COLLECTION* coll,
278  TileCellContainer* MBTSCells,
279  TileCellContainer* E4prCells) const;
280 
284  bool maskBadChannel (TileDrawerEvtStatusArray& drawerEvtStatus,
285  const TileDQstatus* DQstatus, const TileDCSState* dcsState,
286  const TileBadChannels* badChannels, TileCell* pCell, HWIdentifier hwid) const;
287  bool maskBadChannels (TileDrawerEvtStatusArray& drawerEvtStatus,
288  const TileDQstatus* DQstatus, const TileDCSState* dcsState,
289  const TileBadChannels* badChannels, TileCell* pCell) const;
290 
291  void correctCell(TileCell* pCell, int correction, int pmt, int gain, float ener, float time,
292  unsigned char iqual, unsigned char qbit, int ch_type) const;
293 
294  unsigned char iquality(float qual) const {
295  return std::min(255, abs((int) qual));
296  } // keep quality within 8 bits make it "unsigned char"
297 
298 
300  unsigned char qbits (TileDrawerEvtStatusArray& drawerEvtStatus,
301  TileFragHash::TYPE RChType,
302  int ros, int drawer,
303  bool count_over, bool good_time, bool good_ener,
304  bool overflow, bool underflow,
305  bool good_overflowfit) const;
306 
307  template<typename T, typename V>
314  int m_pos;
315  typedef typename T::iterator itr_type;
317 
318  public:
319 
321  T* f,
322  const VecParams& params1,
323  T* s,
324  const VecParams& params2,
325  int p)
326  : m_params(params),
327  m_first(f),
328  m_params1(params1),
329  m_second(s),
330  m_params2(params2),
331  m_pos(p) {
332 
333  if (m_first->begin() != m_first->end() && m_pos < 1) {
334  m_pos = 0;
335  m_itr = m_first->begin();
336  } else if (m_second->begin() != m_second->end() && m_pos < 2) {
337  m_pos = 1;
338  m_itr = m_second->begin();
339  // set parameters for second vector
341  } else {
342  m_pos = 2;
343  m_itr = m_second->end();
344  }
345  }
346 
349 
350 
352  if (m_pos != i.m_pos || m_itr != i.m_itr) return true;
353  else return false;
354  }
355 
356  V& operator*() const { return (*m_itr); }
357  V* operator->() const { return (*m_itr); }
358 
360  switch (m_pos) {
361  case 0:
362  if (m_itr != m_first->end()) ++m_itr;
363  if (m_itr != m_first->end()) break;
364  m_itr = m_second->begin();
365  m_pos = 1;
366  // set parameters for second vector
368  if (m_itr != m_second->end()) break;
369  m_pos = 2;
370  // recover parameters for first vector
372  break;
373  case 1:
374  if (m_itr != m_second->end()) ++m_itr;
375  if (m_itr != m_second->end()) break;
376  m_pos = 2;
377  // recover parameters for first vector
379  break;
380  default:
381  break;
382  }
383  return *this;
384  }
385  };
386 
391  bool m_run2;
392 
393  // TileInfo
394  std::string m_infoName;
399 };
400 
401 #endif
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
TileDCSState.h
TileCellBuilder::interfaceID
static const InterfaceID & interfaceID()
Definition: TileCellBuilder.cxx:43
TileCellBuilder::m_ADCmaskValueMinusEps
float m_ADCmaskValueMinusEps
Definition: TileCellBuilder.h:396
TileCell
Definition: TileCell.h:57
SG::WriteDecorHandleKey< xAOD::EventInfo >
TileCablingSvc.h
python.CaloRecoConfig.f
f
Definition: CaloRecoConfig.py:127
TileCellBuilder::DoubleVectorIterator::DoubleVectorIterator
DoubleVectorIterator(VecParams &params, T *f, const VecParams &params1, T *s, const VecParams &params2, int p)
Definition: TileCellBuilder.h:320
TileCellBuilder::m_EventInfoTileStatusKey
SG::WriteDecorHandleKey< xAOD::EventInfo > m_EventInfoTileStatusKey
Definition: TileCellBuilder.h:162
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
TileCellBuilder::VecParams::m_correctTime
bool m_correctTime
Definition: TileCellBuilder.h:264
TileEMScale.h
TileCellBuilder::m_cabling
const TileCablingService * m_cabling
TileCabling instance.
Definition: TileCellBuilder.h:201
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
TileCellCollection
Definition: TileCellCollection.h:12
TileCellBuilder::m_rawChannelContainerKey
SG::ReadHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
Definition: TileCellBuilder.h:136
TileDrawerEvtStatus::nMaskedChannels
int nMaskedChannels
Definition: TileCellBuilder.h:83
TileDrawerEvtStatus::nBadQuality
int nBadQuality
Definition: TileCellBuilder.h:84
TileCellBuilder::m_ampMinThresh
float m_ampMinThresh
correct amplitude if it's above amplitude threshold (in ADC counts)
Definition: TileCellBuilder.h:179
TileCellBuilder::reset
void reset(bool fullSizeCont, bool printReset=true)
Method to reset the options of the TileCellContainer.
Definition: TileCellBuilder.cxx:236
TileCellBuilder::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition: TileCellBuilder.h:144
TileCellBuilder::m_skipGain
int m_skipGain
for two-gain calib runs skip one of two gains
Definition: TileCellBuilder.h:194
ITileRawChannelTool.h
TileCellBuilder::DoubleVectorIterator
Definition: TileCellBuilder.h:308
ReadBchFromCool.pmt
pmt
Definition: ReadBchFromCool.py:62
TileCellBuilder::m_affectedRegionInfo_global
std::vector< CaloAffectedRegionInfo > m_affectedRegionInfo_global
Definition: TileCellBuilder.h:245
TileCellBuilder::m_E4prContainerKey
SG::WriteHandleKey< TileCellContainer > m_E4prContainerKey
Definition: TileCellBuilder.h:158
TileCellBuilder::m_timeMinThresh
float m_timeMinThresh
correct amplitude is time is above time min threshold
Definition: TileCellBuilder.h:180
TileFragHash::TYPE
TYPE
initialize
Definition: TileFragHash.h:33
CaloCondBlobAlgs_fillNoiseFromASCII.gain
gain
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:110
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
TileFragHash.h
TileInfo
Definition: TileInfo.h:49
TileCellBuilder::m_mergeChannels
bool m_mergeChannels
If true, missing raw channels are taken from DSP container.
Definition: TileCellBuilder.h:176
SG::ReadHandleKey< TileRawChannelContainer >
HWIdentifier
Definition: HWIdentifier.h:13
TileDrawerRunStatus::channelsMasked
int channelsMasked
Definition: TileCellBuilder.h:99
TileCondToolTiming.h
TileCellBuilder::E1_TOWER
@ E1_TOWER
Definition: TileCellBuilder.h:388
TileCellBuilder::CELL_CHANNEL
CELL_CHANNEL
Definition: TileCellBuilder.h:387
TileCellBuilder::iquality
unsigned char iquality(float qual) const
Definition: TileCellBuilder.h:294
Example_ReadSampleNoise.drawer
drawer
Definition: Example_ReadSampleNoise.py:39
TileDrawerEvtStatus::nChannels
int nChannels
Definition: TileCellBuilder.h:82
TileCellBuilder::m_badChannelsKey
SG::ReadCondHandleKey< TileBadChannels > m_badChannelsKey
Name of TileBadChannels in condition store.
Definition: TileCellBuilder.h:206
TileCellBuilder::m_tileHWID
const TileHWID * m_tileHWID
Pointer to TileHWID.
Definition: TileCellBuilder.h:200
MbtsDetDescrManager
Definition: MbtsDetDescrManager.h:16
TileCellBuilder::m_emScaleKey
SG::ReadCondHandleKey< TileEMScale > m_emScaleKey
Name of TileEMScale in condition store.
Definition: TileCellBuilder.h:212
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
TileCellBuilder::CELL_TOWER
CELL_TOWER
Definition: TileCellBuilder.h:388
TileHid2RESrcID
This class provides conversion between fragment ID and RESrcID.
Definition: TileHid2RESrcID.h:28
TileCellBuilder::DoubleVectorIterator::m_second
T * m_second
Definition: TileCellBuilder.h:312
TileCellBuilder::m_maskBadChannels
bool m_maskBadChannels
if true=> bad channels are masked
Definition: TileCellBuilder.h:192
TileCellBuilder::m_useDemoCabling
int m_useDemoCabling
Definition: TileCellBuilder.h:195
TileRawChannelContainer.h
TileCellBuilder::m_maxTimeDiff
float m_maxTimeDiff
maximum time difference between the PMTs in the cell
Definition: TileCellBuilder.h:185
tools.zlumi_mc_cf.correction
def correction(mu, runmode, campaign, run=None)
Definition: zlumi_mc_cf.py:4
TileCellBuilder::m_mbtsMgr
const MbtsDetDescrManager * m_mbtsMgr
Pointer to MbtsDetDescrManager.
Definition: TileCellBuilder.h:234
TileHWID
Helper class for TileCal online (hardware) identifiers.
Definition: TileHWID.h:49
TileCellBuilder::m_affectedRegionInfo_current_run
std::vector< CaloAffectedRegionInfo > m_affectedRegionInfo_current_run
Definition: TileCellBuilder.h:246
TileCellBuilder::VecParams::m_correctAmplitude
bool m_correctAmplitude
Definition: TileCellBuilder.h:261
TileDQstatus
Class that holds Data Quality fragment information and provides functions to extract the data quality...
Definition: TileDQstatus.h:49
TileCellBuilder::m_DCSStateKey
SG::ReadCondHandleKey< TileDCSState > m_DCSStateKey
Name of TileDCSState object in condition store.
Definition: TileCellBuilder.h:224
TileCellBuilder::m_minEneChan
float m_minEneChan[3]
channel energy thresholds for masking (normal,gap,mbts)
Definition: TileCellBuilder.h:183
TileCellBuilder::m_timeMaxThresh
float m_timeMaxThresh
correct amplitude is time is below time max threshold
Definition: TileCellBuilder.h:181
TileCellBuilder::VecParams::m_RChType
TileFragHash::TYPE m_RChType
Definition: TileCellBuilder.h:252
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
lumiFormat.i
int i
Definition: lumiFormat.py:92
TileCellBuilder::correctCell
void correctCell(TileCell *pCell, int correction, int pmt, int gain, float ener, float time, unsigned char iqual, unsigned char qbit, int ch_type) const
Compute calibrated energy, time, etc.
Definition: TileCellBuilder.cxx:667
TileDetDescrManager
Definition: TileDetDescrManager.h:33
TileID
Helper class for TileCal offline identifiers.
Definition: TileID.h:68
TileCellBuilder::DoubleVectorIterator::operator=
DoubleVectorIterator & operator=(const DoubleVectorIterator &other)=default
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TileCellBuilder::m_tileID
const TileID * m_tileID
Pointer to TileID.
Definition: TileCellBuilder.h:198
TileCellBuilder::VecParams::m_maxTimeCorr
float m_maxTimeCorr
Definition: TileCellBuilder.h:258
TileCellBuilder::m_infoName
std::string m_infoName
Definition: TileCellBuilder.h:394
AthAlgTool.h
TileCellBuilder::m_tileMgr
const TileDetDescrManager * m_tileMgr
Pointer to TileDetDescrManager.
Definition: TileCellBuilder.h:233
TileCellBuilder::m_notUpgradeCabling
bool m_notUpgradeCabling
Definition: TileCellBuilder.h:390
TileRawChannel
Definition: TileRawChannel.h:35
TileCellBuilder::DoubleVectorIterator::DoubleVectorIterator
DoubleVectorIterator(const DoubleVectorIterator &i)=default
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TileCellBuilder::m_maxTime
float m_maxTime
maximum time for the PMTs in the cels
Definition: TileCellBuilder.h:186
TileCellBuilder::m_minChi2
float m_minChi2
minimum chi2 for the PMTs in the cels
Definition: TileCellBuilder.h:189
maskDeadModules.ros
ros
Definition: maskDeadModules.py:35
TileCablingService
Definition: TileCablingService.h:23
TileDQstatus.h
Information produced by TileDQstatusAlg (used to be done by TileBeamInfoProvider).
TileCellBuilder::m_maxChi2
float m_maxChi2
maximum chi2 for the PMTs in the cels
Definition: TileCellBuilder.h:188
TileRawChannelUnit::UNIT
UNIT
Definition: TileRawChannelUnit.h:16
TileCellBuilder::m_tileTBID
const TileTBID * m_tileTBID
Pointer to TileTBID.
Definition: TileCellBuilder.h:199
TileCellBuilder::DoubleVectorIterator::m_params2
const VecParams & m_params2
Definition: TileCellBuilder.h:313
TileCellBuilder::DoubleVectorIterator::operator->
V * operator->() const
Definition: TileCellBuilder.h:357
min
#define min(a, b)
Definition: cfImp.cxx:40
TileCellBuilder::m_dspRawChannelContainerKey
SG::ReadHandleKey< TileRawChannelContainer > m_dspRawChannelContainerKey
Definition: TileCellBuilder.h:140
TileCellBuilder::m_run2plus
bool m_run2plus
Definition: TileCellBuilder.h:398
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
TileCellBuilder::TileDrawerEvtStatusArray
TileDrawerEvtStatus TileDrawerEvtStatusArray[5][64]
status of every drawer
Definition: TileCellBuilder.h:133
TileCellBuilder::DoubleVectorIterator::m_params1
const VecParams & m_params1
Definition: TileCellBuilder.h:311
TileDrawerEvtStatus::nOverflow
int nOverflow
Definition: TileCellBuilder.h:85
HWIdentifier.h
TileCellBuilder::DoubleVectorIterator::m_first
T * m_first
Definition: TileCellBuilder.h:310
TileCellBuilder::m_of2
bool m_of2
If true, assume OF2 method for amplitude correction, otherwise - OF1.
Definition: TileCellBuilder.h:175
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TileBadChannels
Condition object to keep Tile channel and ADC status.
Definition: TileBadChannels.h:24
TileCellBuilder::m_zeroEnergy
float m_zeroEnergy
energy to store in every PMT if both PMT are bad
Definition: TileCellBuilder.h:171
TileCellBuilder::m_correctTime
bool m_correctTime
should time be corrected (deltat added from CondDB)
Definition: TileCellBuilder.h:173
TileCellBuilder::m_eneForTimeCut
float m_eneForTimeCut
keep time for channels with energy above cut
Definition: TileCellBuilder.h:169
TileDrawerRunStatus::drawerAbsent
int drawerAbsent
Definition: TileCellBuilder.h:97
TileCellBuilder::maskBadChannels
bool maskBadChannels(TileDrawerEvtStatusArray &drawerEvtStatus, const TileDQstatus *DQstatus, const TileDCSState *dcsState, const TileBadChannels *badChannels, TileCell *pCell) const
Definition: TileCellBuilder.cxx:793
TileCellBuilder::m_fullSizeCont
bool m_fullSizeCont
Definition: TileCellBuilder.h:191
TileCellBuilder::initialize
virtual StatusCode initialize() override
Initializer.
Definition: TileCellBuilder.cxx:160
CaloCellContainer
Container class for CaloCell.
Definition: CaloCellContainer.h:55
TileCellBuilder::m_run2
bool m_run2
Definition: TileCellBuilder.h:391
TileCellBuilder::build
void build(const EventContext &ctx, TileDrawerEvtStatusArray &drawerEvtStatus, VecParams &params, const ITERATOR &begin, const ITERATOR &end, COLLECTION *coll, TileCellContainer *MBTSCells, TileCellContainer *E4prCells) const
< method to process raw channels from a given vector and store them in collection
Definition: TileCellBuilder.cxx:1029
EventInfo.h
TileCellBuilder
This class creates Cells from RawChannels and stores them in a container.
Definition: TileCellBuilder.h:109
TileCellBuilder::VecParams::m_RChUnit
TileRawChannelUnit::UNIT m_RChUnit
Definition: TileCellBuilder.h:255
TileRawChannelUnit.h
ICaloCellMakerTool.h
TileCellBuilder::m_dspRawChannelContainer
std::string m_dspRawChannelContainer
Definition: TileCellBuilder.h:167
TileCellBuilder::DoubleVectorIterator::m_params
VecParams & m_params
Definition: TileCellBuilder.h:309
SG::ReadCondHandleKey< TileBadChannels >
TileCellBuilder::DoubleVectorIterator::m_pos
int m_pos
Definition: TileCellBuilder.h:314
TileCellBuilder::DoubleVectorIterator::operator!=
bool operator!=(const DoubleVectorIterator &i)
Definition: TileCellBuilder.h:351
TileDrawerEvtStatus::nSomeSignal
int nSomeSignal
Definition: TileCellBuilder.h:87
TileCellBuilder::VecParams
Definition: TileCellBuilder.h:250
TileCellBuilder::m_towerE1
int m_towerE1
Definition: TileCellBuilder.h:389
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
TileCellBuilder::DoubleVectorIterator::itr_type
T::iterator itr_type
Definition: TileCellBuilder.h:315
TileCellBuilder::m_noiseFilterTools
ToolHandleArray< ITileRawChannelTool > m_noiseFilterTools
Definition: TileCellBuilder.h:218
CaloSwCorrections.time
def time(flags, cells_name, *args, **kw)
Definition: CaloSwCorrections.py:242
TileDrawerRunStatus::drawerMasked
int drawerMasked
Definition: TileCellBuilder.h:98
TileCellBuilder::m_MBTSContainerKey
SG::WriteHandleKey< TileCellContainer > m_MBTSContainerKey
Definition: TileCellBuilder.h:154
TileCellBuilder::DoubleVectorIterator::m_itr
itr_type m_itr
Definition: TileCellBuilder.h:316
TileCellBuilder::m_qualityCut
int m_qualityCut
cut on channel quality (set energy to m_zeroEnergy for them)
Definition: TileCellBuilder.h:172
TileCellBuilder::m_eThreshold
float m_eThreshold
cell energy threshold to consider the cell
Definition: TileCellBuilder.h:184
TileDrawerEvtStatus
This class keep detailed status info about one drawer in a given event.
Definition: TileCellBuilder.h:80
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TileCellBuilder::maskBadChannel
bool maskBadChannel(TileDrawerEvtStatusArray &drawerEvtStatus, const TileDQstatus *DQstatus, const TileDCSState *dcsState, const TileBadChannels *badChannels, TileCell *pCell, HWIdentifier hwid) const
method to check if channels are good or bad.
Definition: TileCellBuilder.cxx:737
TileCellBuilder::m_eneForTimeCutMBTS
float m_eneForTimeCutMBTS
similar cut for MBTS in pC
Definition: TileCellBuilder.h:170
TileCellBuilder::m_cablingSvc
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
Definition: TileCellBuilder.h:230
TileCellBuilder::qbits
unsigned char qbits(TileDrawerEvtStatusArray &drawerEvtStatus, TileFragHash::TYPE RChType, int ros, int drawer, bool count_over, bool good_time, bool good_ener, bool overflow, bool underflow, bool good_overflowfit) const
method to compute the cell quality bits
Definition: TileCellBuilder.cxx:697
TileCellBuilder::m_correctAmplitude
bool m_correctAmplitude
If true, amplitude is corrected by parabolic function (needed for OF without iterations)
Definition: TileCellBuilder.h:174
TileCellBuilder::m_checkDCS
bool m_checkDCS
Definition: TileCellBuilder.h:196
TileDCSState
Condition object to keep Tile DCS status from DB.
Definition: TileDCSState.h:24
beamspotman.qual
qual
Definition: beamspotman.py:481
TileCellBuilder::m_thresholdNotSet
bool m_thresholdNotSet
bool variable to check whether some threshold have been set
Definition: TileCellBuilder.h:190
TileCellBuilder::DoubleVectorIterator::operator*
V & operator*() const
Definition: TileCellBuilder.h:356
TileCellBuilder::m_ADCmaskValuePlusEps
float m_ADCmaskValuePlusEps
Definition: TileCellBuilder.h:397
TileCellBuilder::m_DQstatusKey
SG::ReadHandleKey< TileDQstatus > m_DQstatusKey
Definition: TileCellBuilder.h:150
TileTBID
Helper class for TileCal offline identifiers of ancillary testbeam detectors and MBTS.
Definition: Calorimeter/CaloIdentifier/CaloIdentifier/TileTBID.h:65
TileBadChannels.h
TileCellBuilder::~TileCellBuilder
virtual ~TileCellBuilder()
Destructor.
Definition: TileCellBuilder.cxx:154
IOVSvcDefs.h
defines and typedefs for IOVSvc
TileDrawerRunStatus
This class keep detailed status info about one drawer in whole run.
Definition: TileCellBuilder.h:95
PowhegControl_ttFCNC_NLO.params
params
Definition: PowhegControl_ttFCNC_NLO.py:226
TileCellBuilder::TileCellBuilder
TileCellBuilder(const std::string &type, const std::string &name, const IInterface *parent)
Contructor.
Definition: TileCellBuilder.cxx:48
TileCellBuilder::m_fakeCrackCells
bool m_fakeCrackCells
if true=> fake E3/E4 cells added
Definition: TileCellBuilder.h:193
TileDrawerEvtStatus::nUnderflow
int nUnderflow
Definition: TileCellBuilder.h:86
TileContainer
Definition: TileContainer.h:38
TileCellBuilder::VecParams::m_of2
bool m_of2
Definition: TileCellBuilder.h:267
TileCellBuilder::m_minTime
float m_minTime
minimum time for the PMTs in the cels
Definition: TileCellBuilder.h:187
TileCellBuilder::E1_TOWER_UPGRADE_ABC
@ E1_TOWER_UPGRADE_ABC
Definition: TileCellBuilder.h:388
CaloAffectedRegionInfo.h
object to store information about affected regions in calorimeter
TileCellBuilder::finalize
virtual StatusCode finalize() override
Definition: TileCellBuilder.cxx:265
TileCellBuilder::m_tileToolTiming
ToolHandle< TileCondToolTiming > m_tileToolTiming
Definition: TileCellBuilder.h:215
TileCellBuilder::m_tileInfo
const TileInfo * m_tileInfo
Definition: TileCellBuilder.h:395
TSU::T
unsigned long long T
Definition: L1TopoDataTypes.h:35
TileCellBuilder::DoubleVectorIterator::operator++
DoubleVectorIterator & operator++()
Definition: TileCellBuilder.h:359
TileCellBuilder::process
virtual StatusCode process(CaloCellContainer *theCellContainer, const EventContext &ctx) const override
method to process all raw channels and store them in container
Definition: TileCellBuilder.cxx:272
TileCellBuilder::E1_CHANNEL
@ E1_CHANNEL
Definition: TileCellBuilder.h:387
TileCellContainer.h
ServiceHandle< TileCablingSvc >