]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSRawCluster.h
Remove some shielding to accomodate compensator magnet.
[u/mrichter/AliRoot.git] / ITS / AliITSRawCluster.h
index a7fdd0d7010ecebc044cbf780d5fb80d351fa29e..6853fba0e1593463626eb3c443c94e75d37d0d2e 100644 (file)
 
 class AliITSRawCluster : public TObject {
   
-  // this class is subject to changes ! - info used for declustering 
+  // this class is subject to changes !!! - info used for declustering 
   // and  eventual debugging
   
 public:
   
   AliITSRawCluster() {
     fMultiplicity=0;
-    /*
-      for (int k=0;k<100;k++) {
-          fIndexMap[k]=-1;
-      }
-      fNcluster[0]=fNcluster[1]=-1;
-      fChi2=-1; 
-    */
   }
   
   virtual ~AliITSRawCluster() {
@@ -38,9 +31,6 @@ public:
 public:
 
   Int_t       fMultiplicity;        // cluster multiplicity
-  //Int_t       fIndexMap[100];     // indices of digits
-  //Int_t       fNcluster[2];
-  //Float_t     fChi2;
   
   ClassDef(AliITSRawCluster,1)  // AliITSRawCluster class
     };
@@ -55,9 +45,10 @@ public:
   
   AliITSRawClusterSPD() {
     // constructor
-    fX=fZ=fQ;
-    fZStart=fZStop;
-    fNClZ=fNClX=fXStart=fXStop=fXStartf=fXStopf=fZend=fNTracks;
+    fX=fZ=fQ=0;
+    fZStart=fZStop=0;
+    fNClZ=fNClX=fXStart=fXStop=fXStartf=fXStopf=fZend=fNTracks=0;
+    fTracks[0]=fTracks[1]=fTracks[2]=-3;
        }
   
   AliITSRawClusterSPD(Float_t clz,Float_t clx,Float_t Charge,Int_t ClusterSizeZ,Int_t ClusterSizeX,Int_t xstart,Int_t xstop,Int_t xstartf,Int_t xstopf,Float_t zstart,Float_t zstop,Int_t zend);
@@ -172,21 +163,43 @@ public:
   
   AliITSRawClusterSDD() {
     // constructor
-    fX=fZ=fQ;
-    fWing=fNsamples=0;
+    fX=fZ=fQ=0;
+    fWing=0;
     fNanodes=1;
     fAnode=fTime=fPeakAmplitude=0;
+    fPeakPosition=-1;
+    fMultiplicity=0;
+    fTstart=fTstop=fTstartf=fTstopf=0;
+    fAstart=fAstop=0;
   }
-  
-  AliITSRawClusterSDD(Int_t wing, Float_t Anode,Float_t Time,Float_t Charge,
-                     Float_t PeakAmplitude,Float_t Asigma, Float_t Tsigma,Float_t DriftPath, Float_t AnodeOffset,Int_t Samples);
+    
+  AliITSRawClusterSDD(Int_t wing, Float_t Anode,Float_t Time, Float_t Charge, 
+              Float_t PeakAmplitude,Int_t PeakPosition,  Float_t Asigma, Float_t Tsigma, Float_t DriftPath, Float_t AnodeOffset,  Int_t Samples, 
+                          Int_t Tstart, Int_t Tstop, Int_t Tstartf, Int_t Tstopf, Int_t Anodes, Int_t Astart, Int_t Astop);
+  AliITSRawClusterSDD( const AliITSRawClusterSDD & source);
+//  AliITSRawClusterSDD(Int_t wing, Float_t Anode,Float_t Time,Float_t Charge,
+//                   Float_t PeakAmplitude,Int_t PeakPosition,Float_t Asigma, Float_t Tsigma,Float_t DriftPath, Float_t AnodeOffset,Int_t Samples);
   virtual ~AliITSRawClusterSDD() {
     // destructor
   }
   
   void Add(AliITSRawClusterSDD* clJ); 
   Bool_t Brother(AliITSRawClusterSDD* cluster,Float_t dz,Float_t dx);
+//  Bool_t Brother(AliITSRawClusterSDD* cluster);
   void PrintInfo();
+  // Setters
+  void SetX(Float_t x) {fX=x;}
+  void SetZ(Float_t z) {fZ=z;}
+  void SetQ(Float_t q) {fQ=q;}
+  void SetAnode(Float_t anode) {fAnode=anode;}
+  void SetTime(Float_t time) {fTime=time;}
+  void SetAsigma(Float_t asigma) {fAsigma=asigma;}
+  void SetTsigma(Float_t tsigma) {fTsigma=tsigma;}
+ void SetWing(Int_t wing) {fWing=wing;}
+  void SetNanodes(Int_t na) {fNanodes=na;}
+  void SetNsamples(Int_t ns) {fMultiplicity=ns;}
+  void SetPeakAmpl(Float_t ampl) {fPeakAmplitude=ampl;}
+  void SetPeakPos(Int_t pos) {fPeakPosition=pos;}
   // Getters
   Float_t X() const {
     //X
@@ -208,6 +221,14 @@ public:
     //T
     return fTime ;
   }
+  Float_t Asigma() const {
+    //Asigma
+    return fAsigma ;
+  }
+  Float_t Tsigma() const {
+    //Tsigma
+    return fTsigma ;
+  }
   Float_t W() const {
     //W
     return fWing ;
@@ -218,14 +239,43 @@ public:
   }
   Int_t Samples() const {
     //Samples
-    return fNsamples ;
+    return fMultiplicity;
   }
   Float_t PeakAmpl() const {
     //PeakAmpl
     return fPeakAmplitude ;
   }
-  
-protected:
+  Float_t SumAmpl() const {
+    //PeakAmpl
+    return fSumAmplitude ;
+  }
+  Int_t PeakPos() {return fPeakPosition;}
+
+  Int_t Tstart() const {
+    //Tstart
+    return fTstart ;
+  }
+  Int_t Tstartf() const {
+    //Tstartf
+    return fTstartf ;
+  }
+  Int_t Tstop() const {
+    //Tstop
+    return fTstop ;
+  }
+  Int_t Tstopf() const {
+    //Tstopf
+    return fTstopf ;
+  }
+  Int_t Astart() const {
+    //Astart
+    return fAstart ;
+  }
+  Int_t Astop() const {
+    //Astop
+    return fAstop ;
+  }
+public:
   
   Float_t   fX;                 // X of cluster
   Float_t   fZ;                 // Z of cluster
@@ -233,9 +283,18 @@ protected:
   Int_t     fWing;              // Wing number
   Float_t   fAnode;             // Anode number
   Float_t   fTime;              // Drift Time
+  Float_t   fAsigma;            //
+  Float_t   fTsigma;            //
   Float_t   fPeakAmplitude;     // Peak Amplitude
+  Float_t   fSumAmplitude;      // Total Amplitude (for weighting)  
+  Int_t     fPeakPosition;      // index of digit corresponding to peak
   Int_t     fNanodes;           // N of anodes used for the cluster
-  Int_t     fNsamples;          // N of samples used for the cluster
+  Int_t     fTstart;            // First sample in 1D cluster   
+  Int_t     fTstop;             // Last sample in 1D cluster 
+  Int_t     fTstartf;           // First sample in the full 2D cluster
+  Int_t     fTstopf;            // Last sample in the full 2D cluster  
+  Int_t     fAstart;            // First anode in the 2D cluster
+  Int_t     fAstop;             // last anode in the 2D cluster
   
   ClassDef(AliITSRawClusterSDD,1)  // AliITSRawCluster class for SDD
     };
@@ -248,14 +307,10 @@ public:
   AliITSRawClusterSSD() {
     fMultiplicityN=0;
     fQErr=0; 
+    fSignalP=0;
+    fSignalN=0;
     fStatus=-1;
-    /*
-      for (int k=0;k<100;k++) {
-         fIndexMapN[k]=-1;
-      }
-      fProbability=0;
-      fChi2N=-1;
-    */
+    fNtracks=0;
   }
   AliITSRawClusterSSD(Float_t Prob,Int_t Sp,Int_t Sn);
   virtual ~AliITSRawClusterSSD() {
@@ -276,10 +331,14 @@ public:
   Int_t   fMultiplicityN;  // The number of N side strips involved 
                            // in this point calculations
   Float_t fQErr;           // Total charge error
+  Float_t fSignalP;        // Signal of P side cluster
+  Float_t fSignalN;        // Signal of N side cluster
   Int_t   fStatus;         // Flag status : 0 - real point
                            //               1 - ghost 
                            //               2 - EIC ? 
                            //               3 - single side 
+  Int_t fNtracks;          // Number of tracks created the cluster
+
   
   // Float_t fProbability;    // The probability that this is a "real" point
   // Int_t  fIndexMapN[100];  // indices of digits for Nside - the corresponding