BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Reconstruction/TrkReco/include/TrkReco/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 : yoshihito.iwasaki@kek.jp
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
30public:
31 /// Constructor.
32 TLineFitter( const std::string& name );
33
34 /// Destructor
35 virtual ~TLineFitter();
36
37public: // 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
45public: // Modifiers
46 virtual int fit( TTrackBase& ) const;
47
48private:
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 double TLineFitter::a( void ) const { return _a; }
66
67inline double TLineFitter::b( void ) const { return _b; }
68
69inline double TLineFitter::det( void ) const { return _det; }
70
71#endif
72
73#undef inline
74
75#endif /* TLINEFITTER_FLAG_ */
A class to fit a TTrackBase object to a line.
double a(void) const
virtual ~TLineFitter()
Destructor.
virtual int fit(TTrackBase &) const
double b(void) const
void dump(const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
dumps debug information.
double det(void) const
TLineFitter(const std::string &name)
Constructor.
const std::string & name(void) const
returns name.
A virtual class for a track class in tracking.