Belle II Software development
eclWaveformTemplateCalibrationC2Algorithm.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11/* Basf2 headers. */
12#include <calibration/CalibrationAlgorithm.h>
13
14namespace Belle2 {
19 namespace ECL {
20
23 public:
24
27
30
32 void setOutputName(const std::string& outputName) {m_outputName = outputName;}
33
35 std::string getOutputName() {return m_outputName;}
36
38 void setFirstCellID(int firstCellID) {m_firstCellID = firstCellID;}
39
41 void setLastCellID(int lastCellID) {m_lastCellID = lastCellID;}
42
44 void setAttemptLimit(int AttemptLimit) {m_AttemptLimit = AttemptLimit;}
45
47 void setParamLimitFactor(int ParamLimitFactor) {m_ParamLimitFactor = ParamLimitFactor;}
48
50 void setCollectorLimit(int CollectorLimit) {m_CollectorLimit = CollectorLimit;}
51
52 protected:
53
55 virtual EResult calibrate() override;
56
57 private:
58
59 std::string m_outputName = "eclWaveformTemplateCalibrationC2Algorithm.root";
64 double m_ParamLimitFactor = 0.25;
65 int m_AttemptLimit = 10;
66 const int m_NumberofADCPoints = 31;
67 const int m_SimutaniousFitLimit = 3;
68 const int m_TotalCountsThreshold = 3;
70 double m_ParLimitFactorLimit = 2.1;
71 double m_ResLimitIterator = 1.5;
72 const double m_BaseParamLimitFactor = 0.25;
74 };
75 }
77} // namespace Belle2
78
79
Base class for calibration algorithms.
EResult
The result of calibration.
void setOutputName(const std::string &outputName)
Setter for m_outputName.
int m_AttemptLimit
Number of attempts before increasing parameter limits or resLimt.
double m_ParamLimitFactor
Factor to determine parameter limits in fit.
void setParamLimitFactor(int ParamLimitFactor)
Setter for m_ParamLimitFactor.
void setCollectorLimit(int CollectorLimit)
Setter for m_CollectorLimit.
const int m_SimutaniousFitLimit
Min number waveforms required for simultaneous fit.
const int m_TotalCountsThreshold
Min number waveforms required per crystal.
Abstract base class for different kinds of events.