Belle II Software development
BeamEventFlightTimeEstimator Class Reference

Concrete estimator for the regular beam event setup. More...

#include <FlightTimeEstimator.h>

Inheritance diagram for BeamEventFlightTimeEstimator:
FlightTimeEstimator

Public Member Functions

 BeamEventFlightTimeEstimator ()
 Constructor also setting up the flight time lookup table.
 
double getFlightTime2D (const TrackingUtilities::Vector2D &pos2D, double alpha, double beta=1) const override
 Flight time estimator for regular beam events.
 

Static Public Member Functions

static const FlightTimeEstimatorinstance (std::unique_ptr< FlightTimeEstimator > replacement=nullptr)
 Getter for the instance.
 

Private Attributes

TrackingUtilities::LookupTable< float > m_firstPeriodAlphaFlightTimeFactor
 Lookup table for the sinc function.
 

Detailed Description

Concrete estimator for the regular beam event setup.

Definition at line 47 of file FlightTimeEstimator.h.

Constructor & Destructor Documentation

◆ BeamEventFlightTimeEstimator()

Constructor also setting up the flight time lookup table.

Definition at line 38 of file FlightTimeEstimator.cc.

39 : m_firstPeriodAlphaFlightTimeFactor(getFirstPeriodAlphaFlightTime,
40 512,
41 0,
42 std::nextafter(M_PI, INFINITY))
43{
44}
TrackingUtilities::LookupTable< float > m_firstPeriodAlphaFlightTimeFactor
Lookup table for the sinc function.

Member Function Documentation

◆ getFlightTime2D()

double getFlightTime2D ( const TrackingUtilities::Vector2D & pos2D,
double alpha,
double beta = 1 ) const
inlineoverridevirtual

Flight time estimator for regular beam events.

Reimplemented from FlightTimeEstimator.

Definition at line 54 of file FlightTimeEstimator.h.

55 {
56 double absAlpha = std::fabs(alpha);
57 double directDist2D = pos2D.cylindricalR();
58 return directDist2D * m_firstPeriodAlphaFlightTimeFactor(absAlpha) / beta;
59 }

◆ instance()

const FlightTimeEstimator & instance ( std::unique_ptr< FlightTimeEstimator > replacement = nullptr)
staticinherited

Getter for the instance.

Definition at line 22 of file FlightTimeEstimator.cc.

23{
24 static std::unique_ptr<FlightTimeEstimator> s_instance(new FlightTimeEstimator);
25 if (replacement) {
26 s_instance = std::move(replacement);
27 }
28 return *s_instance;
29}

Member Data Documentation

◆ m_firstPeriodAlphaFlightTimeFactor

TrackingUtilities::LookupTable<float> m_firstPeriodAlphaFlightTimeFactor
private

Lookup table for the sinc function.

Definition at line 63 of file FlightTimeEstimator.h.


The documentation for this class was generated from the following files: