]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPC.h
The new class AliTrackReference used (M.Ivanov)
[u/mrichter/AliRoot.git] / TPC / AliTPC.h
index ec067c7817b4bed418f34efb0a4a30279ee92aa5..0e1fea79d51042e48356c7366cbbbe279962c600 100644 (file)
 #include "AliDetector.h"
 #include "AliHit.h" 
 #include "AliDigit.h" 
+#include "TLorentzVector.h" 
+
 
 
 class TMatrix;
+class AliTPCFastMatrix;  //MI change
+class AliTPCFastVector;  //MI change
+
 class TTree;
 
 class TFile;
@@ -56,6 +61,7 @@ public:
   AliTPC(const char *name, const char *title);
   virtual      ~AliTPC();
   virtual void  AddHit(Int_t a1, Int_t *a2, Float_t *a3);
+  virtual void  AddTrackReference(Int_t lab,  TLorentzVector p, TLorentzVector x);
   Int_t         DistancetoPrimitive(Int_t px, Int_t py);
   virtual void  BuildGeometry();
   virtual void  CreateGeometry() {}
@@ -112,7 +118,6 @@ public:
    virtual AliHit* NextHit();
    virtual AliHit* FirstHit2(Int_t track);
    virtual AliHit* NextHit2();
-   
    virtual void LoadPoints(Int_t dummy);
    virtual void LoadPoints2(Int_t dummy);
    virtual void LoadPoints3(Int_t dumy);
@@ -129,16 +134,16 @@ public:
    void    GenerNoise(Int_t tablasize);  // make noise table
    Bool_t  IsSectorActive(Int_t sec);    // check if the sector is active
    void    SetActiveSectors(Int_t * sectors, Int_t n);  //set active sectors
-   void    SetActiveSectors(); //loop over al hits and set active only hitted sectors
-
+   Int_t GetHitType(){return fHitType;}
+   void    SetActiveSectors(Int_t flag=0); //loop over al hits and set active only hitted sectors
 private:
   //
    Bool_t  TrackInVolume(Int_t id,Int_t track);  //return true if current track is in volume
   void SetDefaults();
   void DigitizeRow(Int_t irow,Int_t isec,TObjArray **rowTriplet);
-  Float_t GetSignal(TObjArray *p1, Int_t ntr, TMatrix *m1, TMatrix *m2,
-                    Int_t *IndexRange);
-  void GetList (Float_t label,Int_t np,TMatrix *m,Int_t *IndexRange,
+  Float_t GetSignal(TObjArray *p1, Int_t ntr, AliTPCFastMatrix *m1, 
+                   AliTPCFastMatrix *m2,Int_t *IndexRange);
+  void GetList (Float_t label,Int_t np,AliTPCFastMatrix *m,Int_t *IndexRange,
                 Float_t **pList);
   void MakeSector(Int_t isec,Int_t nrows,TTree *TH,Stat_t ntracks,TObjArray **row);
   void TransportElectron(Float_t *xyz, Int_t *index);
@@ -151,7 +156,7 @@ private:
   Int_t      fCurrentNoise; //!index of the noise in  the noise table 
   Bool_t*    fActiveSectors; //!bool indicating which sectors are active
 
-  ClassDef(AliTPC,5)  // Time Projection Chamber class
+  ClassDef(AliTPC,8)  // Time Projection Chamber class
 };