1 // This is the macro to include the FMD analysis in the train. It
2 // depends on two libraries: libFMDanalysis.so in AliRoot and
3 // libPhysics.so in ROOT. It has been tested to work with the example
4 // scripts in the ANALYSIS webpages.
6 // Author: Hans Hjersing Dalsgaard <hans.dalsgaard@cern.ch>
9 AliAnalysisTask* AddTaskCorrection(Float_t blow =0,
12 const char* col="p-p",
15 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
17 Error("AddTaskESDFilter", "No analysis manager to connect to.");
22 // --- Generate parameter manager ----------------------------------
23 /* AliFMDAnaParameters* pars = AliFMDAnaParameters::Instance();
24 pars->SetEnergy(cmsGeV);
25 pars->SetCollisionSystem(col);
26 pars->SetMagField(bkG);
27 pars->SetProcessPrimary(kFALSE);
28 pars->SetProcessHits(kFALSE);
29 pars->SetRealData(kTRUE);
31 // --- Check if we have an MC handler ------------------------------
32 //AliMCEventHandler* eventHandler =
33 // dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()
34 // ->GetMCtruthEventHandler());
36 // pars->SetRealData(kFALSE);
37 // pars->SetProcessPrimary(kTRUE);
38 // pars->SetProcessHits(kFALSE);
41 //pars->PrintStatus();
42 const Char_t* outFile = AliAnalysisManager::GetCommonFileName();
43 // --- Make the task -----------------------------------------------
44 AliFMDAnalysisTaskGenerateCorrection *taskfmd = new AliFMDAnalysisTaskGenerateCorrection("TaskFMD");
45 taskfmd->SetBLow(blow);
46 taskfmd->SetBHigh(bhigh);
47 mgr->AddTask(taskfmd);
49 // --- Connect input/output ----------------------------------------
50 AliAnalysisDataContainer *cout_fmd1 = mgr->CreateContainer("Hits",
52 AliAnalysisManager::kOutputContainer, outFile);
53 AliAnalysisDataContainer *cout_fmd2 = mgr->CreateContainer("Primaries",
55 AliAnalysisManager::kOutputContainer, outFile);
57 AliAnalysisDataContainer *cout_fmd3 = mgr->CreateContainer("vertex",
59 AliAnalysisManager::kOutputContainer, outFile);
60 AliAnalysisDataContainer *cout_fmd4 = mgr->CreateContainer("Correction",
62 AliAnalysisManager::kOutputContainer, outFile);
65 // Dummy AOD output container for jet analysis (no client yet)
66 //AliAnalysisDataContainer *c_aodfmd = mgr->CreateContainer("cAODfmd",
68 // AliAnalysisManager::kExchangeContainer);
69 // Connect to data containers
70 // mgr->ConnectInput (taskfmd, 0, cin_esd );
71 // mgr->ConnectOutput (fmdana, 0, c_aodfmd );
72 mgr->ConnectOutput (taskfmd, 1, cout_fmd1 );
73 mgr->ConnectOutput (taskfmd, 2, cout_fmd2 );
74 mgr->ConnectOutput (taskfmd, 3, cout_fmd3 );
75 mgr->ConnectOutput (taskfmd, 4, cout_fmd4 );
78 TString outputfile = Form("%s:%s",
79 AliAnalysisManager::GetCommonFileName(),
82 // AliAnalysisDataContainer *cout_fmd =
83 // mgr->CreateContainer("BackgroundCorrected", TList::Class(),
84 // AliAnalysisManager::kOutputContainer,outputfile);
85 mgr->ConnectInput(taskfmd, 0, mgr->GetCommonInputContainer());
86 //mgr->ConnectOutput(taskfmd, 1, cout_fmd);