26 ATH_MSG_FATAL(
"LArAccumulatedCalibDigitContainerKey must be set");
27 return StatusCode::FAILURE;
33 return StatusCode::FAILURE;
38 std::vector<std::string>
part;
56 std::unordered_set<unsigned int> chanids;
73 if(pLArAccCalibDigitContainer.
isValid()){
78 if(pLArAccCalibDigitContainer->empty())
return StatusCode::SUCCESS;
81 for (
auto ijDig: * pLArAccCalibDigitContainer) {
84 chanids.emplace(chid);
88 unsigned ntriggers = ijDig->nTriggers();
89 std::vector <double> sample;
92 std::vector <double> samplesum;
94 for (
auto samplesum_it: ijDig->sampleSum()) {
95 samplesum.push_back((
double)(samplesum_it));
97 sample.push_back((
double)(samplesum_it)/ntriggers);
101 double samplemax = * std::max_element(sample.begin(), sample.end());
102 double samplemin = * std::min_element(sample.begin(), sample.end());
105 delay = ijDig->delay();
108 sample_max = samplemax;
109 sample_min = samplemin;
117 unsigned int subdet = partitionNb / 2;
121 if (samplemax <= 3000.) {
122 sample_max30 = samplemax;
135 return StatusCode::SUCCESS;
140 unsigned int part = be*2+pn;
143 if ((ft == 3 || ft == 10 || ft == 16 || ft == 22) && (sl > 2))
part = be*2+pn + 2;
144 if (ft == 6)
part = be*2 + pn + 4;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
double delay(std::size_t d)
Header file to be included by clients of the Monitored infrastructure.
const ServiceHandle< StoreGateSvc > & detStore() const
virtual StatusCode initialize() override
initialize
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
ToolHandleArray< GenericMonitoringTool > m_tools
Array of Generic Monitoring Tools.
value_type get_compact() const
Get the compact id.
Identifier32 get_identifier32() const
Get the 32-bit version Identifier, will be invalid if >32 bits needed.
std::vector< std::map< std::string, int > > m_histoGroups
virtual StatusCode initialize() override
Overwrite dummy method from AlgTool.
LArCalibDelayMonAlg(const std::string &name, ISvcLocator *pSvcLocator)
unsigned int returnPartition(int be, int pn, int ft, int sl) const
Gaudi::Property< std::vector< std::string > > m_partitions
Gaudi::Property< std::string > m_MonGroupName
SG::ReadHandleKey< LArAccumulatedCalibDigitContainer > m_accCalibDigitContainerKey
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Gaudi::Property< std::vector< std::string > > m_SubDetNames
const LArOnlineID * m_onlineHelper
Declare a monitored scalar variable.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
std::vector< V > buildToolMap(const ToolHandleArray< GenericMonitoringTool > &tools, const std::string &baseName, int nHist)
Builds an array of indices (base case)
void fill(H5::Group &out_file, size_t iterations)