]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONQADataMakerRec.cxx
test commit
[u/mrichter/AliRoot.git] / MUON / AliMUONQADataMakerRec.cxx
index d66990cc193fb43d5af467d9004e3285214f9777..0f9182911e870230b23f1e0dcdbebfe36dd00da1 100644 (file)
@@ -28,6 +28,7 @@
 ///
 /// \author C. Finck, D. Stocco, L. Aphecetche, A. Blanc
 
+#include "AliDAQ.h"
 #include "AliMUONTrackerQADataMakerRec.h"
 #include "AliMUONTriggerQADataMakerRec.h"
 #include "AliQAChecker.h"
@@ -45,6 +46,7 @@ fTracker(tracker ? new AliMUONTrackerQADataMakerRec(this) : 0x0),
 fTrigger(trigger ? new AliMUONTriggerQADataMakerRec(this) : 0x0)
 {
   /// ctor
+  AliInfo(Form("tracker=%d trigger=%d",tracker,trigger));
 }
 
 //__________________________________________________________________
@@ -70,7 +72,9 @@ Int_t AliMUONQADataMakerRec::Add2List(TH1 * hist, const Int_t index, AliQAv1::TA
 void AliMUONQADataMakerRec::EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray** list)
 {
   /// Detector specific actions at end of cycle
-  
+  //
+  ResetEventTrigClasses(); // RS
+  //
   for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) 
   {
     if (! IsValidEventSpecie(specie, list)  ) continue;
@@ -148,6 +152,8 @@ void AliMUONQADataMakerRec::InitRaws()
        
   if ( fTracker ) fTracker->InitRaws();
   if ( fTrigger ) fTrigger->InitRaws();
+  //
+  ClonePerTrigClass(AliQAv1::kRAWS); // this should be the last line
 }
 
 //__________________________________________________________________
@@ -156,6 +162,8 @@ void AliMUONQADataMakerRec::InitDigits()
   /// Initialized Digits spectra 
   if ( fTracker ) fTracker->InitDigits();
   if ( fTrigger ) fTrigger->InitDigits();
+  //
+  ClonePerTrigClass(AliQAv1::kDIGITS); // this should be the last line
 } 
 
 //____________________________________________________________________________ 
@@ -164,6 +172,8 @@ void AliMUONQADataMakerRec::InitRecPoints()
        /// create Reconstructed Points histograms in RecPoints subdir
   if ( fTracker ) fTracker->InitRecPoints();
   if ( fTrigger ) fTrigger->InitRecPoints();
+  //
+  ClonePerTrigClass(AliQAv1::kRECPOINTS); // this should be the last line
 }
 
 
@@ -173,27 +183,45 @@ void AliMUONQADataMakerRec::InitESDs()
   ///create ESDs histograms in ESDs subdir
   if ( fTracker ) fTracker->InitESDs();
   if ( fTrigger ) fTrigger->InitESDs();
+  //
+  ClonePerTrigClass(AliQAv1::kESDS); // this should be the last line
 }
 
 //____________________________________________________________________________
 void AliMUONQADataMakerRec::MakeRaws(AliRawReader* rawReader)
 {
   /// make QA for rawdata
-
-  // Check id histograms already created for this Event Specie
-
+  /// Note that we do not call the sub-datamaker MakeRaws method
+  /// for events where the MCH or MTR is not part of the readout...
+  
+  if ( !rawReader || !rawReader->GetDetectorPattern() ) return;
+  
+  UInt_t clmask = rawReader->GetDetectorPattern()[0];
+    
   if ( fTracker && rawReader->GetType() == AliRawEventHeaderBase::kPhysicsEvent ) 
   {
-    rawReader->Reset();
-    fTracker->MakeRaws(rawReader);
+    UInt_t mchMask = AliDAQ::DetectorPattern(" MUONTRK ");
+    if ( clmask & mchMask ) 
+    {
+      rawReader->Reset();
+      fTracker->MakeRaws(rawReader);
+    }
   }
   
   if ( fTrigger && (rawReader->GetType() == AliRawEventHeaderBase::kPhysicsEvent ||
                     rawReader->GetType() == AliRawEventHeaderBase::kCalibrationEvent ) )
   {
-    rawReader->Reset();    
-    fTrigger->MakeRaws(rawReader);
+    UInt_t mtrMask = AliDAQ::DetectorPattern(" MUONTRG ");
+    if ( clmask & mtrMask )
+    {
+      rawReader->Reset();    
+      fTrigger->MakeRaws(rawReader);
+    }
   }
+  //
+  IncEvCountCycleRaws();
+  IncEvCountTotalRaws();
+  //
 }
 
 //__________________________________________________________________
@@ -214,6 +242,10 @@ void AliMUONQADataMakerRec::MakeDigits(TTree* digitsTree)
 
   if ( fTracker ) fTracker->MakeDigits(digitsTree);
   if ( fTrigger ) fTrigger->MakeDigits(digitsTree);  
+  //
+  IncEvCountCycleDigits();
+  IncEvCountTotalDigits();
+  //
 }
 
 //____________________________________________________________________________
@@ -226,6 +258,10 @@ void AliMUONQADataMakerRec::MakeRecPoints(TTree* clustersTree)
        
   if ( fTracker ) fTracker->MakeRecPoints(clustersTree);
   if ( fTrigger ) fTrigger->MakeRecPoints(clustersTree);  
+  //
+  IncEvCountCycleRecPoints();
+  IncEvCountTotalRecPoints();
+  //
 }
 
 //____________________________________________________________________________
@@ -238,7 +274,10 @@ void AliMUONQADataMakerRec::MakeESDs(AliESDEvent* esd)
   
   if ( fTracker ) fTracker->MakeESDs(esd);
   if ( fTrigger ) fTrigger->MakeESDs(esd);  
-
+  //
+  IncEvCountCycleESDs();
+  IncEvCountTotalESDs();
+  //
  }
 
 //____________________________________________________________________________ 
@@ -281,5 +320,6 @@ void AliMUONQADataMakerRec::ResetDetector(AliQAv1::TASKINDEX_t task)
 //____________________________________________________________________________ 
 void AliMUONQADataMakerRec::StartOfDetectorCycle()
 {
-    /// Detector specific actions at start of cycle  
+  /// Detector specific actions at start of cycle  
+  
 }