]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/MUONStatusMap.C
Fixing warning (and increasing ClassDef)
[u/mrichter/AliRoot.git] / MUON / MUONStatusMap.C
index aca41daf5cf8d027fc31134694158ee0e0eb5b45..7b6b8d8126cf59473421d0dd4ba440134f936e89 100644 (file)
 
 /* $Id$ */
 
-/// Macro to check/test pad status and pad status map makers
-// Laurent Aphecetche
+/// \ingroup macros
+/// \file MUONStatusMap.C
+/// \brief Macro to check/test pad status and pad status map makers
+///
+/// \author Laurent Aphecetche
 
 #if !defined(__CINT__) || defined(__MAKECINT__)
 #include "AliCDBManager.h"
 #include "AliMUONCalibrationData.h"
-#include "AliMUONObjectPair.h"
+#include "AliMUONLogger.h"
 #include "AliMUONPadStatusMaker.h"
 #include "AliMUONPadStatusMapMaker.h"
-#include "AliMUONV2DStore.h"
+#include "AliMUONRecoParam.h"
 #include "AliMUONVCalibParam.h"
-#include "AliMUONVDataIterator.h"
-#include "AliMpIntPair.h"
+#include "AliMUONVStore.h"
+#include "AliMpCDB.h"
+#include "AliMpConstants.h"
+#include "AliMpDDLStore.h"
+#include "AliMpDetElement.h"
+#include "AliMpManuIterator.h"
 #include "Riostream.h"
 #endif
 
-void findBad(const AliMUONV2DStore& status)
-{
-  AliMUONVDataIterator* it = status.Iterator();
-  AliMUONObjectPair* pair;
-  
-  while ( ( pair = static_cast<AliMUONObjectPair*>(it->Next()) ) )
-  {
-    AliMpIntPair* p = static_cast<AliMpIntPair*>(pair->First());
-    Int_t detElemId = p->GetFirst();
-    Int_t manuId = p->GetSecond();
-    AliMUONVCalibParam* param = static_cast<AliMUONVCalibParam*>(pair->Second());
-    Bool_t bad(kFALSE);
-    for ( Int_t i = 0; i < param->Size(); ++i ) 
-    {
-      if ( param->ValueAsInt(0) ) bad = kTRUE;
-    }
-    if (bad)
-    {
-      cout << Form("DE %4d ManuId %4d",detElemId,manuId) << endl;
-    }
-    if (it->IsOwner()) delete pair;
-  }
-}
+//AliMUONVStore* MUONStatusMap(const TString& cdbStorage = "alien://folder=/alice/data/2009/OCDB",
+AliMUONVStore* MUONStatusMap(const TString& cdbStorage = "local://$ALICE_ROOT/OCDB",
+                             Int_t runNumber=67138, Bool_t statusOnly=kTRUE)
+{  
 
-AliMUONV2DStore* MUONStatusMap(Int_t runNumber=0, Bool_t statusOnly=kFALSE, Int_t mask=0)
-{
-  AliCDBManager::Instance()->SetDefaultStorage("local://$ALICE_ROOT/SHUTTLE/TestShuttle/TestCDB");
+  AliMUONRecoParam* recoParam = AliMUONRecoParam::GetCosmicParam();
+  
+  AliMpCDB::LoadAll2();
+  
+  AliCDBManager* man = AliCDBManager::Instance();
+  
+  man->SetDefaultStorage(cdbStorage.Data());
   
+//  man->SetSpecificStorage("MUON/Calib/OccupancyMap","local://$ALICE_ROOT/OCDB");
+//  man->SetSpecificStorage("MUON/Calib/OccupancyMap","alien://folder=/alice/cern.ch/user/l/laphecet/OCDB");
+//  man->SetSpecificStorage("MUON/Calib/RejectList","alien://folder=/alice/cern.ch/user/l/laphecet/OCDB");
+//  man->SetSpecificStorage("MUON/Align/Data","alien://folder=/alice/cern.ch/user/l/laphecet/OCDB");
+
+//  man->SetRun(runNumber);
+
   AliMUONCalibrationData cd(runNumber);
   
   AliMUONPadStatusMaker statusMaker(cd);
   
-//  statusMaker.SetPedMeanLimits(50,200);
-  statusMaker.SetPedSigmaLimits(0.5,2);
+  statusMaker.SetLimits(*recoParam);
+  
+  delete recoParam;
+  
+  UInt_t mask = recoParam->PadGoodnessMask();
   
-  AliMUONV2DStore* status = statusMaker.MakeStatus();
-  if ( status )
-  {
-    findBad(*status);
-  }
-  else
-  {
-    cout << "ERROR. Could not get status from CDB" << endl;
-    return 0;
-  }
+  statusMaker.Report(mask);
   
-  if ( statusOnly ) return status;
+  if ( statusOnly ) return statusMaker.StatusStore();
   
-  AliMUONPadStatusMapMaker statusMapMaker(cd);
+  const Bool_t deferredInitialization = kFALSE;
   
-  return statusMapMaker.MakePadStatusMap(*status,mask);
+  AliMUONPadStatusMapMaker statusMapMaker(cd,mask,deferredInitialization);
+    
+  return statusMapMaker.StatusMap();
 }