/// \author Laurent Aphecetche, Nicole Bastid, Bogdan Vulpescu, ...
#if !defined(__CINT__) || defined(__MAKECINT__)
-#include "AliMUONReconstructor.h"
-#include "AliMUONRecoParam.h"
-#include "AliRecoParam.h"
#include "AliCDBManager.h"
-#include "AliMagFMaps.h"
-#include "AliTracker.h"
#include "AliReconstruction.h"
-#include <TRandom.h>
#include <TGrid.h>
-//#include <TObjectTable.h>
+#include <TSystem.h>
#endif
-// Data file, OCDB on Grid
-#TString input="alien:///alice/data/2007/LHC07w/000014493/raw/07000014493001.10.root";
-TString input="alien:///alice/data/2008/LHC08a/000021931/raw/08000021931001.50.root";
-TString ocdbPath = "alien://folder=/alice/data/2008/LHC08a/OCDB";
-
-// Data file, OCDB locally
-//TString input="$ALICE_ROOT/MUON/test_out.100/raw.root";
-//TString ocdbPath = "local://$ALICE_ROOT";
-
-TString caliboption1 = "NOGAIN";
-TString caliboption2 = "GAINCONSTANTCAPA";
-TString recoptions = "SAVEDIGITS";
-Int_t seed = 1234567;
-
-void runDataReconstruction(Int_t calib = 1)
+void runDataReconstruction(const char* input = "alien:///alice/data/2009/LHC09a/000067138/raw/09000067138031.10.root",
+ const char* ocdbPath = "alien://folder=/alice/data/2009/OCDB",
+ const char* recoptions="SAVEDIGITS")
{
TGrid::Connect("alien://");
-
- AliCDBManager* man = AliCDBManager::Instance();
- man->SetDefaultStorage(ocdbPath.Data());
- //man->SetSpecificStorage("MUON/Calib/Mapping","local://$ALICE_ROOT");
- //man->SetSpecificStorage("MUON/Calib/DDLStore","local://$ALICE_ROOT");
- man->SetSpecificStorage("MUON/Calib/Gains","local://$ALICE_ROOT");
-
- gRandom->SetSeed(seed);
- AliMagFMaps* field = new AliMagFMaps("Maps","Maps", 1, 1., 10., AliMagFMaps::k5kG);
- AliTracker::SetFieldMap(field, kFALSE);
- AliReconstruction *MuonRec = new AliReconstruction();
+ AliCDBManager* man = AliCDBManager::Instance();
+ man->SetDefaultStorage(ocdbPath);
-
- MuonRec->SetInput(input.Data());
- MuonRec->SetRunVertexFinder(kFALSE);
- MuonRec->SetRunLocalReconstruction("MUON");
- MuonRec->SetRunTracking("MUON");
- MuonRec->SetFillESD(" ");
- MuonRec->SetLoadAlignData("MUON");
- MuonRec->SetNumberOfEventsPerFile(1000);
- MuonRec->SetOption("MUON",recoptions.Data());
- // MuonRec->SetEventRange(319,319);
- MuonRec->SetWriteAOD();
- //MuonRec.SetEventRange(0,100);
- AliMUONRecoParam *muonRecoParam = AliMUONRecoParam::GetLowFluxParam();
- muonRecoParam->CombineClusterTrackReco(kTRUE);
- TString caliboption = caliboption1;
- if ( calib == 2 ) caliboption = caliboption2;
- muonRecoParam->SetCalibrationMode(caliboption.Data());
- //muonRecoParam->SetClusteringMode("PEAKFIT");
- //muonRecoParam->SetClusteringMode("PEAKCOG");
- muonRecoParam->Print("FULL");
- AliRecoParam::Instance()->RegisterRecoParam(muonRecoParam);
-
- MuonRec->Run();
+ AliReconstruction MuonRec;
- delete MuonRec;
+ MuonRec.SetInput(gSystem->ExpandPathName(input));
+ MuonRec.SetRunVertexFinder(kFALSE);
+ MuonRec.SetRunLocalReconstruction("MUON");
+ MuonRec.SetRunTracking("MUON");
+ MuonRec.SetFillESD(" ");
+ MuonRec.SetLoadAlignData("MUON");
+ MuonRec.SetNumberOfEventsPerFile(0);
+ MuonRec.SetOption("MUON",recoptions);
+ MuonRec.SetRunQA("MUON:ALL");
+ MuonRec.SetQAWriteExpert(AliQAv1::kMUON);
+
+ MuonRec.Run();
- //gObjectTable->Print();
}