Update from Salvatore for full jet embedding
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliJetEmbeddingFromAODTask.h
CommitLineData
b16bb001 1#ifndef ALIJETEMBEDDINGFROMAODTASK_H
2#define ALIJETEMBEDDINGFROMAODTASK_H
3
4// $Id: AliJetEmbeddingFromAODTask.h $
5
6class TFile;
7class TObjArray;
8class TClonesArray;
9class TString;
10class AliVCaloCells;
11class AliVHeader;
12class TH2;
13
14#include "AliJetModelBaseTask.h"
15
16class AliJetEmbeddingFromAODTask : public AliJetModelBaseTask {
17 public:
18 AliJetEmbeddingFromAODTask();
19 AliJetEmbeddingFromAODTask(const char *name, Bool_t drawqa=kFALSE);
20 virtual ~AliJetEmbeddingFromAODTask();
21
22 void UserCreateOutputObjects();
23 Bool_t UserNotify();
24
25 void SetFileList(TObjArray *list) { fFileList = list ; }
26 void SetAODTreeName(const char *t) { fAODTreeName = t ; }
27 void SetAODHeaderName(const char *t) { fAODHeaderName = t ; }
28 void SetAODTracksName(const char *n) { fAODTrackName = n ; }
29 void SetAODClusName(const char *n) { fAODClusName = n ; }
30 void SetAODCellsName(const char *n) { fAODCellsName = n ; }
31 void SetCentralityRange(Double_t min, Double_t max) { fMinCentrality = min ; fMaxCentrality = max ; }
32 void SetTriggerMask(UInt_t mask) { fTriggerMask = mask ; }
33 void SetAODfilterBits(Int_t b0 = 0, Int_t b1 = 0) { fAODfilterBits[0] = b0 ; fAODfilterBits[1] = b1 ; }
34 void SetIncludeNoITS(Bool_t f) { fIncludeNoITS = f ; }
35 void SetTotalFiles(Int_t n) { fTotalFiles = n ; }
36
37 protected:
38 Bool_t ExecOnce() ;// intialize task
39 void Run() ;// do jet model action
40 Bool_t OpenNextFile() ;// open next file in fFileList
41 Bool_t GetNextEntry() ;// get next entry in current tree
42 Bool_t IsAODEventSelected() ;// AOD event trigger/centrality selection
43
44 TObjArray *fFileList ;// List of AOD files
45 TString fAODTreeName ;// Name of the tree in the AOD file
46 TString fAODHeaderName ;// Name of the header in the AOD tree
47 TString fAODVertexName ;// Name of the vertex branch in the AOD tree
48 TString fAODTrackName ;// Name of the track collection branch in the AOD tree
49 TString fAODClusName ;// Name of the cluster collection branch in the AOD tree
50 TString fAODCellsName ;// Name of the cell collection branch in the AOD tree
51 Double_t fMinCentrality ;// Minimum centrality
52 Double_t fMaxCentrality ;// Maximum centrality
53 UInt_t fTriggerMask ;// Trigger selection mask
54 Double_t fZVertexCut ;// Z vertex cut
55 Int_t fAODfilterBits[2] ;// AOD track filter bit map
56 Bool_t fIncludeNoITS ;// True = includes tracks with failed ITS refit
57 Int_t fTotalFiles ;// Total number of files per pt hard bin
58 Bool_t fEsdTreeMode ;//! True = embed from ESD (must be a skimmed ESD!)
59 Int_t fCurrentFileID ;//! Current file being processed (trough the event handler)
60 Int_t fCurrentAODFileID ;//! Current file ID
61 TFile *fCurrentAODFile ;//! Current open file
62 AliVHeader *fAODHeader ;//! AOD header
63 TClonesArray *fAODVertex ;//! AOD vertex
64 TClonesArray *fAODTracks ;//! AOD track collection
65 TClonesArray *fAODClusters ;//! AOD cluster collection
66 AliVCaloCells *fAODCaloCells ;//! AOD cell collection
67 TH2 *fHistFileIDs ;//! Current file ID vs. AOD file ID (to be embedded)
68
69 private:
70 AliJetEmbeddingFromAODTask(const AliJetEmbeddingFromAODTask&); // not implemented
71 AliJetEmbeddingFromAODTask &operator=(const AliJetEmbeddingFromAODTask&); // not implemented
72
73 ClassDef(AliJetEmbeddingFromAODTask, 1) // Jet embedding from AOD task
74};
75#endif