1 #ifndef ALIJETEMBEDDINGFROMPYTHIATASK_H
2 #define ALIJETEMBEDDINGFROMPYTHIATASK_H
6 #include "AliJetEmbeddingFromAODTask.h"
16 class AliJetEmbeddingFromPYTHIATask : public AliJetEmbeddingFromAODTask {
18 AliJetEmbeddingFromPYTHIATask();
19 AliJetEmbeddingFromPYTHIATask(const char *name, Bool_t drawqa=kFALSE);
20 virtual ~AliJetEmbeddingFromPYTHIATask();
23 void UserCreateOutputObjects();
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 ; }
29 void SetFileTable(THashTable *t) { fFileTable = t ; }
30 void SetUseAsVetoTable(Bool_t v) { fUseAsVetoTable = v ; }
31 void SetMinEntriesFromFile(Int_t r) { fMinEntriesFromFile = r ; }
34 Bool_t ExecOnce() ;// intialize task
35 Bool_t GetNextEntry() ;// get next entry in current tree
36 Int_t GetRandomPtHardBin() ;// get a radnom pt hard bin according to fPtHardBinScaling
37 TFile *GetNextFile() ;// get next file
39 TString fPYTHIAPath ;// Path of the PYTHIA production
40 TArrayD fPtHardBinScaling ;// Pt hard bin scaling
41 Bool_t fLHC11hAnchorRun ;// LHC11h anchor runs
42 Int_t fAnchorRun ;// Anchor run
43 THashTable *fFileTable ;// Table of allowed/vetoed files
44 Bool_t fUseAsVetoTable ;// Use fFileTable as a veto table
45 Int_t fMinEntriesFromFile ;// Minimum number of embedded events before changing file
46 Int_t fCurrentPtHardBin ;//!Pt hard bin of the current open file
47 TParameter<int> *fPtHardBinParam ;//!Pt hard bin param
49 TH1 *fHistPtHardBins ;//!Embeded pt hard bin distribution
52 AliJetEmbeddingFromPYTHIATask(const AliJetEmbeddingFromPYTHIATask&); // not implemented
53 AliJetEmbeddingFromPYTHIATask &operator=(const AliJetEmbeddingFromPYTHIATask&); // not implemented
55 ClassDef(AliJetEmbeddingFromPYTHIATask, 3) // Jet embedding from PYTHIA task