1 TChain* CreateESDChain(const char* aDataDir, Bool_t aAddHeader = kTRUE)
6 TChain* chain = new TChain("esdTree");
7 TChain* chaingAlice = 0;
9 if (aAddHeader != kFALSE)
10 chaingAlice = new TChain("TE");
12 TString execDir(gSystem->pwd());
13 TSystemDirectory* baseDir = new TSystemDirectory(".", aDataDir);
14 TList* dirList = baseDir->GetListOfFiles();
15 Int_t nDirs = dirList->GetEntries();
18 for (Int_t iDir=0; iDir<nDirs; ++iDir)
20 TSystemFile* presentDir = (TSystemFile*) dirList->At(iDir);
21 if (!presentDir || !presentDir->IsDirectory() || strcmp(presentDir->GetName(), ".") == 0 || strcmp(presentDir->GetName(), "..") == 0)
24 TString presentDirName(aDataDir);
25 presentDirName += "/";
26 presentDirName += presentDir->GetName();
28 chain->Add(presentDirName + "/AliESDs.root/esdTree");
30 if (aAddHeader != kFALSE)
31 chaingAlice->Add(presentDirName + "/galice.root/TE");
34 if (aAddHeader != kFALSE)
35 chain->AddFriend(chaingAlice);