Belle II Software  release-05-02-19
ExtModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010-2011 Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Leo Piilonen *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 /* Belle 2 headers. */
14 #include <framework/gearbox/Const.h>
15 #include <framework/core/Module.h>
16 
17 /* C++ headers. */
18 #include <string>
19 #include <vector>
20 
21 namespace Belle2 {
27  class TrackExtrapolateG4e;
28 
40  class ExtModule : public Module {
41 
42  public:
43 
45  ExtModule();
46 
48  ~ExtModule() override;
49 
51  void initialize() override;
52 
54  void beginRun() override;
55 
57  void event() override;
58 
60  void endRun() override;
61 
63  void terminate() override;
64 
65  protected:
66 
68  std::vector<int> m_PDGCodes;
69 
71  std::vector<Const::ChargedStable> m_Hypotheses;
72 
74  double m_MinPt;
75 
77  double m_MinKE;
78 
80  double m_MaxStep;
81 
85 
87  std::vector<std::string> m_UICommands;
88 
91 
93  std::string m_MagneticFieldStepperName;
94 
97 
100 
101  private:
102 
105 
106  };
107 
109 } // end of namespace Belle2
Belle2::ExtModule::m_MinKE
double m_MinKE
User-defined minimum kinetic energy in GeV for extrapolation to continue.
Definition: ExtModule.h:85
Belle2::ExtModule::m_TrackingVerbosity
int m_TrackingVerbosity
User-defined tracking verbosity: 0=Silent; 1=Min info per step; 2=sec particles; 3=pre/post step info...
Definition: ExtModule.h:92
Belle2::ExtModule::ExtModule
ExtModule()
constructor
Definition: ExtModule.cc:35
Belle2::ExtModule::m_Hypotheses
std::vector< Const::ChargedStable > m_Hypotheses
ChargedStable hypotheses.
Definition: ExtModule.h:79
Belle2::ExtModule::m_MinPt
double m_MinPt
User-defined minimum transverse momentum in GeV/c for extrapolation to be started.
Definition: ExtModule.h:82
Belle2::ExtModule::m_DeltaChordInMagneticField
double m_DeltaChordInMagneticField
User-defined maximum miss-distance between the trajectory curve and its linear chord(s) approximation...
Definition: ExtModule.h:107
Belle2::ExtModule::beginRun
void beginRun() override
Perform beginning-of-run actions.
Definition: ExtModule.cc:132
Belle2::ExtModule::m_MagneticCacheDistance
double m_MagneticCacheDistance
User-defined minimal distance for magnetic field lookup. If distance is smaller, return cached value.
Definition: ExtModule.h:104
Belle2::ExtModule::terminate
void terminate() override
Terminates the module.
Definition: ExtModule.cc:147
Belle2::ExtModule::m_MaxStep
double m_MaxStep
User-define maximum step size in cm (0 for no upper limit)
Definition: ExtModule.h:88
Belle2::ExtModule::m_Extrapolator
TrackExtrapolateG4e * m_Extrapolator
Pointer to the TrackExtrapoleG4e singleton.
Definition: ExtModule.h:112
Belle2::ExtModule::initialize
void initialize() override
Initialize for track extrapolation.
Definition: ExtModule.cc:79
Belle2::TrackExtrapolateG4e
geant4e-based track extrapolation.
Definition: TrackExtrapolateG4e.h:168
Belle2::ExtModule::m_PDGCodes
std::vector< int > m_PDGCodes
User-selected PDG codes to extrapolate (anti-particles are included implicitly)
Definition: ExtModule.h:76
Belle2::ExtModule::m_MagneticFieldStepperName
std::string m_MagneticFieldStepperName
User-defined magnetic field stepper to use.
Definition: ExtModule.h:101
Belle2::ExtModule::~ExtModule
~ExtModule() override
destructor
Definition: ExtModule.cc:75
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ExtModule::m_EnableVisualization
bool m_EnableVisualization
User-defined Geant4 visualization support: true to enable.
Definition: ExtModule.h:98
Belle2::ExtModule::m_UICommands
std::vector< std::string > m_UICommands
User-defined list of Geant4 UI commands that should be applied before the extrapolation starts.
Definition: ExtModule.h:95
Belle2::ExtModule::event
void event() override
Performs track extrapolation for all tracks in one event.
Definition: ExtModule.cc:137
Belle2::ExtModule::endRun
void endRun() override
Perform end-of-run actions.
Definition: ExtModule.cc:142