ROOT logo
//Task to run over AOD EMCal Clusters and tender
//Astrid Morreale 2013
//Esd
//___________________________________________________
void load_libraries( void )
{

    // Root libraries
    gSystem->Load("libTree");
    gSystem->Load("libGeom");
    gSystem->Load("libVMC");
    gSystem->Load("libPhysics");
    gSystem->Load("libMinuit");

    // Analysis framework libraries
    gSystem->Load("libSTEERBase");
    gSystem->Load("libESD");
    gSystem->Load("libAOD");
    gSystem->Load("libANALYSIS");
    gSystem->Load("libOADB");
    gSystem->Load("libANALYSISalice");

    // AliRoot libraries
    gSystem->Load("libGui.so");
    gSystem->Load("libXMLParser.so");
    gSystem->Load("libCDB.so");
    gSystem->Load("libProof.so");
    gSystem->Load("libRAWDatabase.so");
    gSystem->Load("libRAWDatarec.so");
    gSystem->Load("libSTEERBase.so");
    gSystem->Load("libSTEER.so");
    gSystem->Load("libTRDbase.so");
    gSystem->Load("libTOFbase.so");
    gSystem->Load("libTOFrec.so");
    gSystem->Load("libVZERObase.so");
    gSystem->Load("libVZEROrec.so");
    gSystem->Load("libMinuit.so");
    gSystem->Load("libEMCALUtils.so");
    gSystem->Load("libEMCALraw.so");
    gSystem->Load("libEMCALbase.so");
    gSystem->Load("libEMCALrec.so");
    gSystem->Load("libANALYSIS.so");
    gSystem->Load("libANALYSISalice.so");
    gSystem->Load("libPHOSUtils.so");
    gSystem->Load("libTENDER.so");
    gSystem->Load("libTENDERSupplies.so");
    gSystem->Load("libPWGflowBase.so");
    gSystem->Load("libPWGflowTasks.so");

}

//______________________________________________________
void AddTaskEMCalpi0ClusterEvaluation( UInt_t triggerMaskPbPb = AliVEvent::kEMCEGA )
{

    // load libraries
    load_libraries();

    // Use AliRoot includes to compile our task
    gROOT->ProcessLine(".include $ALICE_ROOT");
    gROOT->ProcessLine(".include $ALICE_ROOT/include");
    gROOT->ProcessLine(".include $ALICE_ROOT/PWG/FLOW/Base");




    // analysis manager
    AliAnalysisManager *analysisManager =  AliAnalysisManager::GetAnalysisManager();

    if (!analysisManager)
    {
    ::Error("AddTaskEMCalpi0ClusterEvaluation", "No analysis manager to connect to.");
    return NULL;
    }

  if (!analysisManager->GetInputEventHandler()) {
    ::Error("AddTaskEMCALpi0ClusterEValuation", "This task requires an input event handler");
    return NULL;
   }

  TString type = analysisManager->GetInputEventHandler()->GetDataType();

  AliAnalysisDataContainer *cinput1  = analysisManager->GetCommonInputContainer();
  AliAnalysisDataContainer *coutput1 = analysisManager->CreateContainer("MassHistos", TList::Class(), AliAnalysisManager::kOutputContainer, "AllMBLHC11h.root");

   // cluster evaluation
    gROOT->LoadMacro("AliEMCalpi0ClusterEvaluationTask.cxx");

    // create task
    AliEMCalpi0ClusterEvaluationTask*clusterEvaluation = new AliEMCalpi0ClusterEvaluationTask( "clusterEvaluation" );
    clusterEvaluation->SelectCollisionCandidates(triggerMaskPbPb);

    // add task to manager
    analysisManager->AddTask(clusterEvaluation);

    gSystem->AddIncludePath("-I$ALICE_ROOT/ANALYSIS ");


    // I/O
    analysisManager->ConnectInput( clusterEvaluation, 0, cinput1 );
    analysisManager->ConnectOutput( clusterEvaluation, 1, coutput1 );


   return clusterEvaluation;


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