]>
Commit | Line | Data |
---|---|---|
c683985a | 1 | AliAnalysisTask *AddTask_shin_pPb(){ |
2 | //get the current analysis manager | |
3 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
4 | if (!mgr) { | |
5 | Error("AddTask_shin_pPb", "No analysis manager found."); | |
6 | return 0; | |
7 | } | |
8 | ||
9 | ||
10 | //Do we have an MC handler? | |
11 | Bool_t hasMC=(AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler()!=0x0); | |
12 | ||
13 | //Get the current train configuration | |
14 | // TString trainConfig=gSystem->Getenv("CONFIG_FILE"); | |
15 | ||
16 | //set config file name | |
17 | TString configBasePath("$ALICE_ROOT/PWGDQ/dielectron/macrosLMEE/"); | |
18 | TString configFile("Config_shin_pPb.C"); | |
19 | TString configFilePath(configBasePath+configFile); | |
20 | ||
21 | // TString list=gSystem->Getenv("LIST"); | |
22 | //create task and add it to the manager | |
23 | AliAnalysisTaskMultiDielectron *task=new AliAnalysisTaskMultiDielectron("MultiDieData"); | |
24 | if (!hasMC ) task->UsePhysicsSelection(); | |
25 | task->SetTriggerMask(AliVEvent::kINT7); | |
26 | mgr->AddTask(task); | |
27 | ||
28 | ||
29 | //load dielectron configuration file | |
30 | gROOT->LoadMacro(configFilePath.Data()); | |
31 | ||
32 | //add dielectron analysis with different cuts to the task | |
33 | for (Int_t i=0; i<nDie; ++i){ //nDie defined in config file | |
34 | AliDielectron *dile=Config_shin_pPb(i); | |
35 | if (!dile) continue; | |
36 | task->AddDielectron(dile); | |
37 | } | |
38 | ||
39 | //Add event filter | |
40 | AliDielectronEventCuts *eventCuts=new AliDielectronEventCuts("eventCuts","Vertex Track && |vtxZ|<10 && ncontrib>0"); | |
41 | eventCuts->SetRequireVertex(); | |
42 | eventCuts->SetMinVtxContributors(1); | |
43 | eventCuts->SetVertexZ(-10.,10.); | |
44 | task->SetEventFilter(eventCuts); | |
45 | ||
46 | //create output container | |
47 | TString containerName = "hayashi_lowmass.root"; | |
48 | AliAnalysisDataContainer *coutput1 = | |
49 | mgr->CreateContainer("tree_lowmass", | |
50 | TTree::Class(), | |
51 | AliAnalysisManager::kExchangeContainer, | |
52 | containerName.Data()); | |
53 | ||
54 | AliAnalysisDataContainer *cOutputHist1 = | |
55 | mgr->CreateContainer("Histos_diel_lowmass", | |
56 | TList::Class(), | |
57 | AliAnalysisManager::kOutputContainer, | |
58 | containerName.Data()); | |
59 | ||
60 | AliAnalysisDataContainer *cOutputHist2 = | |
61 | mgr->CreateContainer("CF_diel_lowmass", | |
62 | TList::Class(), | |
63 | AliAnalysisManager::kOutputContainer, | |
64 | containerName.Data()); | |
65 | ||
66 | AliAnalysisDataContainer *cOutputHist3 = | |
fae36d1e | 67 | mgr->CreateContainer("EventStat", |
c683985a | 68 | TH1D::Class(), |
69 | AliAnalysisManager::kOutputContainer, | |
70 | containerName.Data()); | |
71 | ||
72 | mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer()); | |
73 | mgr->ConnectOutput(task, 0, coutput1 ); | |
74 | mgr->ConnectOutput(task, 1, cOutputHist1); | |
75 | mgr->ConnectOutput(task, 2, cOutputHist2); | |
76 | mgr->ConnectOutput(task, 3, cOutputHist3); | |
77 | ||
78 | return task; | |
79 | } |