Belle II Software  release-08-01-10
TrackLoader.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 #pragma once
9 
10 #include <tracking/trackFindingCDC/findlets/base/Findlet.h>
11 
12 #include <tracking/ckf/general/findlets/TrackFitterAndDeleter.h>
13 #include <tracking/trackFindingCDC/numerics/EForwardBackward.h>
14 #include <framework/datastore/StoreArray.h>
15 
16 #include <string>
17 #include <vector>
18 
19 namespace Belle2 {
24  class RecoTrack;
25 
26  class ModuleParamList;
27 
36  class TrackLoader : public TrackFindingCDC::Findlet<RecoTrack*> {
39 
40  public:
42  TrackLoader();
43 
45  void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) override;
46 
48  void initialize() override;
49 
51  void apply(std::vector<RecoTrack*>& seeds) override;
52 
53  private:
54  // Findlets
57 
58  // Parameters
60  std::string m_param_relationRecoTrackStoreArrayName = "RecoTracks";
62  std::string m_param_inputRecoTrackStoreArrayName = "RecoTracks";
68  TrackFindingCDC::EForwardBackward m_param_relationCheckForDirection = TrackFindingCDC::EForwardBackward::c_Unknown;
69 
70 
71  // Store Arrays
75  bool m_noCDChits = false;
76  };
78 }
The Module parameter list class.
Interface for a minimal algorithm part that wants to expose some parameters to a module.
Definition: Findlet.h:26
Findlet to fit tracks and remove all non fitted ones.
Findlet for loading the seeds from the data store.
Definition: TrackLoader.h:36
StoreArray< RecoTrack > m_inputRecoTracks
Output Reco Tracks Store Array.
Definition: TrackLoader.h:73
bool m_noCDChits
Ignore tracks with CDC hits attached.
Definition: TrackLoader.h:75
void initialize() override
Create the store arrays.
Definition: TrackLoader.cc:52
std::string m_param_relationCheckForDirectionAsString
Parameter for the distance given to the framework (can not handle EForwardBackward directly)
Definition: TrackLoader.h:66
TrackLoader()
Add the subfindlets.
Definition: TrackLoader.cc:19
TrackFindingCDC::EForwardBackward m_param_relationCheckForDirection
Direction parameter converted from the string parameters.
Definition: TrackLoader.h:68
TrackFitterAndDeleter m_trackFitter
Findlet for fitting the tracks.
Definition: TrackLoader.h:56
double m_param_minimalPtRequirement
Minimal pt requirement.
Definition: TrackLoader.h:64
std::string m_param_inputRecoTrackStoreArrayName
StoreArray name of the input Track Store Array.
Definition: TrackLoader.h:62
void apply(std::vector< RecoTrack * > &seeds) override
Load in the reco tracks and the hits.
Definition: TrackLoader.cc:68
std::string m_param_relationRecoTrackStoreArrayName
StoreArray name of the output Track Store Array.
Definition: TrackLoader.h:60
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the parameters of the sub findlets.
Definition: TrackLoader.cc:24
EForwardBackward
Enumeration to represent the distinct possibilities of the right left passage information.
Abstract base class for different kinds of events.