]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/MUONTrigger.C
macro back to life (Indranil, Gines, Ivana)
[u/mrichter/AliRoot.git] / MUON / MUONTrigger.C
index ead7d9bb9a3e28556da1a90d8563504dec573d5d..13f995099777ca2a60c503fa395c9cda92257afd 100644 (file)
@@ -1,3 +1,6 @@
+
+
+
 /**************************************************************************
  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  *                                                                        *
 #include "AliMUONDigit.h"
 #include "AliMUONTriggerDecision.h"
 #endif
-void MUONTrigger(char * FileName="galice.root", Int_t nevents=1, Int_t idebug=2)
+void MUONTrigger(char * FileName="galice.root", Int_t nevents=1, Int_t idebug=1)
 {
   // Creating Run Loader and openning file containing Digits 
     AliRunLoader * RunLoader = AliRunLoader::Open(FileName,"MUONLoader","UPDATE");
     if (RunLoader ==0x0) {
-       printf(">>> Error : Error Opening %s file \n",FileName);
-       return;
+        printf(">>> Error : Error Opening %s file \n",FileName);
+        return;
     }
     // Loading AliRun master
     if (RunLoader->GetAliRun() == 0x0) RunLoader->LoadgAlice();
@@ -46,7 +49,6 @@ void MUONTrigger(char * FileName="galice.root", Int_t nevents=1, Int_t idebug=2)
     // Creating MUONTriggerDecision
     AliMUONTriggerDecision* decision = new AliMUONTriggerDecision(MUONLoader ,idebug,MUONData);
     
-    Int_t nEvents = RunLoader->GetNumberOfEvents();
     AliMUONDigit * mDigit;
     
     Int_t tracks[10];
@@ -54,41 +56,35 @@ void MUONTrigger(char * FileName="galice.root", Int_t nevents=1, Int_t idebug=2)
     Int_t digits[7];
     
     for(Int_t ievent = 0; ievent < nevents; ievent++) {
-       printf(">>> Event %i out of %i \n",ievent,nevents);
-       RunLoader->GetEvent(ievent);
-       MUONData->SetTreeAddress("D");
-       
-       for(Int_t icathode=0; icathode<2; icathode++) {
-           MUONData->GetCathode(icathode);
-           for(Int_t ichamber=10; ichamber<14; ichamber++) {         
-               Int_t idigit, ndigits;
-               ndigits = (Int_t) MUONData->Digits(ichamber)->GetEntriesFast();
-//           printf(">>> Chamber Cathode ndigits %d %d %d\n",ichamber,icathode,ndigits);             
-               for(idigit=0; idigit<ndigits; idigit++) {
-                   mDigit = static_cast<AliMUONDigit*>(MUONData->Digits(ichamber)->At(idigit));
-                   digits[0] = mDigit->PadX();
-                   digits[1] = mDigit->PadY();
-                   digits[2] = mDigit->Cathode();
-                   digits[3] = mDigit->Signal();
-                   digits[4] = mDigit->Physics();
-                   digits[5] = mDigit->Hit();
-                   digits[6] = mDigit->DetElemId();
-/*
-  Int_t nptracks = mDigit->GetNTracks();
-  for (Int_t i = 0; i < nptracks; i++) {                     
-  tracks[i]   = mDigit->GetTrack(i);
-  charges[i]  = mDigit->GetCharge(i);
-  }
-*/
-//               printf("ichamber icathode ix iy %d %d %d %d \n",ichamber,icathode,mDigit->PadX(),mDigit->PadY());
-                   
-                   decision->AddDigit(ichamber, tracks, charges, digits);
-               } // loop on digits
-           } // loop on chambers
-       } // loop on cathodes      
-       MUONData->ResetDigits();
-       decision->Trigger();
-       decision->ClearDigits();
+        printf(">>> Event %i out of %i \n",ievent,nevents);
+        RunLoader->GetEvent(ievent);
+        MUONData->SetTreeAddress("D");
+        
+       MUONData->GetDigits();
+       for(Int_t ichamber=10; ichamber<14; ichamber++) {         
+           Int_t idigit, ndigits;
+           ndigits = (Int_t) MUONData->Digits(ichamber)->GetEntriesFast();
+//            printf(">>> Chamber Cathode ndigits %d %d %d\n",ichamber,icathode,ndigits);             
+           for(idigit=0; idigit<ndigits; idigit++) {
+               mDigit = static_cast<AliMUONDigit*>(MUONData->Digits(ichamber)->At(idigit));
+               digits[0] = mDigit->PadX();
+               digits[1] = mDigit->PadY();
+               digits[2] = mDigit->Cathode();
+               digits[3] = mDigit->Signal();
+               digits[4] = mDigit->Physics();
+               digits[5] = mDigit->Hit();
+               digits[6] = mDigit->DetElemId();
+               
+               Int_t digitindex = 0 ;
+                printf("ichamber ix iy %d %d %d \n",ichamber,mDigit->PadX(),mDigit->PadY());
+               
+               decision->AddDigit(ichamber, tracks, charges, digits, digitindex );
+           } // loop on digits
+       } // loop on chambers
+       //  } // loop on cathodes      
+        MUONData->ResetDigits();
+        decision->Trigger();
+        decision->ClearDigits();
     } // loop on events
     MUONLoader->UnloadDigits();
 }