ROOT logo

void AddTask_GammaConvV1AOD(TString mode){

	gSystem->Load("libCore.so");  
	gSystem->Load("libTree.so");
	gSystem->Load("libGeom.so");
	gSystem->Load("libVMC.so");
	gSystem->Load("libPhysics.so");
	gSystem->Load("libMinuit");
	gSystem->Load("libSTEERBase");
	gSystem->Load("libESD");
	gSystem->Load("libAOD");
	gSystem->Load("libANALYSIS");
	gSystem->Load("libANALYSISalice");  
	gSystem->Load("libEve.so");   
	gSystem->Load("libCDB.so");
	gSystem->Load("libProof.so");
	gSystem->Load("libRAWDatabase.so");
	gSystem->Load("libSTEER.so");
	gSystem->Load("libSTEERBase.so");
	gSystem->Load("libTENDER.so");
	gSystem->Load("libTRDbase.so");
	gSystem->Load("libVZERObase.so");
	gSystem->Load("libVZEROrec.so");
	gSystem->Load("libTENDERSupplies.so");
   	gSystem->Load("libPWGflowBase.so");
	gSystem->Load("libPWGflowTasks.so");
	gSystem->Load("libPWGGAGammaConv.so");

   Bool_t isMC	= kTRUE;
   Bool_t readTR = kTRUE;

//   TString Pattern="*/AliESDs.root";
   TString Pattern="AOD/*/AliAOD.root";
   TString Prefix ="";



     Int_t run_numbers[100] = {137161, 137162, 137165, 137230, 137231, 137232, 137235, 137236, 137243, 137366, 137430, 137431, 137432, 137434, 137439, 137440, 137441, 137443, 137530, 137531, 137539, 137541, 137544, 137546, 137549, 137595, 137608, 137638, 137639, 137685, 137686, 137691, 137692, 137693, 137704, 137718, 137722, 137724, 137751, 137752, 137844, 137848, 138190, 138192, 138197, 138201, 138225, 138275, 138364, 138396, 138438, 138439, 138442, 138469, 138534, 138578, 138579, 138582, 138583, 138621,  138638, 138652, 138653, 138662, 138666, 138730, 138732, 138837, 138870, 138871, 138872, 139028, 139029, 139036, 139037, 139038, 139104, 139105, 139107, 139173, 139308, 139309, 139310, 139311, 139314, 139328, 139329, 139360, 139437, 139438, 139439, 139465, 139503, 139504, 139505, 139507, 139510};
  // run has no AODs's: 138624 (70440 events), 
  //Int_t  run_numbers[100] = {138638, 138652, 138653, 138662, 138666, 138730, 138732, 138837, 138870, 138871, 138872, 139028, 139029, 139036, 139037, 139038, 139104, 139105, 139107, 139173, 139308, 139309, 139310, 139311, 139314, 139328, 139329, 139360, 139437, 139438, 139439, 139465, 139503, 139504, 139505, 139507, 139510};
   //Int_t run_numbers[10] = {137161, 137162, 137165, 137230, 137231, 137232, 137235, 137236, 137243, 137366};
   //Int_t run_numbers[10] = {137430, 137431, 137432, 137434, 137439, 137440, 137441, 137443, 137530, 137531};
   //Int_t run_numbers[10] = {137539, 137541, 137544, 137546, 137549, 137595, 137608, 137638, 137639, 137685};
   //Int_t run_numbers[10] = {137686, 137691, 137692, 137693, 137704, 137718, 137722, 137724, 137751, 137752};
   //Int_t run_numbers[10] = {137844, 137848, 138190, 138192, 138197, 138201, 138225, 138275, 138364, 138396};
   //Int_t run_numbers[10] = {138438, 138439, 138442, 138469, 138534, 138578, 138579, 138582, 138583, 138621};
   //Int_t run_numbers[10] = {138638, 138652, 138653, 138662, 138666, 138730, 138732, 138837, 138870};
   //Int_t run_numbers[10] = {138871, 138872, 139028, 139029, 139036, 139037, 139038, 139104, 139105, 139107};
   //Int_t run_numbers[10] = {139173, 139308, 139309, 139310, 139311, 139314, 139328, 139329, 139360, 139437};
   //Int_t run_numbers[10] = {139438, 139439, 139465, 139503, 139504, 139505, 139507, 139510};
   gSystem->Setenv("alien_CLOSE_SE","ALICE::Grenoble::SE");

   AliAnalysisManager *mgr = new AliAnalysisManager("Analysis");
   if (!mgr) {
      Error("AddTask_GammaConvV1", "No analysis manager found.");
      return 0;
   }

   gROOT->LoadMacro("CreateAlienHandlerAOD.C");
   AliAnalysisAlien *alienHandler = CreateAlienHandler(mode);
   if (!alienHandler) return;

   TString WorkingDir = "MCPbPb_LHC13d2_v3";
   TString data = "/alice/sim/2013/LHC13d2/";
   
   mgr->SetGridHandler(alienHandler);
   alienHandler->SetGridWorkingDir(WorkingDir.Data());
   alienHandler->SetGridOutputDir(Form("OUTPUT_%s",WorkingDir.Data()));

   alienHandler->SetGridDataDir(data);
   alienHandler->SetDataPattern(Pattern.Data());
   alienHandler->SetRunPrefix(Prefix.Data());
   //alienHandler->SetRunRange(137161,139510);
   for (Int_t i=0; i<100; i++) {
      if (run_numbers[i]==0) break;
      alienHandler->AddRunNumber(run_numbers[i]);
   }
      
   AliAODInputHandler * handler;
   handler = new AliAODInputHandler(); mgr->SetInputEventHandler((AliAODInputHandler*)handler);


   //========= Add PID Reponse to ANALYSIS manager ====
   if(!(AliPIDResponse*)mgr->GetTask("PIDResponseTask")){
      gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C");
      AddTaskPIDResponse(isMC);
   }//========= Add PID Reponse to ANALYSIS manager ====
      
   gROOT->LoadMacro("$ALICE_ROOT/PWGGA/GammaConv/macros/AddTask_GammaConvV1_PbPb.C");
   
   cout<<"Connecting to Alien..."<<endl;
   TGrid::Connect("alien://");
   cout<<"==============================="<<endl;
   cout<<"Successfully connected to Alien"<<endl;
   cout<<"==============================="<<endl;

   AliAnalysisTask *taskA = AddTask_GammaConvV1_PbPb(1,  //change different set of cuts
                                                     isMC, //run MC 
                                                     kFALSE, //enable QA in AliAnalysisTaskGammaConvV1
                                                     kTRUE, // enable additional Photon QA task
                                                     "alien:///alice/cern.ch/user/f/fbock/MCSpectraInput.root", // path to file for weigting input
                                                     kTRUE,  //enable Weighting
                                                     "1000000060084000001500000");

   AliAnalysisTask *taskB = AddTask_GammaConvV1_PbPb(2,  //change different set of cuts
                                                     isMC, //run MC 
                                                     kFALSE, //enable QA in AliAnalysisTaskGammaConvV1
                                                     kTRUE, // enable additional Photon QA task
                                                     "alien:///alice/cern.ch/user/f/fbock/MCSpectraInput.root", // path to file for weigting input
                                                     kTRUE,  //enable Weighting
                                                     "1000000060084000001500000");

   AliAnalysisTask *taskC = AddTask_GammaConvV1_PbPb(5,  //change different set of cuts
                                                     isMC, //run MC 
                                                     kFALSE, //enable QA in AliAnalysisTaskGammaConvV1
                                                     kTRUE, // enable additional Photon QA task
                                                     "alien:///alice/cern.ch/user/f/fbock/MCSpectraInput.root", // path to file for weigting input
                                                     kTRUE,  //enable Weighting
                                                     "1000000060084000001500000");

   AliAnalysisTask *taskD = AddTask_GammaConvV1_PbPb(6,  //change different set of cuts
                                                     isMC, //run MC 
                                                     kFALSE, //enable QA in AliAnalysisTaskGammaConvV1
                                                     kTRUE, // enable additional Photon QA task
                                                     "alien:///alice/cern.ch/user/f/fbock/MCSpectraInput.root", // path to file for weigting input
                                                     kTRUE,  //enable Weighting
                                                     "1000000060084000001500000");
   

   if (!mgr->InitAnalysis())return;
   mgr->StartAnalysis("grid");
}
Int_t CheckLoadLibrary(const char* library)                                                                                                        
{                                                                                                                                                  
   // checks if a library is already loaded, if not loads the library                                                                               
                                                                                                                                                   
   if (strlen(gSystem->GetLibraries(Form("%s.so", library), "", kFALSE)) > 0)                                                                       
      return 1;                                                                                                                                      
                                                                                                                                                   
   return gSystem->Load(library);                                                                                                                   
}
 AddTask_GammaConvV1AOD.C:1
 AddTask_GammaConvV1AOD.C:2
 AddTask_GammaConvV1AOD.C:3
 AddTask_GammaConvV1AOD.C:4
 AddTask_GammaConvV1AOD.C:5
 AddTask_GammaConvV1AOD.C:6
 AddTask_GammaConvV1AOD.C:7
 AddTask_GammaConvV1AOD.C:8
 AddTask_GammaConvV1AOD.C:9
 AddTask_GammaConvV1AOD.C:10
 AddTask_GammaConvV1AOD.C:11
 AddTask_GammaConvV1AOD.C:12
 AddTask_GammaConvV1AOD.C:13
 AddTask_GammaConvV1AOD.C:14
 AddTask_GammaConvV1AOD.C:15
 AddTask_GammaConvV1AOD.C:16
 AddTask_GammaConvV1AOD.C:17
 AddTask_GammaConvV1AOD.C:18
 AddTask_GammaConvV1AOD.C:19
 AddTask_GammaConvV1AOD.C:20
 AddTask_GammaConvV1AOD.C:21
 AddTask_GammaConvV1AOD.C:22
 AddTask_GammaConvV1AOD.C:23
 AddTask_GammaConvV1AOD.C:24
 AddTask_GammaConvV1AOD.C:25
 AddTask_GammaConvV1AOD.C:26
 AddTask_GammaConvV1AOD.C:27
 AddTask_GammaConvV1AOD.C:28
 AddTask_GammaConvV1AOD.C:29
 AddTask_GammaConvV1AOD.C:30
 AddTask_GammaConvV1AOD.C:31
 AddTask_GammaConvV1AOD.C:32
 AddTask_GammaConvV1AOD.C:33
 AddTask_GammaConvV1AOD.C:34
 AddTask_GammaConvV1AOD.C:35
 AddTask_GammaConvV1AOD.C:36
 AddTask_GammaConvV1AOD.C:37
 AddTask_GammaConvV1AOD.C:38
 AddTask_GammaConvV1AOD.C:39
 AddTask_GammaConvV1AOD.C:40
 AddTask_GammaConvV1AOD.C:41
 AddTask_GammaConvV1AOD.C:42
 AddTask_GammaConvV1AOD.C:43
 AddTask_GammaConvV1AOD.C:44
 AddTask_GammaConvV1AOD.C:45
 AddTask_GammaConvV1AOD.C:46
 AddTask_GammaConvV1AOD.C:47
 AddTask_GammaConvV1AOD.C:48
 AddTask_GammaConvV1AOD.C:49
 AddTask_GammaConvV1AOD.C:50
 AddTask_GammaConvV1AOD.C:51
 AddTask_GammaConvV1AOD.C:52
 AddTask_GammaConvV1AOD.C:53
 AddTask_GammaConvV1AOD.C:54
 AddTask_GammaConvV1AOD.C:55
 AddTask_GammaConvV1AOD.C:56
 AddTask_GammaConvV1AOD.C:57
 AddTask_GammaConvV1AOD.C:58
 AddTask_GammaConvV1AOD.C:59
 AddTask_GammaConvV1AOD.C:60
 AddTask_GammaConvV1AOD.C:61
 AddTask_GammaConvV1AOD.C:62
 AddTask_GammaConvV1AOD.C:63
 AddTask_GammaConvV1AOD.C:64
 AddTask_GammaConvV1AOD.C:65
 AddTask_GammaConvV1AOD.C:66
 AddTask_GammaConvV1AOD.C:67
 AddTask_GammaConvV1AOD.C:68
 AddTask_GammaConvV1AOD.C:69
 AddTask_GammaConvV1AOD.C:70
 AddTask_GammaConvV1AOD.C:71
 AddTask_GammaConvV1AOD.C:72
 AddTask_GammaConvV1AOD.C:73
 AddTask_GammaConvV1AOD.C:74
 AddTask_GammaConvV1AOD.C:75
 AddTask_GammaConvV1AOD.C:76
 AddTask_GammaConvV1AOD.C:77
 AddTask_GammaConvV1AOD.C:78
 AddTask_GammaConvV1AOD.C:79
 AddTask_GammaConvV1AOD.C:80
 AddTask_GammaConvV1AOD.C:81
 AddTask_GammaConvV1AOD.C:82
 AddTask_GammaConvV1AOD.C:83
 AddTask_GammaConvV1AOD.C:84
 AddTask_GammaConvV1AOD.C:85
 AddTask_GammaConvV1AOD.C:86
 AddTask_GammaConvV1AOD.C:87
 AddTask_GammaConvV1AOD.C:88
 AddTask_GammaConvV1AOD.C:89
 AddTask_GammaConvV1AOD.C:90
 AddTask_GammaConvV1AOD.C:91
 AddTask_GammaConvV1AOD.C:92
 AddTask_GammaConvV1AOD.C:93
 AddTask_GammaConvV1AOD.C:94
 AddTask_GammaConvV1AOD.C:95
 AddTask_GammaConvV1AOD.C:96
 AddTask_GammaConvV1AOD.C:97
 AddTask_GammaConvV1AOD.C:98
 AddTask_GammaConvV1AOD.C:99
 AddTask_GammaConvV1AOD.C:100
 AddTask_GammaConvV1AOD.C:101
 AddTask_GammaConvV1AOD.C:102
 AddTask_GammaConvV1AOD.C:103
 AddTask_GammaConvV1AOD.C:104
 AddTask_GammaConvV1AOD.C:105
 AddTask_GammaConvV1AOD.C:106
 AddTask_GammaConvV1AOD.C:107
 AddTask_GammaConvV1AOD.C:108
 AddTask_GammaConvV1AOD.C:109
 AddTask_GammaConvV1AOD.C:110
 AddTask_GammaConvV1AOD.C:111
 AddTask_GammaConvV1AOD.C:112
 AddTask_GammaConvV1AOD.C:113
 AddTask_GammaConvV1AOD.C:114
 AddTask_GammaConvV1AOD.C:115
 AddTask_GammaConvV1AOD.C:116
 AddTask_GammaConvV1AOD.C:117
 AddTask_GammaConvV1AOD.C:118
 AddTask_GammaConvV1AOD.C:119
 AddTask_GammaConvV1AOD.C:120
 AddTask_GammaConvV1AOD.C:121
 AddTask_GammaConvV1AOD.C:122
 AddTask_GammaConvV1AOD.C:123
 AddTask_GammaConvV1AOD.C:124
 AddTask_GammaConvV1AOD.C:125
 AddTask_GammaConvV1AOD.C:126
 AddTask_GammaConvV1AOD.C:127
 AddTask_GammaConvV1AOD.C:128
 AddTask_GammaConvV1AOD.C:129
 AddTask_GammaConvV1AOD.C:130
 AddTask_GammaConvV1AOD.C:131
 AddTask_GammaConvV1AOD.C:132
 AddTask_GammaConvV1AOD.C:133
 AddTask_GammaConvV1AOD.C:134
 AddTask_GammaConvV1AOD.C:135
 AddTask_GammaConvV1AOD.C:136
 AddTask_GammaConvV1AOD.C:137
 AddTask_GammaConvV1AOD.C:138
 AddTask_GammaConvV1AOD.C:139
 AddTask_GammaConvV1AOD.C:140
 AddTask_GammaConvV1AOD.C:141
 AddTask_GammaConvV1AOD.C:142
 AddTask_GammaConvV1AOD.C:143