]>
Commit | Line | Data |
---|---|---|
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 */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | /// \ingroup muondep | |
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 | |
13 | ||
14 | //#define READOCDB | |
15 | ||
16 | #include "AliAnalysisTaskSE.h" | |
17 | ||
18 | class TObjArray; | |
19 | class TString; | |
20 | class TArrayI; | |
21 | class AliCounterCollection; | |
22 | class TAxis; | |
23 | ||
24 | #ifdef READOCDB | |
25 | class AliTriggerRunScalers; | |
26 | #endif | |
27 | ||
28 | class AliAnalysisTaskPileup : public AliAnalysisTaskSE { | |
29 | public: | |
30 | ||
31 | AliAnalysisTaskPileup(); | |
32 | AliAnalysisTaskPileup(const char *name); | |
33 | virtual ~AliAnalysisTaskPileup(); | |
34 | ||
35 | virtual void UserCreateOutputObjects(); | |
36 | virtual void UserExec(Option_t *); | |
37 | virtual void Terminate(Option_t *); | |
38 | virtual void NotifyRun(); | |
39 | ||
40 | void SetDefaultStorage(TString dbString); | |
41 | void SetSpecificStorage(TString calibType, TString dbString); | |
42 | ||
43 | private: | |
44 | ||
45 | /// Not implemented | |
46 | AliAnalysisTaskPileup(const AliAnalysisTaskPileup& rhs); | |
47 | /// Not implemented | |
48 | AliAnalysisTaskPileup& operator = (const AliAnalysisTaskPileup& rhs); | |
49 | ||
50 | Double_t GetL0Correction(Double_t nCINT1B, Double_t nCBEAMB); | |
51 | ||
52 | enum { | |
53 | kHevents, /// Number of events histogram | |
54 | kHeventsCorrectL0, /// Number of L0 corrected events histogram | |
55 | kNeventHistos /// Number of trigger histograms | |
56 | }; | |
57 | ||
58 | AliCounterCollection* fEventCounters; //!< Event statistics | |
59 | TObjArray* fHistoEventsList; //!< List of event histograms | |
60 | ||
61 | TObjArray* fTriggerClasses; //!< full trigger class name | |
62 | TArrayI* fTriggerClassIndex; //!< Trigger classes mask | |
63 | ||
64 | Bool_t fIsInitCDB; //!< Flag telling if CDB is used | |
65 | TAxis* fCentralityClasses; //!< Centrality classes | |
66 | ||
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 | |
71 | ||
72 | #if defined(READOCDB) | |
73 | AliTriggerRunScalers* fTriggerRunScalers; //!< Trigger scalers from OCDB | |
74 | #endif | |
75 | ||
76 | ClassDef(AliAnalysisTaskPileup, 1); | |
77 | }; | |
78 | ||
79 | #endif | |
80 |