6985d951b0f725de71a6fdbc17238227d155ad7f
[u/mrichter/AliRoot.git] / STEER / AliESDkink.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 /* $Id$ */
17
18 //-------------------------------------------------------------------------
19 //    Origin: Marian Ivanov marian.ivanov@cern.ch
20 //-------------------------------------------------------------------------
21
22 #include <Riostream.h>
23 #include <TMath.h>
24 #include <TPDGCode.h>
25 #include "AliESDkink.h"
26
27
28 ClassImp(AliESDkink)
29
30 //____________________________________________________________________
31 AliESDkink::AliESDkink() :
32   TObject(),
33   fID(0),
34   fParamDaughter(),
35   fParamMother(),
36   fDist1(-1),
37   fDist2(-1),
38   fRr(-1),
39   fShapeFactor(0),
40   fRow0(-1)
41 {
42   //
43   //Dafault constructor
44   //
45   for (Int_t i=0;i<12;i++) fStatus[i]=0;
46   for (Int_t i=0;i<2;i++)
47     for (Int_t j=0;j<2;j++){
48       fTPCdensity[i][j]=-1;
49       fTPCdensity2[i][j]=-1;
50     }
51   fTPCncls[0]=fTPCncls[1]=0;
52
53   for (Int_t i=0; i<3; i++) {
54     fPdr[i] = 0;
55     fXr[i] = 0;
56     fPm[i] = 0;
57     fAngle[i] = 0;
58   }
59   
60   fLab[0]=fLab[1]=-1;
61   fIndex[0]=fIndex[1]=-1;
62   fMultiple[0]=fMultiple[1]=0;
63 }
64
65 void AliESDkink::SetMother(const AliExternalTrackParam & pmother)  {
66   //
67   // set mother
68   //
69   fParamMother   = pmother;
70 }
71
72 void AliESDkink::SetDaughter(const AliExternalTrackParam & pdaughter){
73   //
74   //set daughter
75   //
76   fParamDaughter = pdaughter;
77
78 }
79   
80 Float_t AliESDkink::GetTPCDensityFactor() const
81 {
82   //
83   //
84   return fTPCdensity[0][0]+fTPCdensity[1][1]-TMath::Max(fTPCdensity[0][1],Float_t(0.0))-TMath::Max(fTPCdensity[1][0],Float_t(0.0)); 
85 }
86
87 Float_t AliESDkink::GetQt() const
88 {
89   Float_t dmomentum = TMath::Sqrt(fPdr[0]*fPdr[0]+fPdr[1]*fPdr[1]+fPdr[2]*fPdr[2]);
90   return TMath::Sin(fAngle[2])*dmomentum;
91 }