ROOT logo
#ifndef ALIESDRECINFO_H
#define ALIESDRECINFO_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */



//////////////////////////////////////////////////////////////////////////////
//                          Class AliRecInfo                                //
//   collect together MC info and Rec info for comparison purposes 
//                                           - effieciency studies and so on//                                                                 //
//   marian.ivanov@cern.ch                                                  //
//////////////////////////////////////////////////////////////////////////////


#include "TObject.h"
#include "AliESDkink.h"
class AliESDEvent;
class AliESDtrack;
class AliV0;
class AliESDkink;
class AliESDfriendTrack;
class AliITStrackMI;
class AliTRDtrackV1;
class AliTPCParam;
class AliTPCseed;
class AliMCInfo;

/////////////////////////////////////////////////////////////////////////
class AliESDRecInfo: public TObject {
  friend class  AliRecInfoMaker;
  friend class  AliESDRecV0Info;
  friend class  AliESDRecKinkInfo;

public:
  AliESDRecInfo();
  AliESDRecInfo(const AliESDRecInfo& recinfo); 
  AliESDRecInfo& operator=(const AliESDRecInfo& info);
  ~AliESDRecInfo();
  void Update(AliMCInfo* info,AliTPCParam * par, Bool_t reconstructed);
  void UpdateStatus(AliMCInfo* info, Bool_t reconstructed);
  void UpdatePoints(AliESDtrack* track);
  void UpdateTPC(AliMCInfo* info);
  void UpdateITS(AliMCInfo* info);
  void UpdateTOF(AliMCInfo* info);
  //
  void Reset();
  //
  void AddESDtrack(const AliESDtrack *track, AliMCInfo* info);
  void SetESDtrack(const AliESDtrack *track);
  AliESDtrack *GetESDtrack() const { return fESDtrack;}
  AliESDfriendTrack *GetTrackF() const  { return fTrackF;}
  AliTPCseed *GetTPCtrack() const { return fTPCtrack;}
  AliITStrackMI *GetITStrack() const { return fITStrack;}
  AliTRDtrackV1   *GetTRDtrack() const { return fTRDtrack;}
  Int_t      GetStatus(Int_t i) { return fStatus[i];}
protected:
  //
  Float_t  fTPCPoints[10]; //start , biggest end points,max density .. density at the last 30 pad-rows
  Double_t fTPCinR0[5];   //generated position of the track at inner tpc - radius [3] and fi [4]
  Double_t fTPCinR1[5];   //reconstructed postion of the track           - radius [3] and fi [
  Double_t fTPCinP0[5];   //generated position of the track at inner tpc
  Double_t fTPCinP1[5];   //reconstructed postion of the track
  Double_t fTPCAngle0[2]; // generated angle 
  Double_t fTPCAngle1[2]; //refconstructed angle 
  Double_t fTPCDelta[5];  // deltas
  Double_t fTPCPools[5];  // pools
  Double_t fITSinR0[5];   //generated position of the track at inner tpc
  Double_t fITSinR1[5];   //reconstructed postion of the track
  Double_t fITSinP0[5];   //generated position of the track at inner tpc
  Double_t fITSinP1[5];   //reconstructed postion of the track
  Double_t fITSAngle0[2]; // generated angle 
  Double_t fITSAngle1[2]; //refconstructed angle
  Double_t fITSDelta[5];  // deltas
  Double_t fITSPools[5];  // pools
  Float_t  fTRLocalCoord[3];       //local coordinates of the track ref.
  Int_t    fStatus[4];        // status -0 not found - 1 -only in - 2 -in-out -3 -in -out-refit
  Int_t    fLabels[2];         // labels

  Bool_t   fITSOn;           // ITS refitted inward
  Bool_t   fTRDOn;           // ITS refitted inward
  Float_t  fDeltaP;          //delta of momenta
  Double_t fSign;           // sign
  Int_t    fReconstructed;         //flag if track was reconstructed
  Int_t    fFake;             // fake track
  Int_t    fMultiple;         // number of reconstructions
  Bool_t   fTPCOn;           // TPC refitted inward
  Float_t  fBestTOFmatch;        //best matching between times

private:
  AliESDtrack   *fESDtrack;        // esd track
  AliESDfriendTrack *fTrackF;      // friend track
  AliTPCseed *fTPCtrack;        // tpc track
  AliITStrackMI *fITStrack;        // its track
  AliTRDtrackV1   *fTRDtrack;        // trd track
  TClonesArray   *fTracks;         // esd tracks array
  ClassDef(AliESDRecInfo,2)  // container for 
};


#endif
 AliESDRecInfo.h:1
 AliESDRecInfo.h:2
 AliESDRecInfo.h:3
 AliESDRecInfo.h:4
 AliESDRecInfo.h:5
 AliESDRecInfo.h:6
 AliESDRecInfo.h:7
 AliESDRecInfo.h:8
 AliESDRecInfo.h:9
 AliESDRecInfo.h:10
 AliESDRecInfo.h:11
 AliESDRecInfo.h:12
 AliESDRecInfo.h:13
 AliESDRecInfo.h:14
 AliESDRecInfo.h:15
 AliESDRecInfo.h:16
 AliESDRecInfo.h:17
 AliESDRecInfo.h:18
 AliESDRecInfo.h:19
 AliESDRecInfo.h:20
 AliESDRecInfo.h:21
 AliESDRecInfo.h:22
 AliESDRecInfo.h:23
 AliESDRecInfo.h:24
 AliESDRecInfo.h:25
 AliESDRecInfo.h:26
 AliESDRecInfo.h:27
 AliESDRecInfo.h:28
 AliESDRecInfo.h:29
 AliESDRecInfo.h:30
 AliESDRecInfo.h:31
 AliESDRecInfo.h:32
 AliESDRecInfo.h:33
 AliESDRecInfo.h:34
 AliESDRecInfo.h:35
 AliESDRecInfo.h:36
 AliESDRecInfo.h:37
 AliESDRecInfo.h:38
 AliESDRecInfo.h:39
 AliESDRecInfo.h:40
 AliESDRecInfo.h:41
 AliESDRecInfo.h:42
 AliESDRecInfo.h:43
 AliESDRecInfo.h:44
 AliESDRecInfo.h:45
 AliESDRecInfo.h:46
 AliESDRecInfo.h:47
 AliESDRecInfo.h:48
 AliESDRecInfo.h:49
 AliESDRecInfo.h:50
 AliESDRecInfo.h:51
 AliESDRecInfo.h:52
 AliESDRecInfo.h:53
 AliESDRecInfo.h:54
 AliESDRecInfo.h:55
 AliESDRecInfo.h:56
 AliESDRecInfo.h:57
 AliESDRecInfo.h:58
 AliESDRecInfo.h:59
 AliESDRecInfo.h:60
 AliESDRecInfo.h:61
 AliESDRecInfo.h:62
 AliESDRecInfo.h:63
 AliESDRecInfo.h:64
 AliESDRecInfo.h:65
 AliESDRecInfo.h:66
 AliESDRecInfo.h:67
 AliESDRecInfo.h:68
 AliESDRecInfo.h:69
 AliESDRecInfo.h:70
 AliESDRecInfo.h:71
 AliESDRecInfo.h:72
 AliESDRecInfo.h:73
 AliESDRecInfo.h:74
 AliESDRecInfo.h:75
 AliESDRecInfo.h:76
 AliESDRecInfo.h:77
 AliESDRecInfo.h:78
 AliESDRecInfo.h:79
 AliESDRecInfo.h:80
 AliESDRecInfo.h:81
 AliESDRecInfo.h:82
 AliESDRecInfo.h:83
 AliESDRecInfo.h:84
 AliESDRecInfo.h:85
 AliESDRecInfo.h:86
 AliESDRecInfo.h:87
 AliESDRecInfo.h:88
 AliESDRecInfo.h:89
 AliESDRecInfo.h:90
 AliESDRecInfo.h:91
 AliESDRecInfo.h:92
 AliESDRecInfo.h:93
 AliESDRecInfo.h:94
 AliESDRecInfo.h:95
 AliESDRecInfo.h:96
 AliESDRecInfo.h:97
 AliESDRecInfo.h:98
 AliESDRecInfo.h:99
 AliESDRecInfo.h:100
 AliESDRecInfo.h:101