]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/UserTasks/PHOS_embedding/CreateAOD.C
Event embedding tasks for PHOS are added (D.Peressounko)
[u/mrichter/AliRoot.git] / PWG4 / UserTasks / PHOS_embedding / CreateAOD.C
CommitLineData
02f0b8e7 1void CreateAOD()
2{
3 // Main
4
5 // LoadLibraries
6 gSystem->Load("libTree.so");
7 gSystem->Load("libGeom.so");
8 gSystem->Load("libVMC.so");
9 gSystem->Load("libXMLIO.so");
10 gSystem->Load("libMatrix.so");
11 gSystem->Load("libPhysics.so");
12 gSystem->Load("libSTEERBase.so");
13 gSystem->Load("libESD.so");
14 gSystem->Load("libAOD.so");
15 gSystem->Load("libANALYSIS.so");
16 gSystem->Load("libANALYSISalice.so");
17 gSystem->Load("libCORRFW.so");
18 gSystem->Load("libPWG3base.so");
19 gSystem->Load("libPWG3muon.so");
20 gSystem->Load("libTENDER.so");
21//gSystem->Load("libTENDERSupplies.so");
22
23 gSystem->AddIncludePath("-I$ALICE_ROOT/include -I$ALICE_ROOT/PHOS");
24 gROOT->LoadMacro("AliPHOSDigitDecalibrate.cxx++") ;
25
26 //Data
27 TChain *chain = new TChain("esdTree") ;
28 chain->Add("AliESDs.root");
29
30 if(chain){
31 AliLog::SetGlobalLogLevel(AliLog::kError);//Minimum prints on screen
32
33 //--------------------------------------
34 // Make the analysis manager
35 //-------------------------------------
36 AliAnalysisManager *mgr = new AliAnalysisManager("Manager", "Manager");
37
38 AliMCEventHandler* mcHandler = new AliMCEventHandler();
39 mcHandler->SetReadTR(kFALSE);//Do not search TrackRef file
40 mgr->SetMCtruthEventHandler(mcHandler);
41
42 AliAODHandler* aodoutHandler = new AliAODHandler();
43 aodoutHandler->SetOutputFileName("AliAOD.root");
44 ////aodoutHandler->SetCreateNonStandardAOD();
45 mgr->SetOutputEventHandler(aodoutHandler);
46
47 AliESDInputHandler *esdHandler = new AliESDInputHandler();
48 esdHandler->SetReadFriends(kFALSE);
49 mgr->SetInputEventHandler(esdHandler);
50
51 //mgr->SetDebugLevel(-1); // For debugging, do not uncomment if you want no messages.
52
53 //-------------------------------------------------------------------------
54 //Define task, put here any other task that you want to use.
55 //-------------------------------------------------------------------------
56 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
57 AliAnalysisDataContainer *coutput1;
58
59 coutput1 = mgr->GetCommonOutputContainer();
60
61
62
63 //========= Add tender to the ANALYSIS manager and set default storage =====
64
65 AliTender *tender=new AliTender("AnalysisTender");
66 tender->SetDefaultCDBStorage("local://$ALICE_ROOT/OCDB"); //comment this you acess grid
67 mgr->AddTask(tender);
68
69 //========= Attach PHOS supply ======
70 AliPHOSDigitDecalibrate *PHOSSupply=new AliPHOSDigitDecalibrate("PHOStender");
71 tender->AddSupply(PHOSSupply);
72 TFile * fDecalib = TFile::Open("Decalibraiton.root") ;
73 char key[55] ;
74 for(Int_t mod=0; mod<5; mod++){
75 sprintf(key,"DecalibrMod%d",mod) ;
76 TH2F * h = (TH2F*)fDecalib->Get(key) ;
77 PHOSSupply->SetDecalibration(mod,h) ;
78 }
79 fDecalib->Close() ;
80
81 //================================================
82 // data containers
83 //================================================
84
85 // define output containers, please use 'username'_'somename'
86 AliAnalysisDataContainer *coutput1 =
87 mgr->CreateContainer("tender_event", AliESDEvent::Class(),
88 AliAnalysisManager::kExchangeContainer,"default_tender");
89
90 // connect containers
91 mgr->ConnectInput (tender, 0, mgr->GetCommonInputContainer() );
92 mgr->ConnectOutput (tender, 1, coutput1);
93
94
95
96
97
98
99
100 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskESDFilter.C");
101 AliAnalysisTaskESDfilter *taskesdfilter = AddTaskESDFilter(kTRUE);
102
103 //-----------------------
104 // Run the analysis
105 //-----------------------
106 mgr->InitAnalysis();
107 mgr->PrintStatus();
108 mgr->StartAnalysis("local",chain);
109
110 cout <<" Analysis ended sucessfully "<< endl ;
111
112 }
113 else cout << "Chain was not produced ! "<<endl;
114
115}