Belle II Software  release-08-01-10
BelleNbarMVAModule.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 <framework/core/Module.h>
13 #include <framework/datastore/StoreObjPtr.h>
14 #include <analysis/dataobjects/ParticleList.h>
15 
16 // frugally-deep header
17 #define FDEEP_FLOAT_TYPE double
18 #include <fdeep/fdeep.hpp>
19 
20 namespace Belle2 {
28  class BelleNbarMVAModule : public Module {
29 
30  public:
31 
36 
38  void initialize() override;
39 
41  void event() override;
42 
43  private:
44 
45  std::string m_identifier;
46  std::string m_particleList;
48  std::unique_ptr<fdeep::model> m_model;
49  };
51 }
Apply nbarMVA for Belle I.
void initialize() override
Load the weight file.
void event() override
Perform the calculation here.
std::unique_ptr< fdeep::model > m_model
Model of the MVA.
std::string m_particleList
Name of the ParticleList to apply the MVA.
StoreObjPtr< ParticleList > m_plist
ParticeList to apply the MVA.
BelleNbarMVAModule()
Constructor: Sets the description, the properties and the parameters of the module.
std::string m_identifier
Identifier of the MVA.
Base class for Modules.
Definition: Module.h:72
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Abstract base class for different kinds of events.