ROOT logo
void MakePHOSRecoParam(AliRecoParam::EventSpecie_t default=AliRecoParam::kLowMult)
{
  //========================================================================
  //
  // Steering macro for PHOS reconstruction parameters
  //
  // Author: Yuri Kharlov
  // 01.11.2009
  //========================================================================
  // $Id$ */

  const char* macroname = "MakePHOSRecoParam.C";
  const Int_t firstRun = 0;

  // Activate CDB storage and load geometry from CDB
  AliCDBManager* cdb = AliCDBManager::Instance();
  if(!cdb->IsDefaultStorageSet()) cdb->SetDefaultStorage("local://OCDB");
  
  TObjArray *recoParamArray = new TObjArray();
  
  {
    // Reconstruction parameters for cosmic run 2009
    AliPHOSRecoParam * phosRecoParam = AliPHOSRecoParam::GetDefaultParameters();
    phosRecoParam->SetEventSpecie(AliRecoParam::kCosmic);
    phosRecoParam->SetEMCSubtractPedestals(kFALSE);
    phosRecoParam->SetEMCMinE(0.025);
    phosRecoParam->SetEMCClusteringThreshold(0.05);
    phosRecoParam->SetEMCFitterVersion("v0");
    phosRecoParam->SetEMCUnfolding(kFALSE);
    phosRecoParam->SetEMCEnergyCorrectionOn(kFALSE);
    phosRecoParam->SetName("Cosmic2009");
    recoParamArray->AddLast(phosRecoParam);
  }
  {
    // Reconstruction parameters for the first pp run 2009
    AliPHOSRecoParam * phosRecoParam = AliPHOSRecoParam::GetDefaultParameters();
    phosRecoParam->SetEventSpecie(AliRecoParam::kLowMult);
    phosRecoParam->SetEMCSubtractPedestals(kFALSE);
    phosRecoParam->SetEMCRawDigitThreshold(2);
    phosRecoParam->SetEMCMinE(0.012);
    phosRecoParam->SetEMCClusteringThreshold(0.22);
    phosRecoParam->SetEMCFitterVersion("v0");
    phosRecoParam->SetEMCUnfolding(kTRUE);
    phosRecoParam->SetEMCSampleQualityCut(10.);
    phosRecoParam->SetName("LowMult2009");
    recoParamArray->AddLast(phosRecoParam);
  }
  {
    // Reconstruction parameters for the first PbPb run 2010
    AliPHOSRecoParam * phosRecoParam = AliPHOSRecoParam::GetDefaultParameters();
    phosRecoParam->SetEventSpecie(AliRecoParam::kHighMult);
    phosRecoParam->SetEMCSubtractPedestals(kFALSE);
    phosRecoParam->SetEMCRawDigitThreshold(2);
    phosRecoParam->SetEMCMinE(0.015);
    phosRecoParam->SetEMCClusteringThreshold(0.40);
    phosRecoParam->SetEMCFitterVersion("v0");
    phosRecoParam->SetEMCUnfolding(kTRUE);
    phosRecoParam->SetName("HighMult2009");
    recoParamArray->AddLast(phosRecoParam);
  }
  { // Reconstruction parameters for "calibration" events
    AliPHOSRecoParam * phosRecoParam = AliPHOSRecoParam::GetDefaultParameters();
    phosRecoParam->SetEventSpecie(AliRecoParam::kCalib);
    phosRecoParam->SetEMCSubtractPedestals(kFALSE);
    phosRecoParam->SetEMCMinE(0.025);
    phosRecoParam->SetEMCClusteringThreshold(0.05);
    phosRecoParam->SetEMCFitterVersion("v0");
    phosRecoParam->SetEMCUnfolding(kFALSE);
    phosRecoParam->SetEMCEnergyCorrectionOn(kFALSE);
    phosRecoParam->SetName("Calib2009");
    recoParamArray->AddLast(phosRecoParam);
  }

  // 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;
    }
  }

  if (!defaultIsSet) {
    Error(macroname,"The default reconstruction parameters are not set! Exiting...");
    return;
  }

  // save in CDB storage
  AliCDBMetaData *md= new AliCDBMetaData();
  md->SetResponsible("Yuri Kharlov");
  md->SetComment("Reconstruction parameters PHOS for cosmic, lowMult and highMult");
  md->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
  md->SetBeamPeriod(0);
  AliCDBId id("PHOS/Calib/RecoParam",firstRun,AliCDBRunRange::Infinity());
  cdb->GetDefaultStorage()->Put(recoParamArray,id, md);

  return;
}
 MakePHOSRecoParam.C:1
 MakePHOSRecoParam.C:2
 MakePHOSRecoParam.C:3
 MakePHOSRecoParam.C:4
 MakePHOSRecoParam.C:5
 MakePHOSRecoParam.C:6
 MakePHOSRecoParam.C:7
 MakePHOSRecoParam.C:8
 MakePHOSRecoParam.C:9
 MakePHOSRecoParam.C:10
 MakePHOSRecoParam.C:11
 MakePHOSRecoParam.C:12
 MakePHOSRecoParam.C:13
 MakePHOSRecoParam.C:14
 MakePHOSRecoParam.C:15
 MakePHOSRecoParam.C:16
 MakePHOSRecoParam.C:17
 MakePHOSRecoParam.C:18
 MakePHOSRecoParam.C:19
 MakePHOSRecoParam.C:20
 MakePHOSRecoParam.C:21
 MakePHOSRecoParam.C:22
 MakePHOSRecoParam.C:23
 MakePHOSRecoParam.C:24
 MakePHOSRecoParam.C:25
 MakePHOSRecoParam.C:26
 MakePHOSRecoParam.C:27
 MakePHOSRecoParam.C:28
 MakePHOSRecoParam.C:29
 MakePHOSRecoParam.C:30
 MakePHOSRecoParam.C:31
 MakePHOSRecoParam.C:32
 MakePHOSRecoParam.C:33
 MakePHOSRecoParam.C:34
 MakePHOSRecoParam.C:35
 MakePHOSRecoParam.C:36
 MakePHOSRecoParam.C:37
 MakePHOSRecoParam.C:38
 MakePHOSRecoParam.C:39
 MakePHOSRecoParam.C:40
 MakePHOSRecoParam.C:41
 MakePHOSRecoParam.C:42
 MakePHOSRecoParam.C:43
 MakePHOSRecoParam.C:44
 MakePHOSRecoParam.C:45
 MakePHOSRecoParam.C:46
 MakePHOSRecoParam.C:47
 MakePHOSRecoParam.C:48
 MakePHOSRecoParam.C:49
 MakePHOSRecoParam.C:50
 MakePHOSRecoParam.C:51
 MakePHOSRecoParam.C:52
 MakePHOSRecoParam.C:53
 MakePHOSRecoParam.C:54
 MakePHOSRecoParam.C:55
 MakePHOSRecoParam.C:56
 MakePHOSRecoParam.C:57
 MakePHOSRecoParam.C:58
 MakePHOSRecoParam.C:59
 MakePHOSRecoParam.C:60
 MakePHOSRecoParam.C:61
 MakePHOSRecoParam.C:62
 MakePHOSRecoParam.C:63
 MakePHOSRecoParam.C:64
 MakePHOSRecoParam.C:65
 MakePHOSRecoParam.C:66
 MakePHOSRecoParam.C:67
 MakePHOSRecoParam.C:68
 MakePHOSRecoParam.C:69
 MakePHOSRecoParam.C:70
 MakePHOSRecoParam.C:71
 MakePHOSRecoParam.C:72
 MakePHOSRecoParam.C:73
 MakePHOSRecoParam.C:74
 MakePHOSRecoParam.C:75
 MakePHOSRecoParam.C:76
 MakePHOSRecoParam.C:77
 MakePHOSRecoParam.C:78
 MakePHOSRecoParam.C:79
 MakePHOSRecoParam.C:80
 MakePHOSRecoParam.C:81
 MakePHOSRecoParam.C:82
 MakePHOSRecoParam.C:83
 MakePHOSRecoParam.C:84
 MakePHOSRecoParam.C:85
 MakePHOSRecoParam.C:86
 MakePHOSRecoParam.C:87
 MakePHOSRecoParam.C:88
 MakePHOSRecoParam.C:89
 MakePHOSRecoParam.C:90
 MakePHOSRecoParam.C:91
 MakePHOSRecoParam.C:92
 MakePHOSRecoParam.C:93
 MakePHOSRecoParam.C:94
 MakePHOSRecoParam.C:95
 MakePHOSRecoParam.C:96
 MakePHOSRecoParam.C:97
 MakePHOSRecoParam.C:98
 MakePHOSRecoParam.C:99
 MakePHOSRecoParam.C:100
 MakePHOSRecoParam.C:101