Interactor.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 ///
3 /// \file Interactor.h
4 ///
5 /// \brief Base class for Kalman filter track interactor.
6 ///
7 /// \author H. Greenlee
8 ///
9 /// This class defined the general interface for calculating
10 /// propagation noise.
11 ///
12 /// This class defined a single pure virtual method called "noise"
13 /// whose purpose is to calculate the propagation noise matrix
14 /// associated with the propagation of a track over a specified
15 /// distance.
16 ///
17 ////////////////////////////////////////////////////////////////////////
18 
19 #ifndef INTERACTOR_H
20 #define INTERACTOR_H
21 
24 
25 namespace trkf {
26 
27  class Interactor {
28  public:
29  explicit Interactor(double tcut);
30  virtual ~Interactor();
31 
32  double
33  getTcut() const
34  {
35  return fTcut;
36  }
37 
38  /// Clone method.
39  virtual Interactor* clone() const = 0;
40 
41  /// Calculate noise matrix.
42  virtual bool noise(const KTrack& trk, double s, TrackError& noise_matrix) const = 0;
43 
44  private:
45  double fTcut; ///< Maximum delta ray energy for dE/dx.
46  };
47 }
48 
49 #endif
KSymMatrix< 5 >::type TrackError
Track error matrix, dimension 5x5.
double fTcut
Maximum delta ray energy for dE/dx.
Definition: Interactor.h:45
virtual Interactor * clone() const =0
Clone method.
virtual bool noise(const KTrack &trk, double s, TrackError &noise_matrix) const =0
Calculate noise matrix.
double getTcut() const
Definition: Interactor.h:33
Kalman filter linear algebra typedefs.
Interactor(double tcut)
Definition: Interactor.cxx:21
Basic Kalman filter track class, without error.
static QCString * s
Definition: config.cpp:1042
virtual ~Interactor()