-TChain* CreateESDChain(const char* aDataDir, Int_t aRuns = 20, Bool_t aAddHeader = kTRUE)
+TChain* CreateESDChainFromDir(const char* aDataDir, Int_t aRuns = 20, Bool_t aAddHeader = kTRUE)
{
if (!aDataDir)
return 0;
return chain;
}
+
+TChain* CreateESDChainFromList(const char* listFile, Int_t aRuns = 20, Bool_t aAddHeader = kTRUE)
+{
+ if (!listFile)
+ return 0;
+
+ TChain* chain = new TChain("esdTree");
+ TChain* chaingAlice = 0;
+
+ if (aAddHeader != kFALSE)
+ chaingAlice = new TChain("TE");
+
+ // Open the input stream
+ ifstream in;
+ in.open(listFile);
+
+ Int_t count = 0;
+
+ // Read the input list of files and add them to the chain
+ TString esdfile;
+ while(in.good()) {
+ in >> esdfile;
+ if (!esdfile.Contains("root")) continue; // protection
+
+ if (count++ == aRuns)
+ break;
+
+ // add esd file
+ chain->Add(esdfile);
+
+ // add header
+ if (aAddHeader != kFALSE)
+ {
+ esdfile.ReplaceAll("AliESDs", "galice");
+ chaingAlice->Add(esdfile + "/TE");
+ }
+ }
+
+ in.close();
+
+ chain->Lookup();
+
+ if (aAddHeader != kFALSE)
+ {
+ chaingAlice->Lookup();
+ chain->AddFriend(chaingAlice);
+ }
+
+ return chain;
+}
#pragma link off all globals;
#pragma link off all classes;
#pragma link off all functions;
-
+
#pragma link C++ class AliSelector+;
+#pragma link C++ class AliSelectorRL+;
#pragma link C++ class AlidNdEtaCorrectionSelector+;
#pragma link C++ class AlidNdEtaAnalysisSelector+;
#include <AliLog.h>
#include <AliGenEventHeader.h>
-#include <AliTracker.h>
-#include "../esdTrackCuts/AliESDtrackCuts.h"
-#include "dNdEtaCorrection.h"
#include "dNdEtaAnalysis.h"
ClassImp(AlidNdEtaAnalysisMCSelector)
#include <AliLog.h>
#include <AliGenEventHeader.h>
-#include <AliTracker.h>
-#include "../esdTrackCuts/AliESDtrackCuts.h"
+#include "esdTrackCuts/AliESDtrackCuts.h"
#include "dNdEtaCorrection.h"
#include "dNdEtaAnalysis.h"
#ifndef ALIDNDETAANALYSISSELECTOR_H
#define ALIDNDETAANALYSISSELECTOR_H
-#include "../AliSelector.h"
+#include "AliSelector.h"
class AliESDtrackCuts;
class dNdEtaCorrection;
#include <AliGenEventHeader.h>
#include <AliTracker.h>
-#include "../esdTrackCuts/AliESDtrackCuts.h"
+#include "esdTrackCuts/AliESDtrackCuts.h"
#include "dNdEtaCorrection.h"
ClassImp(AlidNdEtaCorrectionSelector)
#ifndef ALIDNDETACORRECTIONSELECTOR_H
#define ALIDNDETACORRECTIONSELECTOR_H
-#include "../AliSelector.h"
+#include "AliSelector.h"
class AliESDtrackCuts;
class dNdEtaCorrection;
void makeCorrection2(Char_t* dataDir, Int_t nRuns=20)
{
gSystem->Load("libPWG0base");
+ gSystem->SetIncludePath("-I$ALICE_ROOT/PWG0");
- TChain* chain = CreateESDChain(dataDir, nRuns);
+ TChain* chain = CreateESDChainFromDir(dataDir, nRuns);
fEsdTrackCuts = new AliESDtrackCuts();
fEsdTrackCuts->DefineHistograms(1);
testAnalysis2(Char_t* dataDir, Int_t nRuns=20, Bool_t aMC = kFALSE)
{
gSystem->Load("libPWG0base");
+ gSystem->SetIncludePath("-I$ALICE_ROOT/PWG0");
- TChain* chain = CreateESDChain(dataDir, nRuns);
+ TChain* chain = CreateESDChainFromDir(dataDir, nRuns);
// ########################################################
// selection of esd tracks
chain->GetUserInfo()->Add(dNdEtaCorrection);
}
-
+
TString selectorName = ((aMC == kFALSE) ? "AlidNdEtaAnalysisSelector" : "AlidNdEtaAnalysisMCSelector");
AliLog::SetClassDebugLevel(selectorName, AliLog::kInfo);
HDRS = AliSelector.h \
+ AliSelectorRL.h \
dNdEta/AlidNdEtaCorrectionSelector.h \
dNdEta/AlidNdEtaAnalysisSelector.h \
dNdEta/AlidNdEtaAnalysisMCSelector.h \
SRCS = $(HDRS:.h=.cxx)
+#PARBLACKLIST = dNdEta/AlidNdEtaCorrectionSelector.h \
+# dNdEta/AlidNdEtaAnalysisSelector.h \
+# dNdEta/AlidNdEtaAnalysisMCSelector.h
+
DHDR= PWG0baseLinkDef.h
EINCLUDE=