1 void RunAliEnFMDAnalysisSE(const Char_t* collectionName="collection.xml", const Char_t* cdbPath="local://$ALICE_ROOT/OCDB") {
3 gSystem->Load("libANALYSIS");
4 gSystem->Load("libANALYSISalice");
5 gSystem->Load("libFMDanalysis");
7 TGrid::Connect("alien://",0,0,"t");
8 TChain* chain = CreateChainSingle(collectionName);
13 // Make the analysis manager
14 AliAnalysisManager *mgr = new AliAnalysisManager("Analysis Train", "A test setup for the analysis train");
16 AliESDInputHandler *esdHandler = new AliESDInputHandler();
17 mgr->SetInputEventHandler(esdHandler);
19 AliMCEventHandler *mcHandler = new AliMCEventHandler();
20 mgr->SetMCtruthEventHandler(mcHandler);
22 AliAODHandler* aodHandler = new AliAODHandler();
23 mgr->SetOutputEventHandler(aodHandler);
24 aodHandler->SetOutputFileName("AliAODs.root");
27 AliAnalysisDataContainer *cin_esd = mgr->GetCommonInputContainer();
28 // Output AOD container. Pointer to AOD put here only by filter task.
29 // This container is managed by the AOD handler
30 AliAnalysisDataContainer *cout_aod = mgr->GetCommonOutputContainer();
32 AliFMDAnalysisTaskSE *fmdana = new AliFMDAnalysisTaskSE("FMDAnalysis");
34 // Output histograms list for jet analysis
35 AliAnalysisDataContainer *cout_fmd = mgr->CreateContainer("BackgroundCorrected",
37 AliAnalysisManager::kOutputContainer, "fmd_analysis.root");
38 // Dummy AOD output container for jet analysis (no client yet)
39 AliAnalysisDataContainer *c_aodfmd = mgr->CreateContainer("cAODfmd",
41 AliAnalysisManager::kExchangeContainer);
42 // Connect to data containers
43 mgr->ConnectInput (fmdana, 0, cin_esd );
44 mgr->ConnectOutput (fmdana, 0, c_aodfmd );
45 mgr->ConnectOutput (fmdana, 1, cout_fmd );
48 AliCDBManager* cdb = AliCDBManager::Instance();
49 cdb->SetDefaultStorage(cdbPath);
50 cdb->SetSpecificStorage("FMD/*","local://$ALICE_ROOT");
53 AliFMDAnaParameters* pars = AliFMDAnaParameters::Instance();
55 if (AliGeomManager::GetGeometry() == NULL)
56 AliGeomManager::LoadGeometry();
58 AliFMDGeometry* geo = AliFMDGeometry::Instance();
60 geo->InitTransformations();
64 if (mgr->InitAnalysis()) {
66 mgr->StartAnalysis("local",chain, 2000);
71 //______________________________________________________________________________
72 TChain* CreateChainSingle(const char* xmlfile, const char *treeName="esdTree")
74 printf("*******************************\n");
75 printf("*** Getting the ESD Chain ***\n");
76 printf("*******************************\n");
77 TAlienCollection * myCollection = TAlienCollection::Open(xmlfile);
80 ::Error("CreateChainSingle", "Cannot create an AliEn collection from %s", xmlfile) ;
84 TChain* chain = new TChain(treeName);
85 myCollection->Reset() ;
87 while ( myCollection->Next() && nFiles <20) {
88 chain->Add(myCollection->GetTURL("")) ;