]>
Commit | Line | Data |
---|---|---|
162637e4 | 1 | void RunLocalFMDAnalysisSE(const Char_t* filename= "AliESDs.root", const Char_t* cdbPath="local://$ALICE_ROOT/OCDB", const Char_t* outFile = "fmd_analysis.root") { |
7c3e5162 | 2 | |
3 | gSystem->Load("libANALYSIS"); | |
4 | gSystem->Load("libANALYSISalice"); | |
5 | gSystem->Load("libFMDanalysis"); | |
6 | ||
7 | //TGrid::Connect("alien://",0,0,"t"); | |
8 | ||
9 | //TChain* chain = CreateChainSingle(collectionName); | |
1253f50a | 10 | //TFile::Open(filename); |
11 | TChain* chain = new TChain("esdTree"); | |
12 | chain->Add(filename); | |
13 | ||
14 | ///chain->Add("/home/canute/ALICE/Simulations/TestOfAnalysis/AliESDs.root"); | |
15 | ||
16 | //(TChain*)gFile->Get("esdTree"); | |
7c3e5162 | 17 | if (!chain) return; |
18 | ||
19 | // | |
20 | // Make the analysis manager | |
21 | AliAnalysisManager *mgr = new AliAnalysisManager("Analysis Train", "A test setup for the analysis train"); | |
22 | // ESD input handler | |
23 | AliESDInputHandler *esdHandler = new AliESDInputHandler(); | |
24 | mgr->SetInputEventHandler(esdHandler); | |
bb8a464f | 25 | |
26 | AliMCEventHandler *mcHandler = new AliMCEventHandler(); | |
27 | mgr->SetMCtruthEventHandler(mcHandler); | |
28 | ||
7c3e5162 | 29 | AliAODHandler* aodHandler = new AliAODHandler(); |
30 | mgr->SetOutputEventHandler(aodHandler); | |
31 | aodHandler->SetOutputFileName("AliAODs.root"); | |
32 | ||
33 | ||
861795a8 | 34 | AliAnalysisDataContainer *cin_esd = mgr->GetCommonInputContainer(); |
7c3e5162 | 35 | // Output AOD container. Pointer to AOD put here only by filter task. |
36 | // This container is managed by the AOD handler | |
861795a8 | 37 | AliAnalysisDataContainer *cout_aod = mgr->GetCommonOutputContainer(); |
7c3e5162 | 38 | |
39 | AliFMDAnalysisTaskSE *fmdana = new AliFMDAnalysisTaskSE("FMDAnalysis"); | |
40 | mgr->AddTask(fmdana); | |
41 | // Output histograms list for jet analysis | |
42 | AliAnalysisDataContainer *cout_fmd = mgr->CreateContainer("BackgroundCorrected", | |
43 | TList::Class(), | |
44 | AliAnalysisManager::kOutputContainer, outFile); | |
45 | // Dummy AOD output container for jet analysis (no client yet) | |
46 | AliAnalysisDataContainer *c_aodfmd = mgr->CreateContainer("cAODfmd", | |
47 | TTree::Class(), | |
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 ); | |
53 | ||
54 | ||
55 | AliCDBManager* cdb = AliCDBManager::Instance(); | |
56 | cdb->SetDefaultStorage(cdbPath); | |
6289b3e8 | 57 | // cdb->SetSpecificStorage("FMD/*","local://$ALICE_ROOT"); |
58 | cdb->SetRun(0); | |
7c3e5162 | 59 | |
60 | AliFMDAnaParameters* pars = AliFMDAnaParameters::Instance(); | |
61 | pars->Init(); | |
f58a4769 | 62 | //if (AliGeomManager::GetGeometry() == NULL) |
63 | // AliGeomManager::LoadGeometry("geometry.root"); | |
64 | ||
7c3e5162 | 65 | if (AliGeomManager::GetGeometry() == NULL) |
66 | AliGeomManager::LoadGeometry(); | |
f58a4769 | 67 | AliFMDParameters* recopars = AliFMDParameters::Instance(); |
68 | recopars->Init(); | |
7c3e5162 | 69 | |
70 | AliFMDGeometry* geo = AliFMDGeometry::Instance(); | |
71 | geo->Init(); | |
72 | geo->InitTransformations(); | |
73 | ||
74 | TStopwatch timer; | |
75 | timer.Start(); | |
76 | if (mgr->InitAnalysis()) { | |
77 | mgr->PrintStatus(); | |
78 | mgr->StartAnalysis("local",chain); | |
79 | } | |
80 | timer.Stop(); | |
81 | timer.Print(); | |
82 | } | |
83 | //______________________________________________________________________________ | |
84 | TChain* CreateChainSingle(const char* xmlfile, const char *treeName="esdTree") | |
85 | { | |
86 | printf("*******************************\n"); | |
87 | printf("*** Getting the ESD Chain ***\n"); | |
88 | printf("*******************************\n"); | |
89 | TAlienCollection * myCollection = TAlienCollection::Open(xmlfile); | |
90 | ||
91 | if (!myCollection) { | |
92 | ::Error("CreateChainSingle", "Cannot create an AliEn collection from %s", xmlfile) ; | |
93 | return NULL ; | |
94 | } | |
95 | ||
96 | TChain* chain = new TChain(treeName); | |
97 | myCollection->Reset() ; | |
98 | while ( myCollection->Next() ) chain->Add(myCollection->GetTURL("")) ; | |
99 | chain->ls(); | |
100 | return chain; | |
101 | } |