X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=GRP%2FUpdateCDBVertexDiamond.C;h=8d2559e9ac37f0aed0bc2fe55ca860ce67f3da7f;hb=6a150f830ea3a11d55a7dd0fd7861d53c5f71948;hp=25f8a7f52e7002c057f40d0e5b406fbdd9848bf5;hpb=00cb53f425478d8a118c14e3e3cc2931dff62577;p=u%2Fmrichter%2FAliRoot.git diff --git a/GRP/UpdateCDBVertexDiamond.C b/GRP/UpdateCDBVertexDiamond.C index 25f8a7f52e7..8d2559e9ac3 100644 --- a/GRP/UpdateCDBVertexDiamond.C +++ b/GRP/UpdateCDBVertexDiamond.C @@ -11,12 +11,69 @@ #include "AliLog.h" #endif -void UpdateCDBVertexDiamond(Double_t xmed = 0., Double_t ymed = 0., Double_t sigx = 0.0060, Double_t sigy = 0.0060, Double_t sigz = 3.8) { +void UpdateCDBVertexDiamond(const char* objName, Double_t xmed, Double_t ymed, Double_t zmed, Double_t sigx, Double_t sigy, Double_t sigz) { // produce the mean vertex with the current AliRoot and store it in the // CDB + // andrea.dainese@pd.infn.it AliCDBManager* man = AliCDBManager::Instance(); - man->SetDefaultStorage("local://$ALICE_ROOT"); + if(!gSystem->Getenv("STORAGE")){ + man->SetDefaultStorage("local://$ALICE_ROOT/OCDB"); + }else{ + man->SetDefaultStorage(gSystem->Getenv("STORAGE")); + } + + Int_t firstRun=0; + if(gSystem->Getenv("FIRSTRUN")) firstRun=TString(gSystem->Getenv("FIRSTRUN")).Atoi(); + Int_t lastRun=AliCDBRunRange::Infinity(); + if(gSystem->Getenv("LASTRUN")) lastRun=TString(gSystem->Getenv("LASTRUN")).Atoi(); + TString objFullName="GRP/Calib/"; + + if(objName=="MeanVertex" || objName=="MeanVertexSPD" || objName=="MeanVertexTPC"){ + objFullName += objName; + }else{ + Printf("\"%s\" is not a valid calibration object. Exiting!",objName); + return; + } + AliCDBId id(objFullName.Data(),firstRun,lastRun); + AliCDBMetaData *metadata= new AliCDBMetaData(); + + // Get root and AliRoot versions + const char* rootv = gROOT->GetVersion(); + TString av(ALIROOT_SVN_BRANCH); + Int_t revnum = ALIROOT_SVN_REVISION; + + metadata->SetResponsible("prino@to.infn.it"); + metadata->SetComment("Default mean vertex position"); + metadata->SetAliRootVersion(av.Data()); + metadata->SetComment(Form("Default mean vertex produced with root version %s and AliRoot %s, revision number %d",rootv,av.Data(),revnum)); + + + Printf(Form("Storing in CDB the default mean vertex produced with root version %s and" + "AliRoot version %s, revision number %d", rootv, av.Data(), revnum)); + + Double_t sigma[3],position[3]; + position[0]=xmed; + position[1]=ymed; + position[2]=zmed; + sigma[0]=sigx; + sigma[1]=sigy; + sigma[2]=sigz; + + AliESDVertex *vertex = new AliESDVertex(position,sigma,"vtxmean"); + vertex->PrintStatus(); + + man->Put(vertex,id,metadata); + +} + + +void UpdateCDBVertexDiamondOld(Double_t xmed = 0., Double_t ymed = 0., Double_t sigx = 0.0060, Double_t sigy = 0.0060, Double_t sigz = 3.8) { + // produce the mean vertex with the current AliRoot and store it in the + // CDB + + AliCDBManager* man = AliCDBManager::Instance(); + man->SetDefaultStorage("local://$ALICE_ROOT/OCDB"); man->SetRun(0); AliCDBId id("GRP/Calib/MeanVertex",0,AliCDBRunRange::Infinity()); AliCDBId idTPC("GRP/Calib/MeanVertexTPC",0,AliCDBRunRange::Infinity());