Belle II Software  release-05-02-19
BaseTrackTimeEstimatorModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2016 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Nils Braun *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <framework/gearbox/Const.h>
13 
14 #include <framework/core/Module.h>
15 #include <string>
16 
17 namespace genfit {
18  class MeasuredStateOnPlane;
19 }
20 
21 namespace Belle2 {
26  class RecoTrack;
27 
31 
32  public:
35 
37  void initialize() override;
38 
40  void event() override;
41 
42  private:
44  std::string m_param_recoTracksStoreArrayName = "RecoTracks";
45 
51 
55  double m_param_timeOffset = 0;
56 
63 
70  std::vector<double> m_param_readoutPosition = {0, 0, 0};
71 
79 
85 
90  double estimateTimeSeedUsingFittedInformation(RecoTrack& recoTrack, const Const::ChargedStable& particleHypothesis) const;
91 
96  double estimateTimeSeedUsingSeedInformation(RecoTrack& recoTrack, const Const::ChargedStable& particleHypothesis) const;
97 
99  virtual double estimateFlightLengthUsingFittedInformation(genfit::MeasuredStateOnPlane& measuredStateOnPlane) const = 0;
101  virtual double estimateFlightLengthUsingSeedInformation(const RecoTrack& recoTrack) const = 0;
102  };
104 }
105 
Belle2::BaseTrackTimeEstimatorModule::BaseTrackTimeEstimatorModule
BaseTrackTimeEstimatorModule()
Initialize the module parameters.
Definition: BaseTrackTimeEstimatorModule.cc:35
Belle2::BaseTrackTimeEstimatorModule::m_param_pdgCodeToUseForEstimation
unsigned int m_param_pdgCodeToUseForEstimation
Which PDG code to use for creating the time estimate.
Definition: BaseTrackTimeEstimatorModule.h:62
Belle2::BaseTrackTimeEstimatorModule::m_param_useReadoutPosition
bool m_param_useReadoutPosition
Enable the usage of the readout position.
Definition: BaseTrackTimeEstimatorModule.h:78
Belle2::BaseTrackTimeEstimatorModule::m_param_readoutPosition
std::vector< double > m_param_readoutPosition
In cases where the readout of the trigger is not located at the trigger directly and the signal has t...
Definition: BaseTrackTimeEstimatorModule.h:70
Belle2::BaseTrackTimeEstimatorModule::event
void event() override
Loop over all RecoTracks and set their time seed correctly.
Definition: BaseTrackTimeEstimatorModule.cc:86
genfit::MeasuredStateOnPlane
#StateOnPlane with additional covariance matrix.
Definition: MeasuredStateOnPlane.h:39
Belle2::BaseTrackTimeEstimatorModule::m_param_useFittedInformation
bool m_param_useFittedInformation
Whether to use the information in the measurements (after fit) or the tracking seeds for doing the ex...
Definition: BaseTrackTimeEstimatorModule.h:50
genfit
Defines for I/O streams used for error and debug printing.
Definition: AlignablePXDRecoHit.h:19
Belle2::BaseTrackTimeEstimatorModule::estimateTimeSeedUsingSeedInformation
double estimateTimeSeedUsingSeedInformation(RecoTrack &recoTrack, const Const::ChargedStable &particleHypothesis) const
Private helper function which calls the estimateFlightLengthUsingSeedInformation and computes the fli...
Definition: BaseTrackTimeEstimatorModule.cc:160
Belle2::BaseTrackTimeEstimatorModule::estimateFlightLengthUsingSeedInformation
virtual double estimateFlightLengthUsingSeedInformation(const RecoTrack &recoTrack) const =0
Overload this function to implement a specific extrapolation mechanism for track seeds.
Belle2::Module
Base class for Modules.
Definition: Module.h:74
Belle2::RecoTrack
This is the Reconstruction Event-Data Model Track.
Definition: RecoTrack.h:78
Belle2::Const::speedOfLight
static const double speedOfLight
[cm/ns]
Definition: Const.h:568
Belle2::BaseTrackTimeEstimatorModule::estimateTimeSeedUsingFittedInformation
double estimateTimeSeedUsingFittedInformation(RecoTrack &recoTrack, const Const::ChargedStable &particleHypothesis) const
Private helper function which calls the estimateFlightLengthUsingFittedInformation with the correct m...
Definition: BaseTrackTimeEstimatorModule.cc:120
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::BaseTrackTimeEstimatorModule::initialize
void initialize() override
Initialize the needed StoreArrays and ensure they are created properly.
Definition: BaseTrackTimeEstimatorModule.cc:75
Belle2::BaseTrackTimeEstimatorModule::m_param_recoTracksStoreArrayName
std::string m_param_recoTracksStoreArrayName
StoreArray name of the input and output reco tracks.
Definition: BaseTrackTimeEstimatorModule.h:44
Belle2::BaseTrackTimeEstimatorModule::m_param_timeOffset
double m_param_timeOffset
If you want to subtract or add a certain time, you can use this variable.
Definition: BaseTrackTimeEstimatorModule.h:55
Belle2::Const::ChargedStable
Provides a type-safe way to pass members of the chargedStableSet set.
Definition: Const.h:465
Belle2::BaseTrackTimeEstimatorModule::m_param_readoutPositionPropagationSpeed
double m_param_readoutPositionPropagationSpeed
Speed of the propagation from the hit on the trigger to the readoutPosition.
Definition: BaseTrackTimeEstimatorModule.h:84
Belle2::BaseTrackTimeEstimatorModule
Base Module estimating the track time of RecoTracks - before or after the fit.
Definition: BaseTrackTimeEstimatorModule.h:30
Belle2::BaseTrackTimeEstimatorModule::estimateFlightLengthUsingFittedInformation
virtual double estimateFlightLengthUsingFittedInformation(genfit::MeasuredStateOnPlane &measuredStateOnPlane) const =0
Overload this function to implement a specific extrapolation mechanism for fitted tracks....