ATLAS Offline Software
Loading...
Searching...
No Matches
LArCalibDigitsAccumulator.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
17
18
19#ifndef LARCALIBDIGITSACCUMULATOR
20#define LARCALIBDIGITSACCUMULATOR
21#include <sstream>
22
24#include "GaudiKernel/ToolHandle.h"
34{
35
36public:
37 LArCalibDigitsAccumulator (const std::string& name, ISvcLocator* pSvcLocator);
38 StatusCode initialize();
39 StatusCode execute();
40 StatusCode finalize();
41
49 public:
50 unsigned int m_ntrigger;
52 unsigned int m_onlineId;
53 std::vector< uint64_t > m_sum;
54 std::vector< uint64_t > m_sum2;
56 };
57
58private:
59
60 static std::string getPatternName(const std::string& gain, bool isPulsed, int delay, int dac);
61
62 ToolHandle<ICaloSuperCellIDTool> m_sc2ccMappingTool;
63
64 SG::ReadCondHandleKey<LArCalibLineMapping> m_calibMapKey{this,"CalibCablingKey","LArCalibLineMap","SG Key of LArCalibLineMapping object"};
65
66
67 SG::ReadCondHandleKey<LArCalibLineMapping> m_calibMapSCKey{this,"CalibMapSCKey","LArCalibIdMapSC","SG Key of calib line mapping object"};
68
69
70 SG::ReadCondHandleKey<LArOnOffIdMapping> m_cablingKey{this, "OnOffMap", "LArOnOffIdMap", "SG key for mapping object"};
71 SG::ReadCondHandleKey<LArOnOffIdMapping> m_cablingKeySC{this,"ScCablingKey","LArOnOffIdMapSC","SG Key of SC LArOnOffIdMapping object"};
72
74
79
83 std::string m_calibAccuDigitContainerName; // do we need this?
84
88 std::vector<std::string> m_keylist;
89
93 unsigned int m_nStepTrigger;
94
99
104
108 bool m_isSC;
109
114
119
123 std::map<std::string, std::vector<LArAccumulated> > m_Accumulated_map;
124
128 unsigned int m_event_counter;
129 unsigned int m_eventNb = 0U;
130
135};
136
137#endif
double delay(std::size_t d)
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
const LArOnlineID_Base * m_onlineHelper
bool m_isSC
Tells you whether you run on SuperCells or Cells.
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKeySC
unsigned int m_nStepTrigger
Number of intermediate accumulations (JO property)
double m_delayScale
Set delay scale.
std::string m_calibAccuDigitContainerName
LArAccumulatedCalibDigitContainer name.
bool m_keepFullyPulsedSC
Tells you whether you keep only fully pulsed supercells or all supercells.
bool m_keepPulsed
Tells you whether you keep only pulsed cells or all cells.
double m_DropPercentTrig
Percentage of the used triggers that we will skip over at the end, in order ot ensure that the accumu...
static std::string getPatternName(const std::string &gain, bool isPulsed, int delay, int dac)
SG::ReadCondHandleKey< LArCalibLineMapping > m_calibMapSCKey
LArCalibDigitsAccumulator(const std::string &name, ISvcLocator *pSvcLocator)
int m_sampleShift
Samples to shift by, usually used in the case of SCs.
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
ToolHandle< ICaloSuperCellIDTool > m_sc2ccMappingTool
std::map< std::string, std::vector< LArAccumulated > > m_Accumulated_map
Vector (index=hash ID) of accumulation quantities.
unsigned int m_event_counter
Event counter.
SG::ReadCondHandleKey< LArCalibLineMapping > m_calibMapKey
std::vector< std::string > m_keylist
list of key for input digit container (=gain)
Helper for the Liquid Argon Calorimeter cell identifiers.