GENFIT  Rev:NoNumberAvailable
HelixTrackModel.h
Go to the documentation of this file.
1 /* Copyright 2013, Technische Universitaet Muenchen,
2  Authors: Johannes Rauch
3 
4  This file is part of GENFIT.
5 
6  GENFIT is free software: you can redistribute it and/or modify
7  it under the terms of the GNU Lesser General Public License as published
8  by the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  GENFIT is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU Lesser General Public License for more details.
15 
16  You should have received a copy of the GNU Lesser General Public License
17  along with GENFIT. If not, see <http://www.gnu.org/licenses/>.
18 */
29 #ifndef genfit_HelixTrackModel_h
30 #define genfit_HelixTrackModel_h
31 
32 #include <TObject.h>
33 #include <TVector3.h>
34 
35 
36 namespace genfit {
37 
41 class HelixTrackModel : public TObject {
42 
43  public:
44 
45  // Constructors/Destructors ---------
46  HelixTrackModel(const TVector3& pos, const TVector3& mom, double charge);
47 
48  TVector3 getPos(double tracklength) const;
49  void getPosMom(double tracklength, TVector3& pos, TVector3& mom) const;
50  void getPosDir(double tracklength, TVector3& pos, TVector3& dir) const {
51  getPosMom(tracklength, pos, dir);
52  dir.SetMag(1);
53  }
54 
55 
56  private:
57 
58  double sgn_;
59  double mom_;
60  double R_; // radius
61  TVector3 center_;
62  double alpha0_;
63  double theta_;
64 
65 
66  public:
67  ClassDef(HelixTrackModel,1)
68 
69 };
70 
71 } /* End of namespace genfit */
74 #endif // genfit_HelixTrackModel_h
genfit::HelixTrackModel::getPosDir
void getPosDir(double tracklength, TVector3 &pos, TVector3 &dir) const
Definition: HelixTrackModel.h:50
genfit::HelixTrackModel::center_
TVector3 center_
Definition: HelixTrackModel.h:61
genfit::HelixTrackModel::HelixTrackModel
HelixTrackModel(const TVector3 &pos, const TVector3 &mom, double charge)
Definition: HelixTrackModel.cc:28
genfit
Defines for I/O streams used for error and debug printing.
Definition: AbsFinitePlane.cc:22
genfit::HelixTrackModel::R_
double R_
Definition: HelixTrackModel.h:60
genfit::HelixTrackModel::alpha0_
double alpha0_
Definition: HelixTrackModel.h:62
genfit::HelixTrackModel::sgn_
double sgn_
Definition: HelixTrackModel.h:58
genfit::HelixTrackModel::theta_
double theta_
Definition: HelixTrackModel.h:63
genfit::HelixTrackModel::getPos
TVector3 getPos(double tracklength) const
Definition: HelixTrackModel.cc:58
genfit::HelixTrackModel::mom_
double mom_
Definition: HelixTrackModel.h:59
genfit::HelixTrackModel
Helix track model for testing purposes.
Definition: HelixTrackModel.h:41
genfit::HelixTrackModel::getPosMom
void getPosMom(double tracklength, TVector3 &pos, TVector3 &mom) const
Definition: HelixTrackModel.cc:72