]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FEMTOSCOPY/AliFemto/AliFmPhysicalHelix.h
Add possibility to swich off creating hidden info
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemto / AliFmPhysicalHelix.h
CommitLineData
d0e92d9a 1///////////////////////////////////////////////////////////////////////////
2// //
3// AliFmHelix: a helper helix class //
4// //
5///////////////////////////////////////////////////////////////////////////
6#ifndef ALIPHYSICALHELIX_H
7#define ALIPHYSICALHELIX_H
8
9#include "AliFmThreeVector.h"
10#include "AliFmHelix.h"
11
12class AliFmPhysicalHelix : public AliFmHelix {
13 public:
14 // Requires: momentum, origin, signed Magnetic Field
15 // and Charge of particle (+/- 1)
16 AliFmPhysicalHelix(const AliFmThreeVector<double>& v,
17 const AliFmThreeVector<double>& v,
18 double x, double x);
19
20 // curvature, dip angle, phase, origin, h
21 AliFmPhysicalHelix(double curvature, double dipAngle, double phase,
22 const AliFmThreeVector<double>& origin, int h=-1);
23 AliFmPhysicalHelix();
24
25 ~AliFmPhysicalHelix();
26
27 // Requires: signed Magnetic Field
28 AliFmThreeVector<double> Momentum(double x) const; // returns the momentum at origin
29 AliFmThreeVector<double> MomentumAt(double x, double x) const; // returns momemtum at S
30 int Charge(double x) const; // returns charge of particle
31 // 2d DCA to x,y point signed relative to curvature
32 double CurvatureSignedDistance(double x, double y) ;
33 // 2d DCA to x,y point signed relative to rotation
34 double GeometricSignedDistance(double x, double y) ;
35 // 3d DCA to 3d point signed relative to curvature
36 double CurvatureSignedDistance(const AliFmThreeVector<double>& v) ;
37 // 3d DCA to 3d point signed relative to rotation
38 double GeometricSignedDistance(const AliFmThreeVector<double>& v) ;
39
40#ifdef __ROOT__
41 ClassDef(AliFmPhysicalHelix,1)
42#endif
43};
44
45#endif