/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
+/* $Id$ */
+
//-------------------------------------------------------------------------
// ITS tracker
// reads AliITSclusterMI clusters and creates AliITStrackMI tracks
// Origin: Marian Ivanov, CERN, Marian.Ivanov@cern.ch
//-------------------------------------------------------------------------
+class TTree;
+class TTreeSRedirector;
#include <TObjArray.h>
-#include "AliTracker.h"
-#include "AliITStrackMI.h"
-#include "AliITSclusterV2.h"
-#include "AliV0vertex.h"
-
class AliESD;
-class AliITSgeom;
-class TTree;
class AliHelix;
+class AliITSgeom;
class AliV0vertex;
-class AliESDV0MI;
-
-class TTreeSRedirector;
-
-
+#include "AliITSclusterV2.h"
+#include "AliITStrackMI.h"
+#include "AliTracker.h"
+#include "AliV0vertex.h"
//-------------------------------------------------------------------------
class AliITStrackerMI : public AliTracker {
AliITStrackerMI(const AliITSgeom *geom);
~AliITStrackerMI();
AliCluster *GetCluster(Int_t index) const;
+ virtual Bool_t GetTrackPoint(Int_t index, AliTrackPoint& p) const;
AliITSclusterV2 *GetClusterLayer(Int_t layn, Int_t ncl) const
{return fgLayers[layn].GetCluster(ncl);}
Int_t GetNumberOfClustersLayer(Int_t layn) const
Int_t PropagateBack(AliESD *event);
Int_t RefitInward(AliESD *event);
Bool_t RefitAt(Double_t x, AliITStrackMI *seed, const AliITStrackMI *t);
+ Bool_t RefitAt(Double_t x, AliITStrackMI *seed, const Int_t *clindex);
void SetupFirstPass(Int_t *flags, Double_t *cuts=0);
void SetupSecondPass(Int_t *flags, Double_t *cuts=0);
Double_t GetR() const {return fR;}
Int_t FindClusterIndex(Float_t z) const;
AliITSclusterV2 *GetCluster(Int_t i) const {return i<fN? fClusters[i]:0;}
- Float_t *GetWeight(Int_t i) {return i<fN ?&fClusterWeight[i]:0;}
+ Float_t *GetWeight(Int_t i) {return i<fN ?&fClusterWeight[i]:0;}
AliITSdetector &GetDetector(Int_t n) const { return fDetectors[n]; }
Int_t FindDetectorIndex(Double_t phi, Double_t z) const;
Double_t GetThickness(Double_t y, Double_t z, Double_t &x0) const;
void IncAccepted(){fAccepted++;}
Int_t GetAccepted() const {return fAccepted;}
protected:
- AliITSlayer(const AliITSlayer& /*layer*/){;}
+ AliITSlayer(const AliITSlayer& /*layer*/);
+ AliITSlayer & operator=(const AliITSlayer& /*layer*/);
Double_t fR; // mean radius of this layer
Double_t fPhiOffset; // offset of the first detector in Phi
Int_t fNladders; // number of ladders
protected:
Int_t GetNearestLayer(const Double_t *xr) const; //get nearest upper layer close to the point xr
void FindV02(AliESD *event); //try to find V0
+ void RefitV02(AliESD *event); //try to refit V0's
void UpdateTPCV0(AliESD *event); //try to update, or reject TPC V0s
void CookLabel(AliKalmanTrack *t,Float_t wrong) const;
void CookLabel(AliITStrackMI *t,Float_t wrong) const;
Float_t * fCoeficients; //! working array with errors and mean cluser shape
AliESD * fEsd; //! pointer to the ESD event
TTreeSRedirector *fDebugStreamer; //!debug streamer
- private:
- AliITStrackerMI(const AliITStrackerMI * /*tracker*/){;}
+private:
+ AliITStrackerMI(const AliITStrackerMI &);
+ AliITStrackerMI & operator=(const AliITStrackerMI &);
ClassDef(AliITStrackerMI,2) //ITS tracker MI
};