AliRsnCutManager:
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / extra / AliAnalysisTaskSigma1385.C
1 void AliAnalysisTaskSigma1385() {
2   TStopwatch timer;
3   timer.Start();
4
5   printf("*** Connect to AliEn ***\n");
6   TGrid::Connect("alien://");
7
8   gSystem->Load("libTree.so");
9   gSystem->Load("libGeom.so");
10   gSystem->Load("libVMC.so");
11   gSystem->Load("libPhysics.so");
12   //____________________________________________________//
13   //_____________Setting up required packages___________//
14   //____________________________________________________//
15   gSystem->Load("libSTEERBase.so");
16   gSystem->Load("libSTEER.so");
17   gSystem->Load("libESD.so");
18   gSystem->Load("libAOD.so");
19   gSystem->Load("libANALYSIS.so");
20   gSystem->Load("libANALYSISalice.so");
21   gROOT->ProcessLine(".include $ALICE_ROOT/include");
22   gROOT->ProcessLine(".include $ALICE_ROOT/TOF");
23   //ANALYSIS PART
24   gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPhysicsSelection.C");
25   gROOT->LoadMacro("AliAnalysisTaskSigma1385.cxx+g");
26
27  const char *collectionfile = "sigmaLHC10d1.xml";
28
29  
30   TAlienCollection * myCollection  = TAlienCollection::Open(collectionfile);
31
32   if (!myCollection) {
33         Error("AliAnalysisTaskSigma1385", Form("Cannot create an AliEn collection from %s", collectionfile)) ;
34     return kFALSE ;
35   }
36
37   Info("AliAnalysisTaskSigma1385", Form("Creating the analysis chain %s","esdTree")) ;
38   TChain* chain = new TChain("esdTree");
39
40   Info("AliAnalysisTaskSigma1385", "Preparing the file list") ;
41   myCollection->Reset() ;
42   while ( myCollection->Next() ) {
43     char esdFile[255] ;
44     sprintf(esdFile, "%s", myCollection->GetTURL("") ) ;
45     Info("AliAnalysisTaskSigma1385", Form("Adding %s", esdFile ) ) ;
46     chain->Add(esdFile) ;
47   }
48  
49    
50   //____________________________________________//
51   // Make the analysis manager
52   AliAnalysisManager *mgr = new AliAnalysisManager("TestManager");
53   AliVEventHandler* esdH = new AliESDInputHandler;
54   mgr->SetInputEventHandler(esdH);  
55  
56
57   //____________________________________________//
58   // 1st Pt task
59   //AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection();
60   AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection(kTRUE);
61   AliAnalysisTaskSigma1385 *task1 = new AliAnalysisTaskSigma1385("TaskSigma1385");
62
63
64   mgr->AddTask(task1);
65
66    task1->SetDataType("SIM");
67    task1->SelectCollisionCandidates();
68    
69    if ( !(strcmp(task1->GetDataType(),"SIM")) ){
70
71    AliMCEventHandler *mc = new AliMCEventHandler();
72    mc->SetReadTR(kFALSE);
73    mgr->SetMCtruthEventHandler(mc);
74    }
75    mgr->SetDebugLevel(10);
76   
77   
78   
79   //------ input data ------
80   AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer();
81
82   // ----- output data -----
83   
84   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("chist1", TList::Class(),AliAnalysisManager::kOutputContainer,"Sigma.ESD.root");
85   
86   //____________________________________________//
87
88   mgr->ConnectInput(task1,0,cinput0);
89   mgr->ConnectOutput(task1,1,coutput1);
90   if (!mgr->InitAnalysis()) return;
91   mgr->PrintStatus();
92   mgr->StartAnalysis("local",chain);
93
94   timer.Stop();
95   timer.Print();
96 }