]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSmodule.h
Increased size of collection in Merge and protected SaveHistograms
[u/mrichter/AliRoot.git] / ITS / AliITSmodule.h
index 3b22afa954f1e7de6f4d8e08a62bf933856f5235..e49468c64ff00b13f675c859b6ccd1405c13a1a3 100644 (file)
@@ -4,6 +4,19 @@
  * See cxx source for full Copyright notice                               */
 
 /* $Id$ */
+///////////////////////////////////////////////////////////////////////
+//                                                                   //
+//  Class AliITSmodule                                               //
+//  is a superclass for AliITSmoduleSSD, SPD and SDD.                //
+//  The main function of modules is to simulate DIGITS from          //
+//  GEANT HITS and produce POINTS from DIGITS                        //
+//  It also make fast simulation without use of DIGITS               //
+//                                                                   //
+//  created by: A.Boucham, W.Peryt, S.Radomski, P.Skowronski         //
+//              R.Barbera, B. Batynia, B. Nilsen                     //
+//  ver. 1.0    CERN, 16.09.1999                                     //
+//                                                                   //
+///////////////////////////////////////////////////////////////////////
 
 #include <TObject.h>
 #include <TObjArray.h>
@@ -15,20 +28,6 @@ class AliITShit;
 
 class AliITSmodule:public TObject{
 
-//________________________________________________________________
-//
-//  Class AliITSmodule 
-//  is a superclass for AliITSmoduleSSD, SPD and SDD.
-//  The main function of modules is to simulate DIGITS from  
-//  GEANT HITS and produce POINTS from DIGITS
-//  It also make fast simulation without use of DIGITS
-//
-//  created by: A.Boucham, W.Peryt, S.Radomski, P.Skowronski
-//              R.Barbera, B. Batynia, B. Nilsen
-//  ver. 1.0    CERN, 16.09.1999  
-// 
-//________________________________________________________________
-//
 
  public:
     //________________________________________________________________
@@ -87,25 +86,30 @@ class AliITSmodule:public TObject{
     // Adds pointer of hit belonging to this module
     // and returns number of hits in this module
     Int_t  AddHit(AliITShit *hit,Int_t TrackIndex,Int_t HitIndex);
-    void MedianHitG(Int_t index, Float_t hitx1,Float_t hity1,Float_t hitz1, 
-                    Float_t hitx2,Float_t hity2,Float_t hitz2, Float_t &xMg, 
-                    Float_t &yMg, Float_t &zMg);
-    void MedianHitL(Int_t index, AliITShit *itsHit1, AliITShit *itsHit2, 
-                    Float_t &xMl, Float_t &yMl, Float_t &zMl);
-    Double_t PathLength(Int_t index, AliITShit *itsHit1, AliITShit *itsHit2);
-    Int_t GetHitTrackIndex(Int_t i) { 
-      // get hit track index
-      return fTrackIndex->At(i);
-    }
+    Int_t GetHitTrackIndex(Int_t i) {// get hit track index
+       return fTrackIndex->At(i);}
     Int_t GetHitHitIndex(Int_t i) { 
-      // return the hit index number in TreeH for the given sorted hit in the module.
-      return fHitIndex->At(i);
-    }
+       // return the hit index number in TreeH for the given sorted hit in
+       // the module.
+       return fHitIndex->At(i);}
     void GetHitTrackAndHitIndex(Int_t i,Int_t &TrackIndex,Int_t &HitIndex) {
     // return the hit index number for the given hit. Hits are kept on
     // file according to their track index and hit index numbers.
-      TrackIndex = fTrackIndex->At(i);HitIndex = fHitIndex->At(i);
-    }
+      TrackIndex = fTrackIndex->At(i);HitIndex = fHitIndex->At(i);}
+    // Computes mean global location from hits that make up a track passing
+    // through a volume.
+    Bool_t MedianHitG(AliITShit *h1,AliITShit *h2,
+                     Float_t &x,Float_t &y,Float_t &z);
+    void MedianHitG(Int_t index, Float_t hitx1,Float_t hity1,Float_t hitz1, 
+                    Float_t hitx2,Float_t hity2,Float_t hitz2, Float_t &xMg, 
+                    Float_t &yMg, Float_t &zMg);
+    // Computes mean local location from hits that make up a track passing
+    // through a volume.
+    Bool_t MedianHitL(AliITShit *h1,AliITShit *h2,
+                     Float_t &x,Float_t &y,Float_t &z) const;
+    void MedianHitL(Int_t,AliITShit *,AliITShit *,Float_t &,Float_t &,
+                   Float_t &){};
+    Double_t PathLength(Int_t index, AliITShit *itsHit1, AliITShit *itsHit2);
     // returns both the track and hit index numbers for the given hit. Hits
     // are kept on file according to their track index and hit index numbers.
     void MedianHit(Int_t index, Float_t xg,Float_t yg,Float_t zg,
@@ -113,7 +117,7 @@ class AliITSmodule:public TObject{
                                   Int_t &flag);
     void PathLength(Int_t index,Float_t x,Float_t y,Float_t z,Int_t status,
                     Int_t &nseg,Float_t &x1,Float_t &y1,Float_t &z1,
-                   Float_t &dx1,Float_t &dy1, Float_t &dz1,Int_t &flag);
+                   Float_t &dx1,Float_t &dy1, Float_t &dz1,Int_t &flag) const;
     Bool_t LineSegmentL(Int_t hindex,Double_t &a,Double_t &b, 
                        Double_t &c,Double_t &d,Double_t &e,Double_t &f,
                        Double_t &de);