ROOT logo
void anaTask()
{
  //Macro to run pi0 calibration on local ESD files.
  //Author: Boris Polishchuk.
  

  //Uncomment the line below if your ESD files are from old productions
  //so there are no PHOS geometry matrices written in the ESD.
  //You can find an ideal geometry here: $ALICE_ROOT/test/QA/geometry.root
  //and copy to your working directory.

  //AliGeomManager::LoadGeometry("geometry.root");

  //You can apply misalignment by following
  //(remember that your local OCDB in ./PHOS should contain a copy of the
  //$ALICE_ROOT/OCDB/PHOS/Align directory while ./PHOS/Calib/EmcGainPedestals
  //should contain the corrections to the calibration coefficients (~1) 
  //instead of real CC (~0.005)! ):

//   AliCDBManager::Instance()->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
//   AliCDBManager::Instance()->SetSpecificStorage("PHOS/*","local://./");

//   AliCDBManager::Instance()->SetRun(0);
//   AliCDBEntry* e = AliCDBManager::Instance()->Get("PHOS/Align/Data");
//   TClonesArray *array = (TClonesArray*) e->GetObject();
//   AliGeomManager::ApplyAlignObjsToGeom(*array);


  // load analysis framework
  gSystem->Load("libANALYSIS");
  gSystem->Load("libANALYSISalice"); //AliAnalysisTaskSE
  gSystem->Load("libPHOSpi0Calib");

  gROOT->LoadMacro("$ALICE_ROOT/PWG0/CreateESDChain.C");
  TChain* chain = CreateESDChain("list.txt", 300);

  // for includes use either global setting in $HOME/.rootrc
  // ACLiC.IncludePaths: -I$ALICE_ROOT/include
  // or in each macro
  // gSystem->AddIncludePath("$ALICE_ROOT/include");

  // Create the analysis manager
  AliAnalysisManager *mgr = new AliAnalysisManager("Pi0Calib");



  AliVEventHandler* esdH = new AliESDInputHandler();
  mgr->SetInputEventHandler(esdH);

  // Create task

  AliAnalysisTaskPi0CalibSelection *task = new AliAnalysisTaskPi0CalibSelection("Pi0CalibSelection");
  //task->SetClusterMinEnergy(0.4); 

  // Add task
  mgr->AddTask(task);

  // Create containers for input/output
  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
  AliAnalysisDataContainer *coutput = mgr->CreateContainer("histos", TList::Class(),  AliAnalysisManager::kOutputContainer, "histos.root");

  // Connect input/output
  mgr->ConnectInput(task, 0, cinput);
  mgr->ConnectOutput(task, 1, coutput);

  // Enable debug printouts
  mgr->SetDebugLevel(10);

  if (!mgr->InitAnalysis())
    return;

  mgr->PrintStatus();

  mgr->StartAnalysis("local", chain);
}
 anaTask.C:1
 anaTask.C:2
 anaTask.C:3
 anaTask.C:4
 anaTask.C:5
 anaTask.C:6
 anaTask.C:7
 anaTask.C:8
 anaTask.C:9
 anaTask.C:10
 anaTask.C:11
 anaTask.C:12
 anaTask.C:13
 anaTask.C:14
 anaTask.C:15
 anaTask.C:16
 anaTask.C:17
 anaTask.C:18
 anaTask.C:19
 anaTask.C:20
 anaTask.C:21
 anaTask.C:22
 anaTask.C:23
 anaTask.C:24
 anaTask.C:25
 anaTask.C:26
 anaTask.C:27
 anaTask.C:28
 anaTask.C:29
 anaTask.C:30
 anaTask.C:31
 anaTask.C:32
 anaTask.C:33
 anaTask.C:34
 anaTask.C:35
 anaTask.C:36
 anaTask.C:37
 anaTask.C:38
 anaTask.C:39
 anaTask.C:40
 anaTask.C:41
 anaTask.C:42
 anaTask.C:43
 anaTask.C:44
 anaTask.C:45
 anaTask.C:46
 anaTask.C:47
 anaTask.C:48
 anaTask.C:49
 anaTask.C:50
 anaTask.C:51
 anaTask.C:52
 anaTask.C:53
 anaTask.C:54
 anaTask.C:55
 anaTask.C:56
 anaTask.C:57
 anaTask.C:58
 anaTask.C:59
 anaTask.C:60
 anaTask.C:61
 anaTask.C:62
 anaTask.C:63
 anaTask.C:64
 anaTask.C:65
 anaTask.C:66
 anaTask.C:67
 anaTask.C:68
 anaTask.C:69
 anaTask.C:70
 anaTask.C:71
 anaTask.C:72
 anaTask.C:73
 anaTask.C:74
 anaTask.C:75
 anaTask.C:76