]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONResponseTrigger.cxx
added headers needed for compilation
[u/mrichter/AliRoot.git] / MUON / AliMUONResponseTrigger.cxx
index fd1f23833c7704494a81a0a9516f2c3c6de434e4..d1a8e1a45133c6551bacc9e318aa0d855f90af2c 100644 (file)
@@ -81,7 +81,7 @@ AliMUONResponseTrigger::~AliMUONResponseTrigger()
 
 //_____________________________________________________________________________
 void 
-AliMUONResponseTrigger::DisIntegrate(const AliMUONHit& hit, TList& digits)
+AliMUONResponseTrigger::DisIntegrate(const AliMUONHit& hit, TList& digits, Float_t /*timeDif*/)
 {
   /// Generate 2 digits (one on each cathode) from 1 hit, i.e. no cluster-size
   /// generation (simplest response case).
@@ -90,7 +90,7 @@ AliMUONResponseTrigger::DisIntegrate(const AliMUONHit& hit, TList& digits)
   
   Float_t xhit = hit.X();
   Float_t yhit = hit.Y();
-  Float_t zhit = 0; // FIXME : should it be hit.Z() ?
+  Float_t zhit = hit.Z();
   Int_t detElemId = hit.DetElemId();  
   
   Double_t x,y,z;
@@ -103,15 +103,17 @@ AliMUONResponseTrigger::DisIntegrate(const AliMUONHit& hit, TList& digits)
     twentyNano=1;
   }
   
+  Int_t nboard=0;
+
   for ( Int_t cath = AliMp::kCath0; cath <= AliMp::kCath1; ++cath )
   {
     const AliMpVSegmentation* seg 
       = AliMpSegmentation::Instance()
         ->GetMpSegmentation(detElemId,AliMp::GetCathodType(cath));
     
-    AliMpPad pad = seg->PadByPosition(TVector2(x,y),kFALSE);
-    Int_t ix = pad.GetIndices().GetFirst();
-    Int_t iy = pad.GetIndices().GetSecond();
+    AliMpPad pad = seg->PadByPosition(x,y,kFALSE);
+    Int_t ix = pad.GetIx();
+    Int_t iy = pad.GetIy();
     
     AliDebug(1,Form("xhit,yhit=%e,%e lx,ly,lz=%e,%e,%e ix,iy=%d,%d",
                     xhit,yhit,x,y,z,ix,iy));
@@ -124,19 +126,18 @@ AliMUONResponseTrigger::DisIntegrate(const AliMUONHit& hit, TList& digits)
                       xhit,yhit,x,y,z,ix,iy));
       continue;
     }
-    AliMUONDigit* d = new AliMUONDigit(detElemId,pad.GetLocation(0).GetFirst(),
-                                       pad.GetLocation(0).GetSecond(),cath);
+    
+    if ( cath == AliMp::kCath0 ) nboard = pad.GetLocalBoardId(0);
+        
+    AliMUONDigit* d = new AliMUONDigit(detElemId,nboard,
+                                       pad.GetLocalBoardChannel(0),cath);
     d->SetPadXY(ix,iy);
 
     //FIXME : a trigger digit can have several locations. 
     //this is not currently supported by the digit class. Change that or not ?
     d->SetCharge(twentyNano);
+
+
     digits.Add(d);   
   }
-  
 }
-
-
-
-
-