Only one Check method needs to be implemented by detectors that will be valid fo...
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 6 Aug 2009 13:02:16 +0000 (13:02 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 6 Aug 2009 13:02:16 +0000 (13:02 +0000)
18 files changed:
ACORDE/AliACORDEQAChecker.cxx
ACORDE/AliACORDEQAChecker.h
HMPID/AliHMPIDQAChecker.cxx
HMPID/AliHMPIDQAChecker.h
ITS/AliITSQAChecker.cxx
ITS/AliITSQAChecker.h
MUON/AliMUONQAChecker.cxx
MUON/AliMUONQAChecker.h
STEER/AliCorrQAChecker.h
STEER/AliQACheckerBase.cxx
STEER/AliQACheckerBase.h
T0/AliT0QAChecker.cxx
T0/AliT0QAChecker.h
TOF/AliTOFQAChecker.h
TRD/AliTRDQAChecker.h
VZERO/AliVZEROQAChecker.cxx
VZERO/AliVZEROQAChecker.h
ZDC/AliZDCQAChecker.h

index e1f5f17..eb851f1 100755 (executable)
 
 ClassImp(AliACORDEQAChecker)
 
-//____________________________________________________________________________
-Double_t * AliACORDEQAChecker::Check(AliQAv1::ALITASK_t /*index*/)
-{
-  Double_t * rv = new Double_t[AliRecoParam::kNSpecies] ; 
-  for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) 
-    rv[specie] = 0.0 ; 
-  return rv ;  
-}
-
 //__________________________________________________________________
 Double_t * AliACORDEQAChecker::Check(AliQAv1::ALITASK_t /*index*/, TObjArray ** list)
 {
index 0d8f403..3e6d20c 100755 (executable)
@@ -30,7 +30,6 @@ public:
 //  AliACORDEQAChecker(const AliACORDEQAChecker& qac) : AliQACheckerBase(qac.GetName(), qac.GetTitle()) {;} // constructor   
   virtual ~AliACORDEQAChecker() {;} // destructor
 
-  virtual Double_t * Check(AliQAv1::ALITASK_t index) ;
   virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list) ;
 
   Double_t CheckAcordeRefHits(TObjArray *AcordeList, TObjArray *AcordeRef) const;
index 33a3f3c..d6f2110 100644 (file)
 
 ClassImp(AliHMPIDQAChecker)
 
-//____________________________________________________________________________
-Double_t * AliHMPIDQAChecker::Check(AliQAv1::ALITASK_t /*index*/)
-{
-  Double_t * rv = new Double_t[AliRecoParam::kNSpecies] ; 
-  for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) 
-    rv[specie] = 0.0 ; 
-  return rv ;  
-}
-
 //_________________________________________________________________
 Double_t * AliHMPIDQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list) 
 {
index f07973e..5690a43 100644 (file)
@@ -30,7 +30,6 @@ public:
   AliHMPIDQAChecker(const AliHMPIDQAChecker& qac) : AliQACheckerBase(qac.GetName(), qac.GetTitle()) {;} // cpy ctor   
   virtual ~AliHMPIDQAChecker() {;} // dtor
 
-  virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/) ;
   virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list) ;
   
   Double_t CheckEntries(TObjArray * list) const ;
index be7814d..c0d7b58 100644 (file)
@@ -84,15 +84,6 @@ AliITSQAChecker& AliITSQAChecker::operator=(const AliITSQAChecker& qac){
 }
 
 //____________________________________________________________________________
-Double_t * AliITSQAChecker::Check(AliQAv1::ALITASK_t /*index*/)
-{
-  Double_t * rv = new Double_t[AliRecoParam::kNSpecies] ; 
-  for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) 
-    rv[specie] = 0.5 ; 
-  return rv ;  
-}
-
-//____________________________________________________________________________
 Double_t * AliITSQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list)
 {
   
index daa0792..06a1e3a 100644 (file)
@@ -48,7 +48,6 @@ public:
   virtual void SetDetTaskOffset(Int_t subdet=0,Int_t offset=0);
 
 protected:
-  virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/) ;
   virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list ) ;
   virtual void SetSPDTaskOffset(Int_t SPDOffset){fSPDOffset = SPDOffset;} ;
   virtual void SetSDDTaskOffset(Int_t SDDOffset){fSDDOffset = SDDOffset;} ;
index 8621556..8c37384 100644 (file)
@@ -62,17 +62,6 @@ AliMUONQAChecker::AliMUONQAChecker(const AliMUONQAChecker& qac) :
 
 //______________________________________________________________________________
 Double_t *
-AliMUONQAChecker::Check(AliQAv1::ALITASK_t /*index*/)
-{
-  /// Check data
-  
-  AliError(Form("This method is not implemented. Should it be ? fDataSubDir = %p (%s)",
-                fDataSubDir, ( fDataSubDir ? fDataSubDir->GetPath() : "")));
-  return NULL;
-}
-
-//______________________________________________________________________________
-Double_t *
 AliMUONQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list)
 {
   /// Check objects in list
index 0360931..f055b7e 100644 (file)
@@ -30,7 +30,6 @@ protected:
 
   using AliQACheckerBase::Check;
   
-  virtual Double_t * Check(AliQAv1::ALITASK_t index) ;
   virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list) ;
   virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const ;       
        
index 553e000..e22b6a7 100644 (file)
@@ -31,7 +31,6 @@ public:
   AliCorrQAChecker(const AliCorrQAChecker& qac) : AliQACheckerBase(qac.GetName(), qac.GetTitle()) {;} // cpy ctor   
   virtual ~AliCorrQAChecker() {;} // dtor
 
-  virtual Double_t *  Check(AliQAv1::ALITASK_t index) { return AliQACheckerBase::Check(index) ;}
   virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** obj) { return AliQACheckerBase::Check(index, obj) ;}
   Double_t * Check(AliQAv1::ALITASK_t index, TNtupleD ** nData) ; 
 
index 6464cf8..1d58dc7 100644 (file)
@@ -132,61 +132,43 @@ AliQACheckerBase::~AliQACheckerBase()
 }
 
 //____________________________________________________________________________
-Double_t * AliQACheckerBase::Check(AliQAv1::ALITASK_t /*index*/) 
+Double_t * AliQACheckerBase::Check(AliQAv1::ALITASK_t index) 
 {
   // Performs a basic checking
   // Compares all the histograms stored in the directory
   // With reference histograms either in a file of in OCDB  
 
-       Double_t * test = new Double_t[AliRecoParam::kNSpecies] ;
-       Int_t count[AliRecoParam::kNSpecies]   = { 0 }; 
-
+  TObjArray ** list = new TObjArray *[AliRecoParam::kNSpecies] ; 
   Int_t specie ;
   for (specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) {
-    test[specie] = 1.0 ; 
+    list[specie] =  new TObjArray(AliQAv1::GetMaxQAObj()) ; 
     if ( !AliQAv1::Instance()->IsEventSpecieSet(specie) ) 
       continue ; 
     if (fDataSubDir) {
-      if (!fRefSubDir && !fRefOCDBSubDir) {
-        test[specie] = -1 ; // no reference data
-      } else {        
-        TList * keyList = fDataSubDir->GetListOfKeys() ; 
-        TIter next(keyList) ; 
-        TKey * key ;
-        while ( (key = static_cast<TKey *>(next())) ) {
-          TDirectory * specieDir = fDataSubDir->GetDirectory(key->GetName()) ; 
-          TList * keykeyList = specieDir->GetListOfKeys() ; 
-          TIter next2(keykeyList) ; 
-          TKey * keykey ;
-          count[specie] = 0 ; 
-          while ( (keykey = static_cast<TKey *>(next2())) ) {
-            TObject * odata = specieDir->Get(keykey->GetName()) ; 
-            if ( odata->IsA()->InheritsFrom("TH1") ) {
-              TH1 * hdata = static_cast<TH1*>(odata) ;
-              TH1 * href = NULL ; 
-              if (fRefSubDir) { 
-                TDirectory * subdir = fRefSubDir->GetDirectory(key->GetName()) ;
-                href  = static_cast<TH1*>(subdir->Get(keykey->GetName())) ;
-              } else if (fRefOCDBSubDir[specie]) {  
-                href  = static_cast<TH1*>(fRefOCDBSubDir[specie]->FindObject(keykey->GetName())) ;
-              }
-              if (!href) 
-                test[specie] = -1 ; // no reference data ; 
-              else {
-                Double_t rv =  DiffK(hdata, href) ;
-                AliDebug(AliQAv1::GetQADebugLevel(), Form("%s ->Test = %f", hdata->GetName(), rv)) ; 
-                test[specie] += rv ; 
-                count[specie]++ ; 
-              }
-            } else if (!odata->IsA()->InheritsFrom("TDirectory")) // skip the expert directory
-              AliError(Form("%s Is a Classname that cannot be processed", key->GetClassName())) ;
-            if (count[specie] != 0) 
-              test[specie] /= count[specie] ;
-          }
+      TList * keyList = fDataSubDir->GetListOfKeys() ; 
+      TIter next(keyList) ; 
+      TKey * key ;
+      while ( (key = static_cast<TKey *>(next())) ) {
+        TDirectory * specieDir = fDataSubDir->GetDirectory(key->GetName()) ; 
+        TList * keykeyList = specieDir->GetListOfKeys() ; 
+        TIter next2(keykeyList) ; 
+        TKey * keykey ;
+        while ( (keykey = static_cast<TKey *>(next2())) ) {
+          TObject * odata = specieDir->Get(keykey->GetName()) ; 
+          if ( odata->IsA()->InheritsFrom("TH1") ) {
+            TH1 * hdata = static_cast<TH1*>(odata) ;
+            list[specie]->Add(hdata) ; 
+          } else if (!odata->IsA()->InheritsFrom("TDirectory")) // skip the expert directory
+            AliError(Form("%s Is a Classname that cannot be processed", key->GetClassName())) ;
         }
       }
     }
   }
+  Double_t * test = AliQACheckerBase::Check(index, list) ;
+  
+  delete[] list ; 
+    
   return test ;
 }  
 
index 0b3a2a3..05fd203 100644 (file)
@@ -47,7 +47,7 @@ public:
   void           SetRefandData(TDirectory * ref, TObjArray ** refOCDB, TDirectory * data=NULL) { fRefSubDir = ref ;  fRefOCDBSubDir = refOCDB, fDataSubDir = data ; }
 
 protected:
-  virtual      Double_t * Check(AliQAv1::ALITASK_t index) ;
+  Double_t *              Check(AliQAv1::ALITASK_t index) ;
   virtual      Double_t * Check(AliQAv1::ALITASK_t, TObjArray **) ; 
 
   Double_t     DiffC(const TH1 * href, const TH1 * hin) const ;   
index 9d7e49c..795fda9 100644 (file)
 
 ClassImp(AliT0QAChecker)
 
-
-//____________________________________________________________________________
-Double_t * AliT0QAChecker::Check(AliQAv1::ALITASK_t /*index*/)
-{
-  Double_t * rv = new Double_t[AliRecoParam::kNSpecies] ; 
-  for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) 
-    rv[specie] = 0.0 ; 
-  return rv ;  
-}
-
 //__________________________________________________________________
 Double_t * AliT0QAChecker::Check(AliQAv1::ALITASK_t index,TObjArray ** list)
 {
index da05407..93f98d8 100644 (file)
@@ -31,7 +31,6 @@ public:
  virtual ~AliT0QAChecker() {;}
  Double_t CheckRaw(TObjArray *listrec /*, TObjArray *listref*/) const ;
 private:
-  virtual Double_t * Check(AliQAv1::ALITASK_t) ; 
   virtual Double_t * Check(AliQAv1::ALITASK_t, TObjArray ** list) ;
   
   ClassDef(AliT0QAChecker,1)  // description 
index d213cfa..e8c80b4 100644 (file)
@@ -28,7 +28,6 @@ public:
  protected:
 
   virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, TObjArray ** list) ;
-  virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/) {return NULL;} 
   
   ClassDef(AliTOFQAChecker,2)  // description 
 
index 84be75a..283e4b4 100644 (file)
@@ -34,7 +34,6 @@ public:
   AliTRDQAChecker(const AliTRDQAChecker& qac) : AliQACheckerBase(qac.GetName(), qac.GetTitle()) {;} // cpy ctor   
   virtual ~AliTRDQAChecker() {;} // dtor
 
-  virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/) {return NULL;}
   virtual Double_t * Check(TList * /*list*/) {return NULL;}
   virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, TObjArray ** /*list*/);
   virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, TNtupleD** /*nt*/)     {return NULL;}
index e3aaea5..ffd3fb0 100644 (file)
 
 ClassImp(AliVZEROQAChecker)
 
-//____________________________________________________________________________
-Double_t * AliVZEROQAChecker::Check(AliQAv1::ALITASK_t /*index*/)
-{
-  Double_t * rv = new Double_t[AliRecoParam::kNSpecies] ; 
-  for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) 
-    rv[specie] = 0.0 ; 
-  return rv ;  
-}
-
 //__________________________________________________________________
 Double_t * AliVZEROQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list) 
 {
index c46c7cd..a497ce4 100644 (file)
@@ -34,7 +34,6 @@ public:
 
 protected:  
   virtual  Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list);
-  virtual  Double_t * Check(AliQAv1::ALITASK_t ) ; 
   Double_t CheckEntries(TObjArray * list) const ;
   Double_t CheckEsds(TObjArray * list) const;
   
index b8bb7cd..241c7b1 100644 (file)
@@ -23,7 +23,6 @@ public:
  protected:
 
   virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list) ;
-  virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/) { return NULL ; }  
   
   ClassDef(AliZDCQAChecker,1)  // description