Belle II Software  release-05-02-19
eclMergingCrystalEAlgorithm.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Take the previously created DBObjects for ECL crystal energy from *
6  * gamma pair events, mumu events, and bhabha events. Use these to create *
7  * the final values for ECLCrystalEnergy DBObjects *
8  * *
9  * Author: The Belle II Collaboration *
10  * Contributors: David Dossett, Christopher Hearty *
11  * *
12  * This software is provided "as is" without any warranty. *
13  **************************************************************************/
14 
15 #pragma once
16 #include <framework/database/DBObjPtr.h>
17 #include <calibration/CalibrationAlgorithm.h>
18 #include <ecl/dbobjects/ECLCrystalCalib.h>
19 
20 namespace Belle2 {
25  namespace ECL {
26 
28  class eclMergingCrystalEAlgorithm : public CalibrationAlgorithm {
29  public:
30 
33 
35  virtual ~eclMergingCrystalEAlgorithm() {}
36 
37  protected:
38 
40  virtual EResult calibrate() override;
41 
42  private:
43 
45  const std::string m_payloadName = "ECLCrystalEnergy";
46 
49 
52 
55 
58 
60  const int m_numCrystals = 8736;
61  };
62  }
64 } // namespace Belle2
65 
66 
Belle2::ECL::eclMergingCrystalEAlgorithm::calibrate
virtual EResult calibrate() override
..Run algorithm
Definition: eclMergingCrystalEAlgorithm.cc:23
Belle2::ECL::eclMergingCrystalEAlgorithm::m_existingMuMu
DBObjPtr< ECLCrystalCalib > m_existingMuMu
ECLCrystalEnergyMuMu payloads that we want to read from the DB.
Definition: eclMergingCrystalEAlgorithm.h:63
Belle2::ECL::eclMergingCrystalEAlgorithm::eclMergingCrystalEAlgorithm
eclMergingCrystalEAlgorithm()
..Constructor
Definition: eclMergingCrystalEAlgorithm.cc:14
Belle2::ECL::eclMergingCrystalEAlgorithm::m_existing
DBObjPtr< ECLCrystalCalib > m_existing
ECLCrystalEnergy payloads that we want to read from the DB.
Definition: eclMergingCrystalEAlgorithm.h:69
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::ECL::eclMergingCrystalEAlgorithm::m_existingGammaGamma
DBObjPtr< ECLCrystalCalib > m_existingGammaGamma
ECLCrystalEnergyGammaGamma payloads that we want to read from the DB.
Definition: eclMergingCrystalEAlgorithm.h:60
Belle2::ECL::eclMergingCrystalEAlgorithm::~eclMergingCrystalEAlgorithm
virtual ~eclMergingCrystalEAlgorithm()
..Destructor
Definition: eclMergingCrystalEAlgorithm.h:47
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ECL::eclMergingCrystalEAlgorithm::m_payloadName
const std::string m_payloadName
The output payload name.
Definition: eclMergingCrystalEAlgorithm.h:57
Belle2::CalibrationAlgorithm::EResult
EResult
The result of calibration.
Definition: CalibrationAlgorithm.h:50
Belle2::ECL::eclMergingCrystalEAlgorithm::m_existing5x5
DBObjPtr< ECLCrystalCalib > m_existing5x5
ECLCrystalEnergyee5x5 payloads that we want to read from the DB.
Definition: eclMergingCrystalEAlgorithm.h:66
Belle2::ECL::eclMergingCrystalEAlgorithm::m_numCrystals
const int m_numCrystals
Number of Crystals expected.
Definition: eclMergingCrystalEAlgorithm.h:72