1 void RunLocalFMDAnalysisSE(const Char_t* filename= "AliESDs.root", const Char_t* cdbPath="local://$ALICE_ROOT/OCDB", const Char_t* outFile = "fmd_analysis.root") {
3 gSystem->Load("libANALYSIS");
4 gSystem->Load("libANALYSISalice");
5 gSystem->Load("libFMDanalysis");
7 //TGrid::Connect("alien://",0,0,"t");
9 //TChain* chain = CreateChainSingle(collectionName);
10 //TFile::Open(filename);
11 TChain* chain = new TChain("esdTree");
14 ///chain->Add("/home/canute/ALICE/Simulations/TestOfAnalysis/AliESDs.root");
16 //(TChain*)gFile->Get("esdTree");
20 // Make the analysis manager
21 AliAnalysisManager *mgr = new AliAnalysisManager("Analysis Train", "A test setup for the analysis train");
23 AliESDInputHandler *esdHandler = new AliESDInputHandler();
24 mgr->SetInputEventHandler(esdHandler);
26 AliMCEventHandler *mcHandler = new AliMCEventHandler();
27 mgr->SetMCtruthEventHandler(mcHandler);
29 AliAODHandler* aodHandler = new AliAODHandler();
30 mgr->SetOutputEventHandler(aodHandler);
31 aodHandler->SetOutputFileName("AliAODs.root");
34 AliAnalysisDataContainer *cin_esd = mgr->GetCommonInputContainer();
35 // Output AOD container. Pointer to AOD put here only by filter task.
36 // This container is managed by the AOD handler
37 AliAnalysisDataContainer *cout_aod = mgr->GetCommonOutputContainer();
39 AliFMDAnalysisTaskSE *fmdana = new AliFMDAnalysisTaskSE("FMDAnalysis");
41 // Output histograms list for jet analysis
42 AliAnalysisDataContainer *cout_fmd = mgr->CreateContainer("BackgroundCorrected",
44 AliAnalysisManager::kOutputContainer, outFile);
45 // Dummy AOD output container for jet analysis (no client yet)
46 AliAnalysisDataContainer *c_aodfmd = mgr->CreateContainer("cAODfmd",
48 AliAnalysisManager::kExchangeContainer);
49 // Connect to data containers
50 mgr->ConnectInput (fmdana, 0, cin_esd );
51 mgr->ConnectOutput (fmdana, 0, c_aodfmd );
52 mgr->ConnectOutput (fmdana, 1, cout_fmd );
55 AliCDBManager* cdb = AliCDBManager::Instance();
56 cdb->SetDefaultStorage(cdbPath);
57 // cdb->SetSpecificStorage("FMD/*","local://$ALICE_ROOT");
60 AliFMDAnaParameters* pars = AliFMDAnaParameters::Instance();
62 //if (AliGeomManager::GetGeometry() == NULL)
63 // AliGeomManager::LoadGeometry("geometry.root");
65 if (AliGeomManager::GetGeometry() == NULL)
66 AliGeomManager::LoadGeometry();
67 AliFMDParameters* recopars = AliFMDParameters::Instance();
70 AliFMDGeometry* geo = AliFMDGeometry::Instance();
72 geo->InitTransformations();
76 if (mgr->InitAnalysis()) {
78 mgr->StartAnalysis("local",chain);
83 //______________________________________________________________________________
84 TChain* CreateChainSingle(const char* xmlfile, const char *treeName="esdTree")
86 printf("*******************************\n");
87 printf("*** Getting the ESD Chain ***\n");
88 printf("*******************************\n");
89 TAlienCollection * myCollection = TAlienCollection::Open(xmlfile);
92 ::Error("CreateChainSingle", "Cannot create an AliEn collection from %s", xmlfile) ;
96 TChain* chain = new TChain(treeName);
97 myCollection->Reset() ;
98 while ( myCollection->Next() ) chain->Add(myCollection->GetTURL("")) ;