1 const char * recoStorage="local:///cvmfs/alice.gsi.de/alice/data/2010/OCDB";
5 void ModifyRecoParam(TObjArray* recoArray, Bool_t useIonTail, Double_t crossTalkCorrection){
7 // Modify reco param - and store it in the OCDB in local directory
9 AliCDBManager * man = AliCDBManager::Instance();
10 for (Int_t i=0; i<4; i++){
11 AliTPCRecoParam* p = ( AliTPCRecoParam*)recoArray->At(i);
12 p->SetUseIonTailCorrection(useIonTail);
13 p->SetCrosstalkCorrection(crossTalkCorrection);
15 TString localStorage = "local://"+gSystem->GetFromPipe("pwd")+"/OCDBrec";
16 AliCDBStorage*pocdbStorage = AliCDBManager::Instance()->GetStorage(localStorage.Data());
17 AliCDBMetaData *metaData= new AliCDBMetaData();
18 AliCDBId* id1=new AliCDBId("TPC/Calib/RecoParam/", man->GetRun(), man->GetRun());
19 pocdbStorage->Put(recoArray, (*id1), metaData);
20 AliCDBManager::Instance()->SetSpecificStorage("TPC/Calib/RecoParam/",localStorage.Data());
24 void rec(Bool_t useIonTail, Double_t crossTalkCorrection) {
28 // useIonTail - switch for using ion tail correction - OCDB entry will be overritten in
32 AliCDBManager * man = AliCDBManager::Instance();
33 man->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
34 man->SetSpecificStorage("TPC/Calib/RecoParam/",recoStorage);
36 AliReconstruction reco;
37 reco.SetWriteESDfriend();
38 reco.SetWriteAlignmentData();
39 reco.SetDefaultStorage("local://$ALICE_ROOT/OCDB");
40 reco.SetSpecificStorage("GRP/GRP/Data",
41 Form("local://%s",gSystem->pwd()));
42 reco.SetRunPlaneEff(kTRUE);
44 reco.SetRunGlobalQA(kFALSE);
45 reco.ResetCheckRecoCDBvsSimuCDB();
48 //Switch Iontail in RecoParam. Creation of a new OCDB entry
50 AliCDBEntry* e = man->Get("TPC/Calib/RecoParam/",run); // get default
52 TObjArray* recoArray = (TObjArray*)e->GetObject();
53 ModifyRecoParam(recoArray, useIonTail, crossTalkCorrection);
64 // Print the OCDB setup which we used
66 AliCDBEntry* ocdbEntry = man->Get("TPC/Calib/RecoParam/",run);
67 TObjArray* recoArray = (TObjArray*)ocdbEntry->GetObject();
68 for (Int_t i=0; i<4; i++){
69 AliTPCRecoParam* recoParam = ( AliTPCRecoParam*)recoArray->At(i);
70 printf("ipar=%d\t%d\t%f\n",i,recoParam->GetUseIonTailCorrection(), recoParam->GetCrosstalkCorrection());