Belle II Software development
MLSegmentNetworkProducerModule.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 <tracking/spacePointCreation/SpacePoint.h>
12#include <tracking/trackFindingVXD/filterTools/MLRange.h>
13#include <tracking/trackFindingVXD/filterMap/threeHitVariables/MLHandover.h>
14#include <tracking/trackFindingVXD/filterTools/FBDTClassifier.h>
15
16#include <tracking/trackFindingVXD/segmentNetwork/DirectedNodeNetworkContainer.h>
17#include <framework/datastore/StoreObjPtr.h>
18
19#include <framework/core/Module.h>
20
21// stl
22#include <string>
23#include <memory>
24
25namespace Belle2 {
42
43 public:
44
51
52 void initialize() override;
54 void event() override;
56 void terminate() override;
58 private:
59
62
65
67 std::string m_PARAMsecMapName;
68
71
74
76 std::unique_ptr<MLFilter> m_filter{nullptr};
77
79 std::unique_ptr<Belle2::FBDTClassifier<9> > m_classifier{nullptr};
80
83
85 void setupClassifier(const std::string& filename);
86
88 void setupFilter();
89
90 };
91
93} // end namespace Belle2
This class is used to select pairs, triplets... of objects.
Definition: Filter.h:34
Range used for the Machine Learning assisted TrackFinding approach.
Definition: MLRange.h:29
Segment network producer module with a Machine Learning classifier.
std::string m_PARAMrootFileName
name of the root file name
std::unique_ptr< Belle2::FBDTClassifier< 9 > > m_classifier
classifier used throughout this module
Belle2::StoreObjPtr< Belle2::DirectedNodeNetworkContainer > m_network
StoreObjPtr to access the DNNs that are used in this module.
void setupClassifier(const std::string &filename)
construct the classifier from file
std::string m_PARAMsecMapName
the name of the used SectorMap.
double m_PARAMcutVal
cut value to be used with classifier
std::string m_PARAMnetworkInputName
name of the StoreObjPtr pointing to the network container used in this module.
std::string m_PARAMfbdtFileName
file where the FastBDT classifier is stored.
std::unique_ptr< MLFilter > m_filter
internal three hit filter
Base class for Modules.
Definition: Module.h:72
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
The most CPU efficient Observer for the VXDTF filter tools (even if useless).
Definition: VoidObserver.h:30
Abstract base class for different kinds of events.