]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/AliEmcalJetTask.h
Updates from Salvatore for Embedding
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliEmcalJetTask.h
CommitLineData
914d486c 1#ifndef ALIEMCALJETTASK_H
2#define ALIEMCALJETTASK_H
48d874ff 3
4// $Id$
5
6class TClonesArray;
b65fac7a 7class AliVEvent;
48d874ff 8
d14d6e2c 9#include "AliLog.h"
48d874ff 10#include "AliAnalysisTaskSE.h"
11
914d486c 12class AliEmcalJetTask : public AliAnalysisTaskSE {
48d874ff 13 public:
914d486c 14 AliEmcalJetTask();
15 AliEmcalJetTask(const char *name);
16 virtual ~AliEmcalJetTask();
48d874ff 17
b65fac7a 18 void UserCreateOutputObjects();
19 void UserExec(Option_t *option);
20 void Terminate(Option_t *option);
21
111318e8 22 void SetAlgo(Int_t a) { fAlgo = a ; }
b65fac7a 23 void SetClusName(const char *n) { fCaloName = n ; }
24 void SetJetsName(const char *n) { fJetsName = n ; }
b65fac7a 25 void SetMinJetArea(Double_t a) { fMinJetArea = a ; }
111318e8 26 void SetMinJetClusPt(Double_t min) { fMinJetClusPt = min ; }
b65fac7a 27 void SetMinJetPt(Double_t j) { fMinJetPt = j ; }
111318e8 28 void SetMinJetTrackPt(Double_t min) { fMinJetTrackPt = min ; }
29 void SetRadius(Double_t r) { fRadius = r ; }
30 void SetTracksName(const char *n) { fTracksName = n ; }
31 void SetType(Int_t t) { fType = t ; }
04905231 32 void SetEtaRange(Double_t emi, Double_t ema) {fEtaMin = emi; fEtaMax = ema; }
33 void SetPhiRange(Double_t pmi, Double_t pma) {fPhiMin = pmi; fPhiMax = pma; }
1f9c287f 34 void SetGhostArea(Double_t gharea) { fGhostArea = gharea; }
d14d6e2c 35 void SelectCollisionCandidates(UInt_t offlineTriggerMask = AliVEvent::kMB)
36 {
37 if(!fIsPSelSet)
38 {
39 fIsPSelSet = kTRUE;
40 fOfflineTriggerMask = offlineTriggerMask;
41 }
42 else
43 {
44 AliWarning("Manually setting the event selection for jet finders is not allowed! Using trigger=old_trigger | your_trigger");
45 fOfflineTriggerMask = fOfflineTriggerMask | offlineTriggerMask;
46 }
47 }
48d874ff 48 protected:
04905231 49 void FindJets();
50 Bool_t DoInit();
48d874ff 51
900f5135 52 TString fTracksName; // name of track collection
53 TString fCaloName; // name of calo cluster collection
7efbea04 54 TString fJetsName; // name of jet collection
48d874ff 55 Int_t fAlgo; // algo (0==kt, 1==antikt)
56 Double_t fRadius; // jet radius
57 Int_t fType; // jet type (0=all, 1=ch, 2=neutral)
f5f3c8e9 58 Double_t fMinJetTrackPt; // min jet track momentum (applied before clustering)
59 Double_t fMinJetClusPt; // min jet cluster momentum (applied before clustering)
04905231 60 Double_t fPhiMin; // minimum phi for constituents (applied before clustering)
61 Double_t fPhiMax; // maximum phi for constituents (applied before clustering)
62 Double_t fEtaMin; // minimum eta for constituents (applied before clustering)
63 Double_t fEtaMax; // maximum eta for constituents (applied before clustering)
f5f3c8e9 64 Double_t fMinJetArea; // min area to keep jet in output
65 Double_t fMinJetPt; // min jet pt to keep jet in output
1f9c287f 66 Double_t fGhostArea; // ghost area
04905231 67 Bool_t fIsInit; //!=true if already initialized
d14d6e2c 68 Bool_t fIsPSelSet; //!=true if physics selection was set
04905231 69 Bool_t fIsMcPart; //!=true if MC particles are given as input
70 Bool_t fIsEmcPart; //!=true if emcal particles are given as input (for clusters)
48d874ff 71 TClonesArray *fJets; //!jet collection
b65fac7a 72 AliVEvent *fEvent; //!current event
04905231 73 TClonesArray *fTracks; //!tracks collection
74 TClonesArray *fClus; //!cluster collection
48d874ff 75
76 private:
914d486c 77 AliEmcalJetTask(const AliEmcalJetTask&); // not implemented
78 AliEmcalJetTask &operator=(const AliEmcalJetTask&); // not implemented
48d874ff 79
1f9c287f 80 ClassDef(AliEmcalJetTask, 5) // Jet producing task
48d874ff 81};
82#endif