1 #ifndef ALIANALYSISTASKPILEUP_H
2 #define ALIANALYSISTASKPILEUP_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
9 /// \class AliAnalysisTaskPileup
10 /// \brief Trigger scaler analysis for pileup corrections
11 /// Based on the work by L. Aphecetche - SUBATECH Nantes
12 //Author: Diego Stocco - SUBATECH Nantes
16 #include "AliAnalysisTaskSE.h"
21 class AliCounterCollection;
25 class AliTriggerRunScalers;
28 class AliAnalysisTaskPileup : public AliAnalysisTaskSE {
31 AliAnalysisTaskPileup();
32 AliAnalysisTaskPileup(const char *name);
33 virtual ~AliAnalysisTaskPileup();
35 virtual void UserCreateOutputObjects();
36 virtual void UserExec(Option_t *);
37 virtual void Terminate(Option_t *);
38 virtual void NotifyRun();
40 void SetDefaultStorage(TString dbString);
41 void SetSpecificStorage(TString calibType, TString dbString);
46 AliAnalysisTaskPileup(const AliAnalysisTaskPileup& rhs);
48 AliAnalysisTaskPileup& operator = (const AliAnalysisTaskPileup& rhs);
50 Double_t GetL0Correction(Double_t nCINT1B, Double_t nCBEAMB);
53 kHevents, /// Number of events histogram
54 kHeventsCorrectL0, /// Number of L0 corrected events histogram
55 kNeventHistos /// Number of trigger histograms
58 AliCounterCollection* fEventCounters; //!< Event statistics
59 TObjArray* fHistoEventsList; //!< List of event histograms
61 TObjArray* fTriggerClasses; //!< full trigger class name
62 TArrayI* fTriggerClassIndex; //!< Trigger classes mask
64 Bool_t fIsInitCDB; //!< Flag telling if CDB is used
65 TAxis* fCentralityClasses; //!< Centrality classes
67 // In principle it is used only when READOCDB is defined
68 // but if it is defined in the #if condition, it is not
69 // correctly streamed to file (not good for plugin)
70 TString fStorageList; /// List of storages
73 AliTriggerRunScalers* fTriggerRunScalers; //!< Trigger scalers from OCDB
76 ClassDef(AliAnalysisTaskPileup, 1);