StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StKinkMaker.h
1 
13 #ifndef STAR_StKinkMaker
14 #define STAR_StKinkMaker
15 
16 #include "StMaker.h"
17 #include "StThreeVectorD.hh"
18 
19 class StKinkLocalTrack;
20 class St_tkf_tkfpar;
21 class tkf_tkfpar_st;
22 #include "StPhysicalHelixD.hh"
23 class StEvent;
24 class StKinkVertex;
25 class StTrack;
26 class StTrackGeometry;
27 
28 // enum TrackerUsage{ //See StV0FinderMaker.h */
29 // kTrackerUseTPT = 0,
30 // kTrackerUseITTF = 1,
31 // kTrackerUseBOTH = 2
32 // };
33 
34 class StKinkMaker : public StMaker {
35 public:
36  // StKinkMaker(const char* name);
37  StKinkMaker(const char* name="KinkMaker");
38  virtual ~StKinkMaker();
39  virtual Int_t Init();
40  virtual Int_t InitRun(int runumber);
41  virtual Int_t Make();
42  virtual void SetTrackerUsage(Int_t opt=0);
43  virtual Int_t GetTrackerUsage(){return mUseTracker;}
44  virtual void Crop();// used to trim the kinks in which on daughter shares two parents
45 
46  virtual const char *GetCVS() const
47  {static const char cvs[]="Tag $Name: $ $Id: StKinkMaker.h,v 1.12 2014/08/06 11:43:37 jeromel Exp $ built " __DATE__ " " __TIME__ ; return cvs;}
48 
49 
50  private:
51  // Bool_t mkinkEvalOn; //switch for the evaluation
52 
53  StKinkLocalTrack *mTrack1;
54  StKinkLocalTrack *mTrack2;
55  StTrack *mParentTrackCandidate;
56  StTrack *mDaughterTrackCandidate;
57  StTrackGeometry *mDaughterTrackUnic;
58 
59  StThreeVectorD mEventVertex; //position of primary vertex
60  StThreeVectorD mParentMoment, mDaughterMoment;
61  StThreeVectorD mKinkVertex;
62  Float_t mParentImpact, mDaughterImpact;
63  Float_t mDca, mDecayAngle;
64  Int_t mGlobalTrks;//number of global tracks used
65  double mBfield;//mg field
66  protected:
67 
68  void FillEvent(StTrackGeometry *myDaughterGeometry1,
69  StTrackGeometry *myParentGeometry11);
70 
71  bool acceptTrack(StTrack *);
72 
73 
74  St_tkf_tkfpar* m_tkfpar; // table of parameters
75 
76  StEvent* event;
77  StKinkVertex* kinkVertex;
78 
79  int mUseTracker;
80 ClassDef(StKinkMaker,0)
81 };
82 
83 #endif
84 
85 
86 
87 
88 
auxiliary class for the kink finder
virtual Int_t Init()
Definition: StKinkMaker.cxx:78
virtual void SetTrackerUsage(Int_t opt=0)
virtual Int_t Make()
Definition: StKinkMaker.cxx:99
void FillEvent(StTrackGeometry *myDaughterGeometry1, StTrackGeometry *myParentGeometry11)
Event filling.
Class to find kink secondary vertices.
Definition: StKinkMaker.h:34
bool acceptTrack(StTrack *)