CGEM BOSS 6.6.5.i
BESIII Offline Software System
Loading...
Searching...
No Matches
TLineFitter.h
Go to the documentation of this file.
1//-----------------------------------------------------------------------------
2// $Id: TLineFitter.h,v 1.5 2010/03/31 09:58:59 liucy Exp $
3//-----------------------------------------------------------------------------
4// Filename : TLineFitter.h
5// Section : Tracking
6// Owner : Yoshi Iwasaki
7// Email : [email protected]
8//-----------------------------------------------------------------------------
9// Description : A class to fit a TTrackBase object to a line.
10// See http://bsunsrv1.kek.jp/~yiwasaki/tracking/
11//-----------------------------------------------------------------------------
12
13#ifndef TLINEFITTER_FLAG_
14#define TLINEFITTER_FLAG_
15
16#ifdef TRKRECO_DEBUG_DETAIL
17#ifndef TRKRECO_DEBUG
18#define TRKRECO_DEBUG
19#endif
20#endif
21
22#include <string>
23
24#define HEP_SHORT_NAMES
25#include "TrkReco/TMFitter.h"
26
27/// A class to fit a TTrackBase object to a line.
28class TLineFitter : public TMFitter {
29
30 public:
31 /// Constructor.
32 TLineFitter(const std::string & name);
33
34 /// Destructor
35 virtual ~TLineFitter();
36
37 public:// Selectors
38 /// dumps debug information.
39 void dump(const std::string & message = std::string(""),
40 const std::string & prefix = std::string("")) const;
41 double a(void) const;
42 double b(void) const;
43 double det(void) const;
44
45 public:// Modifiers
46 virtual int fit(TTrackBase &) const;
47
48 private:
49 mutable double _a;
50 mutable double _b;
51 mutable double _det;
52};
53
54//-----------------------------------------------------------------------------
55
56#ifdef TRKRECO_NO_INLINE
57#define inline
58#else
59#undef inline
60#define TLINEFITTER_INLINE_DEFINE_HERE
61#endif
62
63#ifdef TLINEFITTER_INLINE_DEFINE_HERE
64
65inline
66double
67TLineFitter::a(void) const {
68 return _a;
69}
70
71inline
72double
73TLineFitter::b(void) const {
74 return _b;
75}
76
77inline
78double
79TLineFitter::det(void) const {
80 return _det;
81}
82
83#endif
84
85#undef inline
86
87#endif /* TLINEFITTER_FLAG_ */
A class to fit a TTrackBase object to a line.
Definition TLineFitter.h:28
double a(void) const
Definition TLineFitter.h:67
virtual int fit(TTrackBase &) const
double b(void) const
Definition TLineFitter.h:73
void dump(const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
dumps debug information.
virtual ~TLineFitter()
Destructor.
double det(void) const
Definition TLineFitter.h:79
TLineFitter(const std::string &name)
Constructor.
A class to fit a TTrackBase object.
Definition TMFitter.h:34
const std::string & name(void) const
returns name.
Definition TMFitter.h:73
A virtual class for a track class in tracking.
Definition TTrackBase.h:46