ForwardTracking  1.10.0
EndcapHelixFitter.h
1 #ifndef EndcapHelixFitter_h
2 #define EndcapHelixFitter_h
3 
4 #include "EVENT/Track.h"
5 #include "EVENT/TrackerHit.h"
6 
7 #include "lcio.h"
8 
9 
10 
11 using namespace lcio;
12 
13 
14 
15 class EndcapHelixFitterException : public std::exception {
16 
17 
18 protected:
19  std::string message ;
20 
21  EndcapHelixFitterException(){ /*no_op*/ ; }
22 
23 public:
24  virtual ~EndcapHelixFitterException() throw() { /*no_op*/; }
25 
26  EndcapHelixFitterException( const std::string& text ){
27  message = "EndcapHelixFitterException: " + text ;
28  }
29 
30  virtual const char* what() const throw() { return message.c_str() ; }
31 
32 };
33 
34 
35 
45 
46 
47 public:
48 
49  EndcapHelixFitter( Track* track ) throw( EndcapHelixFitterException );
50  EndcapHelixFitter( std::vector < TrackerHit* > trackerHits ) throw( EndcapHelixFitterException );
51 
52 
53  double getChi2(){ return _chi2; }
54  int getNdf(){ return _Ndf; }
55 
56  float getOmega(){ return _omega; }
57  float getTanLambda(){ return _tanLambda; }
58  float getPhi0(){ return _phi0; }
59  float getD0(){ return _d0; }
60  float getZ0(){ return _z0; }
61 
62 private:
63 
64 
65 
66  void fit()throw( EndcapHelixFitterException );
67 
68  double _chi2;
69  int _Ndf;
70 
71  float _omega;
72  float _tanLambda;
73  float _phi0;
74  float _d0;
75  float _z0;
76 
77  std::vector< TrackerHit* > _trackerHits;
78 
79 
80 };
81 
82 #endif
A class to make it quick to fit a track or hits and get back the chi2 and Ndf values and also bundle ...
Definition: EndcapHelixFitter.h:44
Definition: EndcapHelixFitter.h:15