]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/ESD/AliESDtrack.h
Updates in event mixing code for low-pt code
[u/mrichter/AliRoot.git] / STEER / ESD / AliESDtrack.h
index 1970aed770d1db174dbdab9a8eebec301a67387c..068d8475c80f92446d18d8eadb3ceadc45dda43a 100644 (file)
@@ -97,7 +97,7 @@ public:
   Double_t M() const;
   Double_t E() const;
   Double_t Y() const;
-
   Bool_t GetConstrainedPxPyPz(Double_t *p) const {
     if (!fCp) return kFALSE;
     return fCp->GetPxPyPz(p);
@@ -162,11 +162,10 @@ public:
   Bool_t GetOuterExternalParameters
         (Double_t &alpha, Double_t &x, Double_t p[5]) const;
   Bool_t GetOuterExternalCovariance(Double_t cov[15]) const;
-
+  
   Bool_t GetOuterHmpExternalParameters
         (Double_t &alpha, Double_t &x, Double_t p[5]) const;
-  Bool_t GetOuterHmpExternalCovariance(Double_t cov[15]) const;
-
+  Bool_t GetOuterHmpExternalCovariance(Double_t cov[15]) const; 
   
   Int_t GetNcls(Int_t idet) const;
   Int_t GetClusters(Int_t idet, Int_t *idx) const;
@@ -185,6 +184,7 @@ public:
   UChar_t GetITSClusterMap() const {return fITSClusterMap;}
   void     SetITSClusterMap(UChar_t amap) {fITSClusterMap = amap;}
 
+  Char_t   GetITSNcls() const { return fITSncls;}
   UChar_t GetITSSharedMap() const {return fITSSharedMap;}
   void    SetITSSharedFlag(int lr) {fITSSharedMap |= 0x1<<lr;}
   Bool_t  GetITSFakeFlag()   const {return (fITSSharedMap&BIT(7))!=0;}
@@ -324,19 +324,19 @@ public:
   void    SortTOFcluster(); // RS? Not to be used?
   void    ReMapTOFcluster(Int_t ncl,Int_t *mapping);  // RS? Not to be used?
 
-  void    SetTOFsignal(Double_t tof) {fTOFsignal=tof;}
+  void    SetTOFsignal(Double_t tof);
   Double_t GetTOFsignal() const;
-  void    SetTOFsignalToT(Double_t ToT) {fTOFsignalToT=ToT;}
+  void    SetTOFsignalToT(Double_t ToT);
   Double_t GetTOFsignalToT() const;
-  void    SetTOFsignalRaw(Double_t tof) {fTOFsignalRaw=tof;}
+  void    SetTOFsignalRaw(Double_t tof);
   Double_t GetTOFsignalRaw() const;
-  void    SetTOFsignalDz(Double_t dz) {fTOFsignalDz=dz;}
+  void    SetTOFsignalDz(Double_t dz);
   Double_t GetTOFsignalDz() const;
-  void    SetTOFsignalDx(Double_t dx) {fTOFsignalDx=dx;}
+  void    SetTOFsignalDx(Double_t dx);
   Double_t GetTOFsignalDx() const;
-  void     SetTOFDeltaBC(Short_t deltaBC) {fTOFdeltaBC=deltaBC;};
+  void     SetTOFDeltaBC(Short_t deltaBC);
   Short_t  GetTOFDeltaBC() const;
-  void     SetTOFL0L1(Short_t l0l1) {fTOFl0l1=l0l1;};
+  void     SetTOFL0L1(Short_t l0l1);
   Short_t  GetTOFL0L1() const;
   Double_t GetTOFchi2() const {return fTOFchi2;};
   void    SetTOFpid(const Double_t *p);
@@ -348,7 +348,7 @@ public:
   Int_t   GetTOFCalChannel() const;
   Int_t   GetTOFcluster() const;
   void    SetTOFcluster(Int_t index) {fTOFindex=index;}
-  void    SetTOFCalChannel(Int_t index) {fTOFCalChannel=index;}
+  void    SetTOFCalChannel(Int_t index);
   Int_t   GetTOFclusterN() const;
   Bool_t  IsTOFHitAlreadyMatched() const;
   void    SetTOFsignalTunedOnData(Double_t signal){fTOFsignalTuned=signal;}
@@ -421,7 +421,7 @@ public:
   Bool_t 
   RelateToVertexBxByBz(const AliESDVertex *vtx, Double_t b[3], Double_t maxd,
                         AliExternalTrackParam *cParam=0);
-  void GetImpactParameters(Float_t &xy,Float_t &z) const {xy=fD; z=fZ;}
+  virtual void GetImpactParameters(Float_t &xy,Float_t &z) const {xy=fD; z=fZ;}
   void GetImpactParameters(Float_t p[2], Float_t cov[3]) const {
     p[0]=fD; p[1]=fZ; cov[0]=fCdd; cov[1]=fCdz; cov[2]=fCzz;
   }
@@ -450,6 +450,37 @@ public:
   static bool OnlineMode() {return fgkOnlineMode;}
   static Double_t GetLengthInActiveZone(const AliExternalTrackParam  *paramT, Double_t deltaY, Double_t deltaZ, Double_t bz, Double_t exbPhi =0 , TTreeSRedirector * pcstream =0 );
   Double_t GetLengthInActiveZone( Int_t mode, Double_t deltaY, Double_t deltaZ, Double_t bz, Double_t exbPhi =0 , TTreeSRedirector * pcstream =0 ) const;
+
+  //---------------------------------------------------------------------------
+  //--the calibration interface--
+  //--to be used in online calibration/QA
+  //--should also be implemented in ESD so it works offline as well
+  //-----------
+  virtual Int_t GetTrackParam         ( AliExternalTrackParam &p ) const {p=*this; return 0;}
+  virtual Int_t GetTrackParamRefitted ( AliExternalTrackParam & ) const {return 0;}
+  virtual Int_t GetTrackParamITSOut   ( AliExternalTrackParam & ) const {return 0;}
+
+  Int_t GetTrackParamIp       ( AliExternalTrackParam &p ) const {
+      if(!GetInnerParam()) return -1;
+      p=*GetInnerParam();
+      return 0;}
+
+  Int_t GetTrackParamOp       ( AliExternalTrackParam &p ) const {
+      if(!GetOuterParam()) return -1;
+      p=*GetOuterParam();
+      return 0;}
+
+  Int_t GetTrackParamTPCInner ( AliExternalTrackParam &p ) const {
+      if(!GetTPCInnerParam()) return -1;
+      p=*GetTPCInnerParam();
+      return 0;}
+
+  Int_t GetTrackParamCp       ( AliExternalTrackParam &p ) const {
+      if(!GetConstrainedParam()) return -1;
+      p=*GetConstrainedParam();
+      return 0;}
+
+
 protected:
   
   AliExternalTrackParam *fCp; // Track parameters constrained to the primary vertex