Merged Cvetans RowHoughTransformer, Anders latest developments in comp
[u/mrichter/AliRoot.git] / HLT / trigger / AliD0Trigger.h
1 #ifndef AliD0_Trigger
2 #define AliD0_Trigger
3
4 #include "AliL3RootTypes.h"
5
6 class AliITStrackV2;
7
8 class AliD0Trigger {
9  
10  private:
11   AliITStrackV2 * posTrack; //!
12   AliITStrackV2 * negTrack; //!
13   
14   double momenta[6];
15   double bestV0[3],primaryVertex[3];
16   double cutV0low, cutV0high, cutInvMass, cutPointAngle, cutd0d0,cutCosThetaStar,cutpTchild;
17   double Bfield;
18
19  public:
20   AliD0Trigger();
21   AliD0Trigger(double c[7],double Bfield,double pv[3]);
22   AliD0Trigger(AliITStrackV2 * posT, AliITStrackV2 * negT);
23   virtual ~AliD0Trigger();
24
25   void SetTracks(AliITStrackV2 * posT, AliITStrackV2 * negT);
26   bool FindInvMass();
27   bool FindV0();
28   bool FindV0offline(double v[3]);
29   void FindMomentaAtVertex();
30   void FindMomentaOffline();
31   bool PointingAngle();
32   void SetMomenta(double m[6]);
33   bool d0d0();
34   bool CosThetaStar();
35   double P(){return sqrt(Pt()*Pt()+Pz()*Pz());} 
36   double Pt(){return sqrt(Px()*Px()+Py()*Py());}
37   double Px(){return (momenta[0]+momenta[3]);}
38   double Py(){return (momenta[1]+momenta[4]);}
39   double Pz(){return (momenta[2]+momenta[5]);}
40   double Energy();
41   bool pTchild();
42
43   ClassDef(AliD0Trigger,1) 
44
45 };
46
47 #endif