Belle II Software  release-08-01-10
MuidModule.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/gearbox/Const.h>
14 
15 /* C++ headers. */
16 #include <string>
17 #include <vector>
18 
19 namespace Belle2 {
25  class TrackExtrapolateG4e;
26 
38  class MuidModule : public Module {
39 
40  public:
41 
43  MuidModule();
44 
46  ~MuidModule();
47 
49  void initialize() override;
50 
52  void beginRun() override;
53 
55  void event() override;
56 
58  void endRun() override;
59 
61  void terminate() override;
62 
63  protected:
64 
66  std::vector<int> m_PDGCodes;
67 
69  std::vector<Const::ChargedStable> m_Hypotheses;
70 
72  double m_MeanDt;
73 
75  double m_MaxDt;
76 
78  double m_MinPt;
79 
81  double m_MinKE;
82 
84  double m_MaxStep;
85 
88 
91 
94 
97 
100 
103 
106 
109 
111  bool m_addHitsToRecoTrack = false;
112 
114  std::vector<std::string> m_UICommands;
115 
116  private:
117 
120 
121  };
122 
124 } // end of namespace Belle2
Base class for Modules.
Definition: Module.h:72
The geant4e-based muon identification module.
Definition: MuidModule.h:38
double m_MaxKLMTrackClusterDistance
user-defined maximum distance in cm between KLMCluster and associated track
Definition: MuidModule.h:90
double m_DeltaChordInMagneticField
maximum miss-distance between the trajectory curve and its linear chord(s) approximation
Definition: MuidModule.h:108
double m_MaxDt
Coincidence window half-width for in-time KLM hits (ns)
Definition: MuidModule.h:75
void initialize() override
Initialize for muon identification.
Definition: MuidModule.cc:95
void event() override
Performs muon identification for all tracks in one event.
Definition: MuidModule.cc:151
int m_TrackingVerbosity
Tracking verbosity: 0=Silent; 1=Min info per step; 2=sec particles; 3=pre/post step info; 4=like 3 bu...
Definition: MuidModule.h:96
void endRun() override
Perform end-of-run actions.
Definition: MuidModule.cc:156
void terminate() override
Terminates the module.
Definition: MuidModule.cc:161
double m_MaxStep
Maximum step size in cm (0 for no upper limit)
Definition: MuidModule.h:84
std::vector< std::string > m_UICommands
A list of Geant4 UI commands that should be applied before the extrapolation starts.
Definition: MuidModule.h:114
double m_MaxECLTrackClusterDistance
user-defined maximum distance in cm between ECLCluster and associated track
Definition: MuidModule.h:93
void beginRun() override
Perform beginning-of-run actions.
Definition: MuidModule.cc:146
std::vector< Const::ChargedStable > m_Hypotheses
ChargedStable hypotheses.
Definition: MuidModule.h:69
double m_MinPt
Minimum transverse momentum in GeV/c for extrapolation to be started.
Definition: MuidModule.h:78
bool m_addHitsToRecoTrack
Parameter to add the found hits also to the reco tracks or not. Is turned off by default.
Definition: MuidModule.h:111
TrackExtrapolateG4e * m_Extrapolator
Pointer to the TrackExtrapoleG4e singleton.
Definition: MuidModule.h:119
bool m_EnableVisualization
If set to true the Geant4 visualization support is enabled.
Definition: MuidModule.h:99
~MuidModule()
destructor
Definition: MuidModule.cc:91
double m_MagneticCacheDistance
minimal distance for magnetic field lookup. If distance is smaller, return cached value
Definition: MuidModule.h:105
double m_MeanDt
Mean hit - trigger time (ns)
Definition: MuidModule.h:72
std::vector< int > m_PDGCodes
PDG code for the particle-ID hypotheses.
Definition: MuidModule.h:66
MuidModule()
constructor
Definition: MuidModule.cc:32
double m_MinKE
Minimum kinetic energy in GeV for extrapolation to continue.
Definition: MuidModule.h:81
std::string m_MagneticFieldStepperName
magnetic field stepper to use
Definition: MuidModule.h:102
double m_MaxDistSqInVariances
user-defined maximum squared-distance (in number of variances) for matching hit to extrapolation
Definition: MuidModule.h:87
geant4e-based track extrapolation.
Abstract base class for different kinds of events.