InteractGeneral.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 ///
3 /// \file InteractGeneral.h
4 ///
5 /// \brief Interactor for planar surfaces.
6 ///
7 /// \author H. Greenlee
8 ///
9 /// This class calculates propagation noise for tracks on any surface.
10 /// This class works by transforming tracks to a planar surface that is
11 /// normal to the track and calculating the noise matrix on that surface,
12 /// then transforming the noise matrix back to the original surface.
13 ///
14 ////////////////////////////////////////////////////////////////////////
15 
16 #ifndef INTERACTGENERAL_H
17 #define INTERACTGENERAL_H
18 
21 
22 namespace trkf {
23 
25  public:
26  explicit InteractGeneral(detinfo::DetectorPropertiesData const& detProp, double tcut);
27 
28  Interactor*
29  clone() const override
30  {
31  return new InteractGeneral(*this);
32  }
33  bool noise(const KTrack& trk, double s, TrackError& noise_matrix) const override;
34 
35  private:
38  };
39 }
40 
41 #endif
KSymMatrix< 5 >::type TrackError
Track error matrix, dimension 5x5.
InteractGeneral(detinfo::DetectorPropertiesData const &detProp, double tcut)
Propagate between any two surfaces.
Interactor for planar surfaces.
bool noise(const KTrack &trk, double s, TrackError &noise_matrix) const override
Interactor * clone() const override
Clone method.
static QCString * s
Definition: config.cpp:1042
InteractPlane fInteract