]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONChamber.h
Modifications needed by the HBT analysis (P.Skowronski)
[u/mrichter/AliRoot.git] / MUON / AliMUONChamber.h
index 61639d1bec2f5bb37fa99b7b5c28a813104306df..3557cedced15325341bc105bfd3d8d1c7140f995 100644 (file)
@@ -12,6 +12,7 @@
 class AliMUONClusterFinderVS;
 //class AliMUONResponse ;
 //class AliSegmentation ;
+class AliMUONChamberGeometry;
 
 class AliMUONChamber:
 public TObject
@@ -23,11 +24,20 @@ public TObject
     virtual ~AliMUONChamber();
     
 //
+// Get chamber Id
+  virtual Int_t   GetId() {return fId;}
+//
+
+// Get chamber Id
+  virtual Bool_t  IsSensId(Int_t volId) const;
+/*
 // Get GEANT id of sensitive volume
   virtual Int_t   GetGid() {return fGid;}
 // Set GEANT id of sensitive volume
   virtual void    SetGid(Int_t id) {fGid=id;}
-//  
+//
+*/
+  
 // Initialisation
   virtual void    Init();
 // Set z-position of chamber  
@@ -49,7 +59,7 @@ public TObject
 //  
 // Set segmentation model
   virtual void    SetSegmentationModel(Int_t i, AliSegmentation* thisSegmentation) {
-      (*fSegmentation)[i-1] = thisSegmentation;
+      fSegmentation->AddAt(thisSegmentation,i-1);
   }
 // Set Cluster reconstruction model  
   virtual void    SetReconstructionModel(AliMUONClusterFinderVS *thisReconstruction) {
@@ -81,6 +91,9 @@ public TObject
 //
 // Initialisation of segmentation for hit  
   virtual void    SigGenInit(Float_t x, Float_t y, Float_t z);
+// Initialisation of charge fluctuation for given hit
+  virtual void    ChargeCorrelationInit();
+
 // Configuration forwarding
 //
 // Define signal distribution region
@@ -109,6 +122,12 @@ public TObject
   virtual Float_t DAlu() {return fdAlu;}  
   virtual void SetDGas(Float_t DGas) {fdGas = DGas;}
   virtual void SetDAlu(Float_t DAlu) {fdAlu = DAlu;}  
+  virtual void SetChargeCorrel(Float_t correl) {fResponse->SetChargeCorrel(correl);}
+
+// geometry  
+  void SetGeometry(AliMUONChamberGeometry* geometry) {fGeometry = geometry;}
+  AliMUONChamberGeometry* GetGeometry() const {return fGeometry; }
+
 // assignment operator  
   AliMUONChamber& operator =(const AliMUONChamber& rhs);
   
@@ -116,15 +135,18 @@ public TObject
   Int_t   fId;   // chamber number
   Float_t fdGas; // half gaz gap
   Float_t fdAlu; // half Alu width  
-  Int_t   fGid;  // GEANT volume if for sensitive volume of this chamber
+  //Int_t   fGid;  // GEANT volume if for sensitive volume of this chamber
+                   // moved to AliMUONChamberGeometry
   Float_t fZ;    // Z position (cm)
   Int_t   fnsec; // number of semented cathode planes
   Float_t frMin; // innermost sensitive radius
   Float_t frMax; // outermost sensitive radius
+  Float_t fCurrentCorrel; //! charge correlation for current hit.
 
   TObjArray              *fSegmentation;    // pointer to segmentation
   AliMUONClusterFinderVS *fReconstruction;  // pointer to reconstruction
   AliMUONResponse        *fResponse;        // pointer to response
+  AliMUONChamberGeometry *fGeometry;        // pointer to geometry
   ClassDef(AliMUONChamber,1) // Muon tracking chamber class
 };