Optional scoring for background studies in HALL.
[u/mrichter/AliRoot.git] / TOF / AliTOFtrackerV1.h
index fb68ab7..c48f156 100644 (file)
@@ -8,7 +8,7 @@
 
 //----------------------------------------------------------------------//
 //                                                                      //
-// AliTOFtrackerV1 Class                                                  //
+// AliTOFtrackerV1 Class                                                //
 // Task: Perform association of the ESD tracks to TOF Clusters          //
 // and Update ESD track with associated TOF Cluster parameters          //
 //                                                                      //
@@ -22,6 +22,7 @@
 #include "AliTracker.h"
 
 class TClonesArray;
+class TObjArray;
 class TH1F;
 class TH2F;
 
@@ -29,25 +30,24 @@ class AliESDEvent;
 
 class AliTOFcluster;
 class AliTOFRecoParam;
-class AliTOFpidESD;
+class AliESDpid;
 
 class AliTOFtrackerV1 : public AliTracker {
 
-enum {kMaxCluster=77777}; //maximal number of the TOF clusters
-
 public:
 
  AliTOFtrackerV1(); 
- AliTOFtrackerV1(const AliTOFtrackerV1 &t); //Copy Ctor 
- AliTOFtrackerV1& operator=(const AliTOFtrackerV1 &source); // ass. op.
 
  virtual ~AliTOFtrackerV1();
+ virtual void GetPidSettings(AliESDpid *esdPID);
  virtual Int_t Clusters2Tracks(AliESDEvent* /*event*/) {return -1;};
- virtual Int_t PropagateBack(AliESDEvent* event);
+ virtual Int_t PropagateBack(AliESDEvent * const event);
  virtual Int_t RefitInward(AliESDEvent* /*event*/) {return -1;};
  virtual Int_t LoadClusters(TTree * cTree); // Load Clusters
  virtual void  UnloadClusters();// UnLoad Clusters
- virtual AliCluster *GetCluster(Int_t /*index*/) const {return NULL;};
+ virtual AliCluster *GetCluster(Int_t index) const
+   {if (index==-1 || index >= fN) return NULL;
+   return (AliCluster *) fClusters[index];};
  Bool_t GetTrackPoint(Int_t index, AliTrackPoint& p) const;
  void InitCheckHists();
  void SaveCheckHists();
@@ -55,16 +55,20 @@ public:
 
 private:
 
+ enum {kMaxCluster=77777}; //maximal number of the TOF clusters
+
+ AliTOFtrackerV1(const AliTOFtrackerV1 &t); //Copy Ctor 
+ AliTOFtrackerV1& operator=(const AliTOFtrackerV1 &source); // ass. op.
+
  Int_t FindClusterIndex(Double_t z) const; // Returns cluster index 
  void  MatchTracks(); // Matching Algorithm 
  void  CollectESD(); // Select starting Set for Matching 
  Float_t  GetTimeZerofromTOF(AliESDEvent* /*event*/) const; // T0 from TOF
- Float_t  GetTimeZerofromT0(AliESDEvent* event) const; // T0 from T0
- Float_t  CorrectTimeWalk(Float_t dist,Float_t tof); // Time Walk correction
+ Float_t  GetTimeZerofromT0(const AliESDEvent * const event) const; // T0 from T0
+ Float_t  CorrectTimeWalk(Float_t dist,Float_t tof) const; // Time Walk correction
 
- AliTOFRecoParam* fRecoParam;           // Pointer to TOF Recon. Pars
- AliTOFpidESD*    fPid;               // Pointer to TOF PID
- AliTOFcluster *fClusters[kMaxCluster];  // pointers to the TOF clusters
+ const AliTOFRecoParam* fkRecoParam;    // Pointer to TOF Recon. Pars
+ AliTOFcluster *fClusters[kMaxCluster]; // pointers to the TOF clusters
 
  Int_t fN;              // Number of Clusters
  Int_t fNseeds;         // Number of track seeds  
@@ -75,7 +79,7 @@ private:
  Int_t fnmatch;         // Total matched tracks
  
  TClonesArray* fTracks; //! pointer to the TClonesArray with TOF tracks
- TClonesArray* fSeeds;  //! pointer to the TClonesArray with ESD tracks
+ TObjArray* fSeeds;  //! pointer to the TObjArray with ESD tracks
  //Digits/Reco QA histos
 
  TH2F * fHDigClusMap; //Digits QA, Cluster Map 
@@ -90,7 +94,7 @@ private:
  TH2F * fHRecSigYVsPWin;//Reco QA, search window size in Y (cm)
  TH2F * fHRecSigZVsPWin;//Reco QA, search window size in X (cm)
 
- ClassDef(AliTOFtrackerV1, 1) // TOF tracker 
+ ClassDef(AliTOFtrackerV1, 3) // TOF tracker 
 };
 
 #endif