]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ZDC/MakeZDCRecoParam.C
Trying to make real data reconstructable
[u/mrichter/AliRoot.git] / ZDC / MakeZDCRecoParam.C
index 0f6734b08d2b6e188b11976f37859d71ae534307..50d5fcb8910c6a7872d158f2d41a76152eaad4ad 100644 (file)
@@ -1,28 +1,4 @@
-#if !defined(__CINT__) || defined(__MAKECINT__)
-
-#include <Riostream.h>
-#include <TSystem.h>
-#include <TFile.h>
-#include <TH2F.h>
-#include <TH1D.h>
-#include "STEER/AliCDBEntry.h"
-#include "STEER/AliCDBGrid.h"
-#include "STEER/AliCDBId.h"
-#include "STEER/AliCDBLocal.h"
-#include "STEER/AliCDBManager.h"
-#include "STEER/AliCDBMetaData.h"
-#include "STEER/AliCDBPath.h"
-#include "STEER/AliCDBRunRange.h"
-#include "STEER/AliCDBStorage.h"
-#include "ZDC/AliZDC.h"
-#include "ZDC/AliZDCv3.h"
-#include "ZDC/AliZDCRecoParam.h"
-#include "ZDC/AliZDCRecoParampp.h"
-#include "ZDC/AliZDCRecoParamPbPb.h"
-
-#endif
-
-void MakeZDCRecoParam(Int_t type=0){
+void MakeZDCRecoParam(AliRecoParam::EventSpecie_t default=AliRecoParam::kLowMult){
 //========================================================================
 //
 // Steering macro to create and store in OCDB
@@ -35,60 +11,39 @@ void MakeZDCRecoParam(Int_t type=0){
   AliCDBManager* cdb = AliCDBManager::Instance();
   //if(!cdb->IsDefaultStorageSet()) cdb->SetDefaultStorage("local://OCDB");
   cdb->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
+
+  TObjArray *recoParamArray = new TObjArray();
   
-  if(type==0){
-    AliZDCRecoParampp* zdcRecoParam = new AliZDCRecoParampp();
-    // save in CDB storage
-    AliCDBMetaData *md= new AliCDBMetaData();
-    md->SetResponsible("Chiara Oppedisano");
-    md->SetComment("p-p reconstruction parameters for ZDC");
-    md->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
-    md->SetObjectClassName("AliZDCRecoParampp");
-    AliCDBId id("ZDC/Calib/RecoParampp",0,AliCDBRunRange::Infinity());
-    cdb->GetDefaultStorage()->Put(zdcRecoParam,id, md);
-  }
-  else if(type==1){ 
-    //    
-    TH1::AddDirectory(0);
-    TH2::AddDirectory(0);
-    //
-    TFile * fileHistos = TFile::Open("$ALICE_ROOT/ZDC/GlauberMCHistos.root");
-    fileHistos->cd();
-    //
-    TH2F *hZDCvsZEM = (TH2F*) fileHistos->Get("hZDCvsZEM");
-    hZDCvsZEM->SetDirectory(0);
-    //
-    TH2F *hZDCCvsZEM = (TH2F*) fileHistos->Get("hZDCCvsZEM");
-    hZDCCvsZEM->SetDirectory(0);
-    //
-    TH2F *hZDCAvsZEM = (TH2F*) fileHistos->Get("hZDCAvsZEM");
-    hZDCAvsZEM->SetDirectory(0);
-    //
-    TH1D* hDist = (TH1D*) fileHistos->Get("hDist");
-    hDist->SetDirectory(0);
-    //
-    TH1D* hbDist = (TH1D*) fileHistos->Get("hbDist");
-    hbDist->SetDirectory(0);
-    
-    AliZDCRecoParamPbPb* zdcRecoParam = 
-       new AliZDCRecoParamPbPb(hZDCvsZEM, hZDCCvsZEM, 
-               hZDCAvsZEM, hDist, hbDist, 0.1);
-    //zdcRecoParam->Print("");
-        
-    // save in CDB storage
-    AliCDBMetaData *md= new AliCDBMetaData();
-    md->SetResponsible("Chiara Oppedisano");
-    md->SetComment("A-A reconstruction parameters for ZDC");
-    md->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
-    md->SetObjectClassName("AliZDCRecoParamPbPb");
-    AliCDBId id("ZDC/Calib/RecoParamPbPb", 0, AliCDBRunRange::Infinity());
-    cdb->GetDefaultStorage()->Put(zdcRecoParam, id, md);
-    //
-    fileHistos->Close();
+  AliZDCRecoParampp* zdcppRecoParam = AliZDCRecoParampp::GetLowFluxParam();
+  zdcppRecoParam->SetEventSpecie(AliRecoParam::kLowMult);
+  recoParamArray->AddLast(zdcppRecoParam);
+
+  AliZDCRecoParamPbPb* zdcAARecoParam = AliZDCRecoParamPbPb::GetHighFluxParam();
+  zdcAARecoParam->SetEventSpecie(AliRecoParam::kHighMult);
+  recoParamArray->AddLast(zdcAARecoParam);
+  
+  // Set the default
+  Bool_t defaultIsSet = kFALSE;
+  for(Int_t i =0; i<recoParamArray->GetEntriesFast(); i++) {
+    AliDetectorRecoParam *param = (AliDetectorRecoParam *)recoParamArray->UncheckedAt(i);
+    if (!param) continue;
+    if (default & param->GetEventSpecie()) {
+      param->SetAsDefault();
+      defaultIsSet = kTRUE;
+    }
   }
-  else{
-    printf("Event type not implemented\n");
+  if (!defaultIsSet) {
+    Error("The default reconstruction parameters are not set! Exiting...");
     return;
   }
 
+  // save in CDB storage
+  AliCDBMetaData *md= new AliCDBMetaData();
+  md->SetResponsible("Chiara Oppedisano");
+  md->SetComment("Reconstruction parameters for ZDC");
+  md->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
+  AliCDBId id("ZDC/Calib/RecoParam",0,AliCDBRunRange::Infinity());
+  cdb->GetDefaultStorage()->Put(recoParamArray,id, md);
 }