#if !defined (__CINT__) || (defined(__MAKECINT__))
#include <iostream>
#include "AliAnalysisGrid.h"
#include "TSystem.h"
#include "TROOT.h"
#include "AliAnalysisManager.h"
#include "AliAnalysisGrid.h"
#include "AliVEventHandler.h"
#include "AliAODInputHandler.h"
#include "AliAnalysisAlien.h"
#include "AliMCEventHandler.h"
#include "AliPhysicsSelectionTask.h"
#include "TRegexp.h"
#include "AliTriggerAnalysis.h"
#include "TChain.h"
#include "AliAnalysisTaskPIDResponse.h"
#include "AliAODHandler.h"
#include "AliAnalysisTaskNanoAODFilter.h"
#include "AliESEHelpers.h"
#endif
void LoadLibs();
class AliAnalysisGrid;
//______________________________________________________________________________
void runLocalCorrelations(
const int iMCtruth = 2,
const char * addTaskString = ".x AddTaskNanoAODFilter.C(%d,1)" //
)
{
LoadLibs();
// analysis manager
AliAnalysisManager* mgr = new AliAnalysisManager("NanoAOD Filter", "NanoAOD filter for nanoAOD production");
AliAODInputHandler* iH = new AliAODInputHandler();
mgr->SetInputEventHandler(iH);
// Define aod output handler
AliAODHandler* aodOutputHandler = new AliAODHandler();
aodOutputHandler->SetOutputFileName("AliAOD.NanoAOD.root");
mgr->SetOutputEventHandler(aodOutputHandler);
gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C");
AliAnalysisTaskPIDResponse *taskPID=AddTaskPIDResponse(iMCtruth);
taskPID->SetUseTPCEtaCorrection(kTRUE);
// create task
cout << "Macro: "<< addTaskString << " " << Form(addTaskString, iMCtruth) << endl;
AliAnalysisTaskNanoAODFilter * task = (AliAnalysisTaskNanoAODFilter*) gROOT->ProcessLine(Form(addTaskString, iMCtruth));
// Set Track event and vertex cuts here!
AliAnalysisNanoAODTrackCuts* trk = new AliAnalysisNanoAODTrackCuts;
// trk->SetBitMask((1 << 4) | (1 << 8)); // hybrid 2010
trk->SetBitMask((1 << 9)); // ???
trk->SetMaxEta(0.9);
trk->SetMinPt(0.5);
AliAnalysisNanoAODEventCuts* evt = new AliAnalysisNanoAODEventCuts;
evt->SetVertexRange(7);
task->SetTrkCuts(trk);
task->SetEvtCuts(evt);
task->SetSetter(new AliNanoAODSimpleSetter);
task->SetVarList("pt,theta,phi");
task->SetVarListHead("cstCentr,cstMagField");
task->SelectCollisionCandidates(AliVEvent::kMB);
//task->SelectCollisionCandidates(AliVEvent::kMB);// FIXME
// enable debug printouts
mgr->SetDebugLevel(10);
// mgr->SetNSysInfo(100);
if (!mgr->InitAnalysis()) return;
mgr->PrintStatus();
// start analysis
// Always read the same file:
TChain * chain = new TChain("aodTree");
chain->Add("./AliAOD.root");
Printf("Starting Analysis....");
mgr->StartAnalysis("local", chain,123456789);
}
//______________________________________________________________________________
void LoadLibs() {
gSystem->Load("libCore.so");
gSystem->Load("libGeom.so");
gSystem->Load("libPhysics.so");
gSystem->Load("libVMC");
gSystem->Load("libTree");
gSystem->Load("libProof");
gSystem->Load("libMatrix");
gSystem->Load("libMinuit");
gSystem->Load("libSTEERBase");
gSystem->Load("libESD");
gSystem->Load("libAOD");
gSystem->Load("libANALYSIS");
// return;
gSystem->Load("libOADB");
gSystem->Load("libANALYSISalice");
gSystem->Load("libTENDER");
gSystem->Load("libCORRFW");
// gSystem->Load("libNanoAOD.so");
gSystem->Load("libPWGLFspectra");
gSystem->Load("libPWGDevNanoAOD");
}
runLocalCorrelations.C:10 runLocalCorrelations.C:11 runLocalCorrelations.C:12 runLocalCorrelations.C:13 runLocalCorrelations.C:14 runLocalCorrelations.C:15 runLocalCorrelations.C:16 runLocalCorrelations.C:17 runLocalCorrelations.C:18 runLocalCorrelations.C:19 runLocalCorrelations.C:20 runLocalCorrelations.C:21 runLocalCorrelations.C:22 runLocalCorrelations.C:23 runLocalCorrelations.C:24 runLocalCorrelations.C:25 runLocalCorrelations.C:26 runLocalCorrelations.C:27 runLocalCorrelations.C:28 runLocalCorrelations.C:29 runLocalCorrelations.C:30 runLocalCorrelations.C:31 runLocalCorrelations.C:32 runLocalCorrelations.C:33 runLocalCorrelations.C:34 runLocalCorrelations.C:35 runLocalCorrelations.C:36 runLocalCorrelations.C:37 runLocalCorrelations.C:38 runLocalCorrelations.C:39 runLocalCorrelations.C:40 runLocalCorrelations.C:41 runLocalCorrelations.C:42 runLocalCorrelations.C:43 runLocalCorrelations.C:44 runLocalCorrelations.C:45 runLocalCorrelations.C:46 runLocalCorrelations.C:47 runLocalCorrelations.C:48 runLocalCorrelations.C:49 runLocalCorrelations.C:50 runLocalCorrelations.C:51 runLocalCorrelations.C:52 runLocalCorrelations.C:53 runLocalCorrelations.C:54 runLocalCorrelations.C:55 runLocalCorrelations.C:56 runLocalCorrelations.C:57 runLocalCorrelations.C:58 runLocalCorrelations.C:59 runLocalCorrelations.C:60 runLocalCorrelations.C:61 runLocalCorrelations.C:62 runLocalCorrelations.C:63 runLocalCorrelations.C:64 runLocalCorrelations.C:65 runLocalCorrelations.C:66 runLocalCorrelations.C:67 runLocalCorrelations.C:68 runLocalCorrelations.C:69 runLocalCorrelations.C:70 runLocalCorrelations.C:71 runLocalCorrelations.C:72 runLocalCorrelations.C:73 runLocalCorrelations.C:74 runLocalCorrelations.C:75 runLocalCorrelations.C:76 runLocalCorrelations.C:77 runLocalCorrelations.C:78 runLocalCorrelations.C:79 runLocalCorrelations.C:80 runLocalCorrelations.C:81 runLocalCorrelations.C:82 runLocalCorrelations.C:83 runLocalCorrelations.C:84 runLocalCorrelations.C:85 runLocalCorrelations.C:86 runLocalCorrelations.C:87 runLocalCorrelations.C:88 runLocalCorrelations.C:89 runLocalCorrelations.C:90 runLocalCorrelations.C:91 runLocalCorrelations.C:92 runLocalCorrelations.C:93 runLocalCorrelations.C:94 runLocalCorrelations.C:95 runLocalCorrelations.C:96 runLocalCorrelations.C:97 runLocalCorrelations.C:98 runLocalCorrelations.C:99 runLocalCorrelations.C:100 runLocalCorrelations.C:101 runLocalCorrelations.C:102 runLocalCorrelations.C:103 runLocalCorrelations.C:104 runLocalCorrelations.C:105 runLocalCorrelations.C:106 runLocalCorrelations.C:107 runLocalCorrelations.C:108 runLocalCorrelations.C:109 runLocalCorrelations.C:110 runLocalCorrelations.C:111 runLocalCorrelations.C:112 runLocalCorrelations.C:113 runLocalCorrelations.C:114 runLocalCorrelations.C:115 runLocalCorrelations.C:116 runLocalCorrelations.C:117