]>
Commit | Line | Data |
---|---|---|
a6e51e61 | 1 | #ifndef ALIJETEMBEDDINGFROMPYTHIATASK_H |
2 | #define ALIJETEMBEDDINGFROMPYTHIATASK_H | |
3 | ||
4 | // $Id: AliJetEmbeddingFromPYTHIATask.h $ | |
5 | ||
6 | #include "AliJetEmbeddingFromAODTask.h" | |
7 | #include <TArrayD.h> | |
8 | ||
ca5c29fa | 9 | template<class T> |
10 | class TParameter; | |
11 | ||
a6e51e61 | 12 | class TString; |
5be3857d | 13 | class TH1; |
2103dc6a | 14 | class THashTable; |
a6e51e61 | 15 | |
16 | class AliJetEmbeddingFromPYTHIATask : public AliJetEmbeddingFromAODTask { | |
17 | public: | |
18 | AliJetEmbeddingFromPYTHIATask(); | |
ca5c29fa | 19 | AliJetEmbeddingFromPYTHIATask(const char *name, Bool_t drawqa=kFALSE); |
a6e51e61 | 20 | virtual ~AliJetEmbeddingFromPYTHIATask(); |
21 | ||
22 | Bool_t UserNotify(); | |
ca5c29fa | 23 | void UserCreateOutputObjects(); |
a6e51e61 | 24 | |
25 | void SetPYTHIAPath(const char* p) { fPYTHIAPath = p ; } | |
26 | void SetPtHardBinScaling(Int_t n, Double_t *scaling) { new (&fPtHardBinScaling) TArrayD(n, scaling) ; } | |
27 | void SetAnchorRun(Int_t r) { fAnchorRun = r ; } | |
28 | void SetLHC11hAnchorRuns(Bool_t a=kTRUE) { fLHC11hAnchorRun = a ; } | |
2103dc6a | 29 | void SetFileTable(THashTable *t) { fFileTable = t ; } |
30 | void SetUseAsVetoTable(Bool_t v) { fUseAsVetoTable = v ; } | |
a6e51e61 | 31 | |
32 | protected: | |
33 | Bool_t ExecOnce() ;// intialize task | |
34 | Bool_t GetNextEntry() ;// get next entry in current tree | |
35 | Int_t GetRandomPtHardBin() ;// get a radnom pt hard bin according to fPtHardBinScaling | |
2103dc6a | 36 | TFile *GetNextFile() ;// get next file |
a6e51e61 | 37 | |
38 | TString fPYTHIAPath ;// Path of the PYTHIA production | |
39 | TArrayD fPtHardBinScaling ;// Pt hard bin scaling | |
40 | Bool_t fLHC11hAnchorRun ;// LHC11h anchor runs | |
41 | Int_t fAnchorRun ;// Anchor run | |
2103dc6a | 42 | THashTable *fFileTable ;// Table of allowed/vetoed files |
43 | Bool_t fUseAsVetoTable ;// Use fFileTable as a veto table | |
a6e51e61 | 44 | Int_t fCurrentPtHardBin ;//!Pt hard bin of the current open file |
ca5c29fa | 45 | TParameter<int> *fPtHardBinParam ;//!Pt hard bin param |
a6e51e61 | 46 | |
ca5c29fa | 47 | TH1 *fHistPtHardBins ;//!Embeded pt hard bin distribution |
a6e51e61 | 48 | |
49 | private: | |
50 | AliJetEmbeddingFromPYTHIATask(const AliJetEmbeddingFromPYTHIATask&); // not implemented | |
51 | AliJetEmbeddingFromPYTHIATask &operator=(const AliJetEmbeddingFromPYTHIATask&); // not implemented | |
52 | ||
2103dc6a | 53 | ClassDef(AliJetEmbeddingFromPYTHIATask, 2) // Jet embedding from PYTHIA task |
a6e51e61 | 54 | }; |
55 | #endif |