1 void AliAnalysisTaskSEVertexingHFTest()
\r
4 // Test macro for the AliAnalysisTaskSE for heavy-flavour vertexing
\r
5 // A.Dainese, andrea.dainese@lnl.infn.it
\r
8 gSystem->Load("libTree.so");
\r
9 gSystem->Load("libGeom.so");
\r
10 gSystem->Load("libPhysics.so");
\r
11 gSystem->Load("libVMC.so");
\r
12 gSystem->Load("libSTEERBase.so");
\r
13 gSystem->Load("libESD.so");
\r
14 gSystem->Load("libAOD.so");
\r
15 gSystem->Load("libANALYSIS.so");
\r
16 gSystem->Load("libANALYSISalice.so");
\r
17 gSystem->Load("libPWG3base.so");
\r
21 TChain *chain = new TChain("esdTree");
\r
22 chain->Add("./AliESDs.root");
\r
26 //Fetch files with AliEn :
\r
27 const char *collectionfile = "CollectionTags.xml";
\r
28 TGrid::Connect("alien://") ;
\r
29 //Create an AliRunTagCuts and an AliEventTagCuts Object and impose some selection criteria
\r
30 AliRunTagCuts *runCuts = new AliRunTagCuts();
\r
31 AliEventTagCuts *eventCuts = new AliEventTagCuts();
\r
32 AliLHCTagCuts *lhcCuts = new AliLHCTagCuts();
\r
33 AliDetectorTagCuts *detCuts = new AliDetectorTagCuts();
\r
34 eventCuts->SetMultiplicityRange(0,20000);
\r
35 //Create an AliTagAnalysis Object and chain the tags
\r
36 AliTagAnalysis *tagAna = new AliTagAnalysis();
\r
37 tagAna->SetType("ESD");
\r
38 TAlienCollection *coll = TAlienCollection::Open(collectionfile);
\r
39 TGridResult *tagResult = coll->GetGridResult("",0,0);
\r
41 tagAna->ChainGridTags(tagResult);
\r
42 //Create a new esd chain and assign the chain that is returned by querying the tags
\r
43 TChain* chain = tagAna->QueryTags(runCuts,lhcCuts,detCuts,eventCuts);
\r
47 // Create the analysis manager
\r
48 AliAnalysisManager *mgr = new AliAnalysisManager("My Manager","My Manager");
\r
49 mgr->SetDebugLevel(10);
\r
52 //AliAODInputHandler *inputHandler = new AliAODInputHandler();
\r
53 AliESDInputHandler *inputHandler = new AliESDInputHandler();
\r
54 inputHandler->SetInactiveBranches("FMD CaloCluster");
\r
55 mgr->SetInputEventHandler(inputHandler);
\r
58 AliAODHandler *aodHandler = new AliAODHandler();
\r
59 aodHandler->SetOutputFileName("AliAOD.VertexingHF.root");
\r
60 aodHandler->SetCreateNonStandardAOD();
\r
61 mgr->SetOutputEventHandler(aodHandler);
\r
63 // Vertexing analysis task
\r
64 AliAnalysisTaskSEVertexingHF *hfTask = new AliAnalysisTaskSEVertexingHF("VertexingHFAnalysis");
\r
65 hfTask->SetDebugLevel(2);
\r
67 mgr->AddTask(hfTask);
\r
70 // Create containers for input/output
\r
71 AliAnalysisDataContainer *cinput1 = mgr->CreateContainer("cchain",TChain::Class(),
\r
72 AliAnalysisManager::kInputContainer);
\r
73 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("tree", TTree::Class(),
\r
74 AliAnalysisManager::kOutputContainer,
\r
76 mgr->ConnectInput(hfTask,0,cinput1);
\r
77 mgr->ConnectOutput(hfTask,0,coutput1);
\r
82 printf("CHAIN HAS %d ENTRIES\n",(Int_t)chain->GetEntries());
\r
83 if(mgr->InitAnalysis()) {
\r
85 mgr->StartAnalysis("local",chain);
\r
86 //mgr->StartAnalysis("grid",chain);
\r