LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
SlTrackRep.h
Go to the documentation of this file.
1 #ifndef SLTRACKREP_HH
2 #define SLTRACKREP_HH
4 
5 namespace genf {
6 
7 class SlTrackRep : public GFAbsTrackRep {
8 public:
9 
10  // Constructors/Destructors ---------
11  SlTrackRep();
12  SlTrackRep(const TMatrixT<double>&, const TMatrixT<double>&);
13  SlTrackRep(const TMatrixT<double>&, const TMatrixT<double>&,const double);
14  SlTrackRep(const GFDetPlane&,const TMatrixT<double>&, const TMatrixT<double>&);
15  SlTrackRep(const TVector3& pos, const TVector3& dir);
16 
17 
18  virtual ~SlTrackRep();
19 
20 
21  virtual GFAbsTrackRep* clone() const {return new SlTrackRep(*this);}
22  virtual GFAbsTrackRep* prototype()const{return new SlTrackRep();}
23 
24  void setReferencePlane(const GFDetPlane& pl) {fRefPlane=pl;}
25 
26  // Operations ----------------------
27 
28  virtual double extrapolate(const GFDetPlane&,
29  TMatrixT<double>& statePred,
30  TMatrixT<double>& covPred);
31  virtual double extrapolate(const GFDetPlane&,
32  TMatrixT<double>& statePred);
33 
34 
35  void extrapolateToPoint(const TVector3& pos,
36  TVector3& poca,
37  TVector3& dirInPoca);
38 
39  void extrapolateToLine(const TVector3& point1,
40  const TVector3& point2,
41  TVector3& poca,
42  TVector3& dirInPoca,
43  TVector3& poca_onwire);
44 
45 
46  virtual TVector3 getPos(const GFDetPlane&) ;
47  virtual TVector3 getMom(const GFDetPlane&);
48 
49  virtual void getPosMom(const GFDetPlane&,TVector3& pos,TVector3& mom) ;
50  virtual double getCharge()const {return 0;}
51 
53 
54 private:
55 
56  // Private Data Members ------------
57  int _backw; // (-1,0,1) -> (backward prop,decide myself,forward)
58 
59  // public:
60  //ClassDef(SlTrackRep,1);
61 
62 };
63 } // namespace genf
64 
65 #endif
66 
virtual void getPosMom(const GFDetPlane &, TVector3 &pos, TVector3 &mom)
Definition: SlTrackRep.cxx:397
Generic Interface to magnetic fields in GENFIT.
virtual GFAbsTrackRep * prototype() const
Definition: SlTrackRep.h:22
void extrapolateToPoint(const TVector3 &pos, TVector3 &poca, TVector3 &dirInPoca)
This method is to extrapolate the track to point of closest approach to a point in space...
Definition: SlTrackRep.cxx:334
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:85
virtual double extrapolate(const GFDetPlane &, TMatrixT< double > &statePred, TMatrixT< double > &covPred)
Definition: SlTrackRep.cxx:105
void setReferencePlane(const GFDetPlane &pl)
Definition: SlTrackRep.h:24
virtual double getCharge() const
Definition: SlTrackRep.h:50
TDirectory * dir
Definition: macro.C:5
void extrapolateToLine(const TVector3 &point1, const TVector3 &point2, TVector3 &poca, TVector3 &dirInPoca, TVector3 &poca_onwire)
This method extrapolates to the point of closest approach to a line.
Definition: SlTrackRep.cxx:353
virtual GFAbsTrackRep * clone() const
Definition: SlTrackRep.h:21
virtual ~SlTrackRep()
Definition: SlTrackRep.cxx:62
void switchDirection()
Definition: SlTrackRep.h:52