Belle II Software  release-08-00-10
eclEdgeAlgorithm.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 /* ECL headers. */
12 #include <ecl/dbobjects/ECLCrystalCalib.h>
13 
14 /* Basf2 headers. */
15 #include <calibration/CalibrationAlgorithm.h>
16 #include <framework/database/DBObjPtr.h>
17 
18 namespace Belle2 {
23  namespace ECL {
24 
27  public:
28 
31 
33  virtual ~eclEdgeAlgorithm() {}
34 
35  protected:
36 
38  virtual EResult calibrate() override;
39 
40  private:
41  const short m_crystalsPerRing[69] = {
42  48, 48, 64, 64, 64, 96, 96, 96, 96, 96, 96, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 96, 96, 96, 96, 96, 64, 64, 64
43  };
44  };
45  }
47 } // namespace Belle2
48 
49 
Base class for calibration algorithms.
EResult
The result of calibration.
..Obtain payloads specifying the location of the edges of each ECL crystal
virtual ~eclEdgeAlgorithm()
..Destructor
const short m_crystalsPerRing[69]
crystals per thetaID
virtual EResult calibrate() override
..Run algorithm
Abstract base class for different kinds of events.