Belle II Software development
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
20namespace 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.