StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StMuHelix.h
1 /***************************************************************************
2  *
3  * $Id: StMuHelix.h,v 1.8 2009/12/01 21:56:35 tone421 Exp $
4  * Author: Frank Laue, BNL, laue@bnl.gov
5  *
6  ***************************************************************************/
7 
8 #ifndef StMuHelix_h
9 #define StMuHelix_h
10 
11 #include "StarClassLibrary/SystemOfUnits.h"
12 #include "StarClassLibrary/StPhysicalHelixD.hh"
13 #include "StarClassLibrary/StThreeVectorD.hh"
14 #include "StarClassLibrary/StThreeVectorF.hh"
15 
16 #include "TObject.h"
17 
18 #ifndef ST_NO_NAMESPACES
19 using namespace units;
20 #endif
21 
22 
23 class StMuHelix : public TObject {
24  public:
25  StMuHelix() { /* no-op */ }
26  StMuHelix(const StPhysicalHelixD &hh, double field);
27  const StThreeVectorF &p() const;
28  const StThreeVectorF &origin() const;
29  short q() const;
30  float b() const;
31  int bad() const;
32  StPhysicalHelix helix() const;
33  protected:
34  StThreeVectorF mP;
35  StThreeVectorF mOrigin;
36  short mQ;
37  float mB;
38 
39  friend class StMuMomentumShiftMaker;
40  ClassDef(StMuHelix,1)
41 };
42 
43 
44 inline const StThreeVectorF &StMuHelix::p() const { return mP; }
45 inline const StThreeVectorF &StMuHelix::origin() const { return mOrigin; }
46 inline short StMuHelix::q() const { return mQ; }
47 inline float StMuHelix::b() const { return mB; }
48 
49 #endif
50 
51 /***************************************************************************
52  *
53  * $Log: StMuHelix.h,v $
54  * Revision 1.8 2009/12/01 21:56:35 tone421
55  * Implemented changes as per http://www.star.bnl.gov/rt2/Ticket/Display.html?id=1734
56  *
57  * Revision 1.7 2009/07/07 19:37:54 perev
58  * helix() method added
59  *
60  * Revision 1.6 2005/03/17 21:55:00 mvl
61  * Added StMuMomentumShiftMaker for applying a magnetic field scaling to the reconstructed MuDst. This class accesses StMuTrack, StMuEvent and StMuHelix and some Strangeness MuDst data members as 'friend'
62  *
63  * Revision 1.5 2004/05/02 04:10:14 perev
64  * private => protected
65  *
66  * Revision 1.4 2003/10/28 18:57:56 perev
67  * BadData protection added
68  *
69  * Revision 1.3 2003/01/23 21:59:50 laue
70  * Modification to compile on Solaris.
71  *
72  * Revision 1.2 2002/03/20 16:04:11 laue
73  * minor changes, mostly added access functions
74  *
75  * Revision 1.1 2002/03/08 17:04:18 laue
76  * initial revision
77  *
78  *
79  **************************************************************************/