]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/AliJetEmbeddingFromPYTHIATask.h
Improved merging.
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliJetEmbeddingFromPYTHIATask.h
CommitLineData
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 9template<class T>
10class TParameter;
11
a6e51e61 12class TString;
5be3857d 13class TH1;
2103dc6a 14class THashTable;
a6e51e61 15
16class 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