Reconstruction with new AliESD Structure
[u/mrichter/AliRoot.git] / STEER / AliESDkink.h
CommitLineData
51ad6848 1#ifndef ALIESDKINK_H
2#define ALIESDKINK_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
8
9//-------------------------------------------------------------------------
10// ESD V0 Vertex Class
11// This class is part of the Event Summary Data set of classes
12// Origin: Marian Ivanov marian.ivanov@cern.ch
13//-------------------------------------------------------------------------
14
15#include <TObject.h>
16#include "AliExternalTrackParam.h"
17#include <TPDGCode.h>
18
19class AliESDtrack;
20
21class AliESDkink : public TObject {
22public:
23 AliESDkink(); //constructor
24 //
25 void SetID(Int_t id){fID=id;}
26 Int_t GetID(){return fID;}
27 void SetMother(const AliExternalTrackParam & pmother);
28 void SetDaughter(const AliExternalTrackParam & pdaughter);
51ad6848 29 Float_t GetTPCDensityFactor() const;
30 Float_t GetQt() const;
7c97ee80 31 //
32 Float_t GetR() const {return fRr;}
33 Float_t GetDistance() const {return fDist2;}
34 Int_t GetTPCRow0() const {return fRow0;}
35 Float_t GetAngle(Int_t i) const {return fAngle[i];}
36 const Double_t *GetPosition() const {return fXr;}
37 const Double_t *GetMotherP() const {return fPm;}
38 const Double_t *GetDaughterP() const {return fPdr;}
39 void SetTPCRow0(Int_t row0){fRow0 = row0;}
40 Int_t GetLabel(Int_t i) const {return fLab[i];}
41 void SetLabel(Int_t label, Int_t pos) {fLab[pos]=label;}
42 Int_t GetIndex(Int_t i) const {return fIndex[i];}
43 void SetIndex(Int_t index, Int_t pos){fIndex[pos]=index;}
44 void SetStatus(Int_t status, Int_t pos){fStatus[pos]=status;}
45 Int_t GetStatus(Int_t pos) const {return fStatus[pos];}
46 void SetTPCncls(Int_t ncls,Int_t pos) {fTPCncls[pos]=ncls;}
47 const Int_t *GetTPCncls() const {return fTPCncls;}
48 void SetTPCDensity(Float_t dens, Int_t pos0,Int_t pos1){fTPCdensity[pos0][pos1]=dens;}
49 Float_t GetTPCDensity(Int_t pos0,Int_t pos1) const {return fTPCdensity[pos0][pos1];}
50 void SetTPCDensity2(Float_t dens, Int_t pos0,Int_t pos1){fTPCdensity[pos0][pos1]=dens;}
51 Float_t GetTPCDensity2(Int_t pos0,Int_t pos1) const {return fTPCdensity[pos0][pos1];}
52 Float_t GetShapeFactor() const {return fShapeFactor;}
53 void SetShapeFactor(Float_t factor){fShapeFactor = factor;}
54 void SetMultiple(Int_t mult,Int_t pos){fMultiple[pos]=mult;}
55 const Int_t * GetMultiple() const {return fMultiple;}
51ad6848 56 //
fb37d34d 57 const AliExternalTrackParam& RefParamDaughter() {return fParamDaughter;}
58 const AliExternalTrackParam& RefParamMother() {return fParamMother;}
7c97ee80 59 protected:
51ad6848 60 Int_t fID; // kink ID
61 AliExternalTrackParam fParamDaughter;
62 AliExternalTrackParam fParamMother;
63 Double_t fDist1; //info about closest distance according closest MC - linear DCA
64 Double_t fDist2; //info about closest distance parabolic DCA
65 //
66 Double_t fPdr[3]; //momentum at vertex daughter - according approx at DCA
67 Double_t fXr[3]; //rec. position according helix
68 //
69 Double_t fPm[3]; //momentum at the vertex mother
70 Double_t fAngle[3]; //three angles
71 Double_t fRr; // rec position of the vertex
72 Int_t fLab[2]; //MC label of the partecle
73 Int_t fIndex[2]; //reconstructed labels of the tracks
7c97ee80 74 Char_t fStatus[12]; //status of kink - first 4 mother (ITS,TPC,TRD,TOF) other daughter
51ad6848 75 Float_t fTPCdensity[2][2]; //tpc cluster density before and after kink
76 Float_t fTPCdensity2[2][2]; //tpc cluster density before and after kink - after second iteration
77 Float_t fShapeFactor; // tpc clusters shape factor
78 Int_t fRow0; // critical pad row number
79 Int_t fMultiple[2]; //how many times the track's were used
7c97ee80 80 Int_t fTPCncls[2]; //number of clusters for mother particle
81 ClassDef(AliESDkink,2) // ESD V0 vertex
51ad6848 82};
83
84#endif
85
86