StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Helper.h
1 #ifndef Helper_HH
2 #define Helper_HH
3 
4 #include "StEventTypes.h"
5 #include "StPhysicalHelixD.hh"
6 //#include "StThreeVectorD.hh"
7 //#include "StThreeVectorF.hh"
8 
9 
10 double distance(double a1, double b1, double a2, double b2);
11 double distance(const StThreeVectorF& point1,
12  const StThreeVectorF& point2);
13 
14 double dca3d(const StPhysicalHelixD&, const StThreeVectorF& point);
15 
16 double dca2d(const StPhysicalHelixD&, const StThreeVectorF& point,
17  const StThreeVectorF* origin=0);
18 
19 double dcaz(const StPhysicalHelixD&, const StThreeVectorF& point);
20 
21 double crossingAngle(const StPhysicalHelixD& helix,
22  const StTpcHit* hit, float bField=0);
23 
24 double padrowDca(const StPhysicalHelixD& helix,
25  const StTpcHit* hit);
26 
27 // helix stuff
28 //
29 double propagateToPadrow(const StPhysicalHelixD& helix,
30  const StTpcHit* hit);
31 double helixPadrowDca(const StPhysicalHelixD& helix,
32  const StTpcHit* hit);
33 double helixCrossingAngle(const StPhysicalHelixD& helix,
34  const StTpcHit* hit, float bField);
35 
36 double helixCrossingAngle(float pt, float phi, int sector);
37 
38 double helixDca2D(const StPhysicalHelixD&,const StThreeVectorF& point);
39 
40 
41 // straight line residual stuff
42 //
43 StThreeVectorF lineAt2d(const StPhysicalHelixD&, const StThreeVectorF& point);
44 
45 double
46 linePadrowDca(const StPhysicalHelixD& helix,
47  const StTpcHit* hit);
48 
49 double
50 lineCrossingAngle(const StPhysicalHelixD& helix,
51  const StTpcHit* hit);
52 
53 double
54 lineCrossingAngle(const StPhysicalHelixD& helix,
55  const int sector);
56 
57 double
58 lineDca2D(const StPhysicalHelixD& helix,
59  const StThreeVectorF& hit,
60  const StThreeVectorF& origin);
61 
62 #endif