3a4149013fb1be676cc85906f9c554fc6548f5d6
[u/mrichter/AliRoot.git] / PWG2 / FORWARD / analysis2 / AddTaskForwarddNdeta.C
1 /**
2  * @file   AddTaskForwarddNdeta.C
3  * @author Christian Holm Christensen <cholm@nbi.dk>
4  * @date   Fri Jan 28 10:22:26 2011
5  * 
6  * @brief Script to add a multiplicity task for the central
7  *        @f$\eta@f$ region
8  * 
9  * 
10  */
11 AliAnalysisTask*
12 AddTaskForwarddNdeta(const char* trig="INEL", 
13                      Double_t vzMin=-10, 
14                      Double_t vzMax=10, 
15                      Float_t centlow = 0, 
16                      Float_t centhigh = 100, 
17                      Bool_t cutEdges = false)
18 {
19   // analysis manager
20   AliAnalysisManager* mgr = AliAnalysisManager::GetAnalysisManager();
21   
22   // Make our object.  2nd argumenent is absolute max Eta 
23   // 3rd argument is absolute max Vz
24   AliForwarddNdetaTask* task = new AliForwarddNdetaTask("Forward");
25   task->SetVertexRange(vzMin, vzMax);
26   task->SetTriggerMask(trig);
27   task->SetCutEdges(cutEdges);
28   // task->SetUseShapeCorrection(false);
29   task->AddCentralityBin( 0,  0); // All bin - integrate over centrality
30   task->AddCentralityBin( 0,  5);
31   task->AddCentralityBin( 5, 10);
32   task->AddCentralityBin(10, 20);
33   task->AddCentralityBin(20, 30);
34   task->AddCentralityBin(30, 40);
35   task->AddCentralityBin(40, 50);
36   task->AddCentralityBin(50, 60);
37   task->AddCentralityBin(60,100);
38   mgr->AddTask(task);
39
40   // create containers for input/output
41   AliAnalysisDataContainer *sums = 
42     mgr->CreateContainer("ForwardSums", TList::Class(), 
43                          AliAnalysisManager::kOutputContainer, 
44                          AliAnalysisManager::GetCommonFileName());
45   AliAnalysisDataContainer *output = 
46     mgr->CreateContainer("ForwardResults", TList::Class(), 
47                          AliAnalysisManager::kParamContainer, 
48                          AliAnalysisManager::GetCommonFileName());
49   
50   // connect input/output
51   mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer());
52   mgr->ConnectOutput(task, 1, sums);
53   mgr->ConnectOutput(task, 2, output);
54
55   return task;
56 }
57
58   
59 //________________________________________________________________________
60 //
61 // EOF
62 //