]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliTrackPointArray.h
Bug#56095: Adding cluster type to the ITS space-points (Francesco)
[u/mrichter/AliRoot.git] / STEER / AliTrackPointArray.h
index 266f0af5879159bd72360547eed43100e53b6e1a..551ffba3135034eec0b2e416b78dfaac383af265 100644 (file)
@@ -21,8 +21,8 @@ class AliTrackPoint : public TObject {
 
  public:
   AliTrackPoint();
-  AliTrackPoint(Float_t x, Float_t y, Float_t z, const Float_t *cov, UShort_t volid, Float_t charge = 0, Float_t drifttime = 0,Float_t chargeratio = 0);
-  AliTrackPoint(const Float_t *xyz, const Float_t *cov, UShort_t volid, Float_t charge = 0, Float_t drifttime = 0,Float_t chargeratio = 0);
+  AliTrackPoint(Float_t x, Float_t y, Float_t z, const Float_t *cov, UShort_t volid, Float_t charge = 0, Float_t drifttime = 0,Float_t chargeratio = 0, Int_t clutype = 0);
+  AliTrackPoint(const Float_t *xyz, const Float_t *cov, UShort_t volid, Float_t charge = 0, Float_t drifttime = 0,Float_t chargeratio = 0, Int_t clutype=0);
   AliTrackPoint(const AliTrackPoint &p);
   AliTrackPoint& operator= (const AliTrackPoint& p);
   virtual ~AliTrackPoint() {}
@@ -35,6 +35,7 @@ class AliTrackPoint : public TObject {
   void     SetCharge(Float_t charge) { fCharge = charge; }
   void     SetDriftTime(Float_t time) { fDriftTime = time; }
   void     SetChargeRatio(Float_t ratio) {  fChargeRatio= ratio; }
+  void     SetClusterType(Int_t clutype) {  fClusterType= clutype; }
   void     SetExtra(Bool_t flag=kTRUE) { fIsExtra = flag; }
 
   Float_t  GetX() const { return fX; }
@@ -46,6 +47,7 @@ class AliTrackPoint : public TObject {
   Float_t  GetCharge() const { return fCharge; }
   Float_t  GetDriftTime() const { return fDriftTime;}
   Float_t  GetChargeRatio() const { return fChargeRatio;}
+  Int_t    GetClusterType() const { return fClusterType;}
   Bool_t   IsExtra() const { return fIsExtra;}
 
   Float_t  GetResidual(const AliTrackPoint &p, Bool_t weighted = kFALSE) const;
@@ -68,11 +70,12 @@ class AliTrackPoint : public TObject {
   Float_t  fCharge;   // Cluster charge in arbitrary units
   Float_t  fDriftTime;// Drift time in SDD (in ns)
   Float_t  fChargeRatio; // Charge ratio in SSD 
+  Int_t    fClusterType; // Cluster Type (encoded info on size and shape)
   Float_t  fCov[6];   // Cov matrix
   Bool_t   fIsExtra;  // attached by tracker but not used in fit
   UShort_t fVolumeID; // Volume ID
 
-  ClassDef(AliTrackPoint,6)
+  ClassDef(AliTrackPoint,7)
 };
 
 //////////////////////////////////////////////////////////////////////////////
@@ -107,6 +110,7 @@ class AliTrackPointArray : public TObject {
   const Float_t*  GetCharge() const { return &fCharge[0]; }
   const Float_t*  GetDriftTime() const { return &fDriftTime[0]; }
   const Float_t*  GetChargeRatio() const { return &fChargeRatio[0]; }
+  const Int_t*    GetClusterType() const { return &fClusterType[0]; }
   const Bool_t*   GetExtra() const { return &fIsExtra[0]; }
   const Float_t*  GetCov() const { return &fCov[0]; }
   const UShort_t* GetVolumeID() const { return &fVolumeID[0]; }
@@ -125,12 +129,13 @@ class AliTrackPointArray : public TObject {
   Float_t   *fCharge;    //[fNPoints] Array with clusters charge
   Float_t   *fDriftTime; //[fNPoints] Array with drift times
   Float_t   *fChargeRatio; //[fNPoints] Array with charge ratio
+  Int_t     *fClusterType; //[fNPoints] Array with cluster type
   Bool_t    *fIsExtra;   //[fNPoints] Array with extra flags
   Int_t     fSize;       // Size of array with cov matrices = 6*N of points
   Float_t   *fCov;       //[fSize] Array with space point coordinates cov matrix
   UShort_t  *fVolumeID;  //[fNPoints] Array of space point volume IDs
 
-  ClassDef(AliTrackPointArray,6)
+  ClassDef(AliTrackPointArray,7)
 };
 
 #endif