StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StMiniMcHelper.h
1 
18 #ifndef Helper_HH
19 #define Helper_HH
20 
21 #include "StEventTypes.h"
22 #include "StPhysicalHelixD.hh"
23 //#include "StThreeVectorD.hh"
24 //#include "StThreeVectorF.hh"
25 
26 
27 double distance(double a1, double b1, double a2, double b2);
28 double distance(const StThreeVectorF& point1,
29  const StThreeVectorF& point2);
30 
31 double dca3d(const StPhysicalHelixD&, const StThreeVectorF& point);
32 
33 double dca2d(const StPhysicalHelixD&, const StThreeVectorF& point,
34  const StThreeVectorF* origin=0);
35 
36 double dcaz(const StPhysicalHelixD& helix, const StThreeVectorF& point,
37  const StTrack* track=0);
38 
39 double crossingAngle(const StPhysicalHelixD& helix,
40  const StTpcHit* hit, float bField=0);
41 
42 double padrowDca(const StPhysicalHelixD& helix,
43  const StTpcHit* hit);
44 
45 // helix stuff
46 //
47 double propagateToPadrow(const StPhysicalHelixD& helix,
48  const StTpcHit* hit);
49 double helixPadrowDca(const StPhysicalHelixD& helix,
50  const StTpcHit* hit);
51 double helixCrossingAngle(const StPhysicalHelixD& helix,
52  const StTpcHit* hit, float bField);
53 
54 double helixCrossingAngle(float pt, float phi, int sector);
55 
56 double helixDca2D(const StPhysicalHelixD&,const StThreeVectorF& point);
57 
58 
59 // straight line residual stuff
60 //
61 StThreeVectorF lineAt2d(const StPhysicalHelixD&, const StThreeVectorF& point);
62 
63 double
64 linePadrowDca(const StPhysicalHelixD& helix,
65  const StTpcHit* hit);
66 
67 double
68 lineCrossingAngle(const StPhysicalHelixD& helix,
69  const StTpcHit* hit);
70 
71 double
72 lineCrossingAngle(const StPhysicalHelixD& helix,
73  const int sector);
74 
75 double
76 lineDca2D(const StPhysicalHelixD& helix,
77  const StThreeVectorF& hit,
78  const StThreeVectorF& origin);
79 
80 #endif
81 
82 //
83 // $Log $
84 //