Belle II Software  light-2403-persian
TrackingEnergyLossCorrection.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 #include <framework/core/Module.h>
12 #include <framework/database/DBObjPtr.h>
13 #include <analysis/dbobjects/ParticleWeightingLookUpTable.h>
14 
15 #include <analysis/dataobjects/Particle.h>
16 
17 namespace Belle2 {
27  public:
32 
36  virtual void initialize() override;
37 
41  virtual void event() override;
42 
43  private:
48  double getCorrectionValue(Particle* particle);
49 
51  std::vector<std::string> m_ParticleLists;
53  double m_correction;
54 
56  std::string m_payloadName;
57 
59  std::string m_correctionName;
60 
62  std::unique_ptr<DBObjPtr<ParticleWeightingLookUpTable>> m_ParticleWeightingLookUpTable;
66  void setEnergyLossCorrection(Particle* particle);
67 
68  }; // TrackingEnergyLossCorrectionModule
69 
71 }; //namespace
72 
Base class for Modules.
Definition: Module.h:72
Class to store reconstructed particles.
Definition: Particle.h:75
Tracking energy systematics module: allows for the application of an additive energy correction which...
std::vector< std::string > m_ParticleLists
input particle lists
virtual void initialize() override
Initializes the modules and checks the validity of the input parameters.
virtual void event() override
Function to be executed at each event.
double getCorrectionValue(Particle *particle)
Returns the needed correction for particle based on payloadName and correctionName.
TrackingEnergyLossCorrectionModule()
Constructor: Sets the description, the properties and the parameters of the module.
void setEnergyLossCorrection(Particle *particle)
function to set the Energy correction value
std::unique_ptr< DBObjPtr< ParticleWeightingLookUpTable > > m_ParticleWeightingLookUpTable
Pointer to the table in DB.
std::string m_correctionName
Name of the correction from table.
Abstract base class for different kinds of events.
Definition: ClusterUtils.h:24