1 #ifndef AliJEBECORR_cxx
2 #define AliJEBECORR_cxx
8 #include "AliAnalysisTaskSE.h"
9 #include "AliGenEventHeader.h"
10 #include "AliAnalysisUtils.h"
11 #include "AliJEfficiency.h"
16 class AliESDtrackCuts;
23 class AliJCorrelations;
24 class AliJEbePercentile;
29 class AliJEbECORRTask : public AliAnalysisTaskSE {
33 AliJEbECORRTask(const char *name);
34 AliJEbECORRTask(const AliJEbECORRTask& a); // not implemented
35 AliJEbECORRTask& operator=(const AliJEbECORRTask& ap); // not implemented
37 virtual ~AliJEbECORRTask();
39 virtual void UserCreateOutputObjects();
40 virtual void UserExec(Option_t *option);
41 virtual void Terminate(Option_t *);
42 virtual Bool_t UserNotify();
44 bool IsGoodEvent(AliVEvent *event);
45 double RunEbEFlowAnalysis(AliVEvent *event, TClonesArray* inputlist);
46 void PlayCorrelation(TClonesArray *triggList, TClonesArray *assocList);
47 void SetDebugMode( int debug) { fDebugMode = debug; };
48 void ScaleNotEquidistantHisto(TH1D *hid, const double sc);
49 AliJCard *GetCard() { return fCard; }
50 void SetCard( AliJCard *c ) { fCard = c; }
51 void SetEbePercentileInputFileName(TString name) { ebePercentileInputFileName = name; };
53 TString MemoryStatus(){
57 ifstream ins(Form("/proc/%d/status",pid ));
61 double nom = TMath::Power( 2, 20 );
62 TPMERegexp split("\\s+");
67 if( split.NMatches() < 2 ) continue;
70 if( key == "VmSwap:" ) VmSwap = v1.Atof()/nom;
71 if( key == "VmSize:" ) VmSize = v1.Atof()/nom;
72 if( key.BeginsWith("VmPeak") ) VmPeak = v1.Atof()/nom;
74 TString res = Form("VmPeak:%10.2f VmSize:%10.2f VmSwap:%10.2f", VmPeak, VmSize, VmSwap);
81 TDirectory *fOutput; // Output
83 AliAnalysisUtils *fAnaUtils;
87 AliJHistos * fHistos; //!
88 AliJEbeHistos * fEbeHistos; //!
89 AliJEfficiency *fEfficiency;
90 int fHadronSelectionCut;
92 TClonesArray * fInputList;
93 TClonesArray * ftriggList;
94 TClonesArray * fassocList;
96 AliJCorrelations *fcorrelations; //!
97 AliJEventPool *fassocPool; //!
98 AliJEbePercentile *fEbePercentile; //!
100 Bool_t fFirstEvent; //
105 Int_t fevt; // event number
108 TVector *fEbECentBinBorders;
109 TString ebePercentileInputFileName;
110 AliJRunTable *fRunTable; //
114 ClassDef(AliJEbECORRTask, 1); // example of analysis