]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/AliEmcalJetFinder.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliEmcalJetFinder.h
CommitLineData
14ca6380 1#ifndef ALIEMCALJETFINDER_H
2#define ALIEMCALJETFINDER_H
3
4// $Id$
5
6namespace fastjet {
7 class PseudoJet;
8}
9
10class AliEmcalJet;
11class AliFJWrapper;
12class TNamed;
13class TH1;
14
15class AliEmcalJetFinder : public TNamed
16{
17 public:
18 AliEmcalJetFinder();
19 AliEmcalJetFinder(const char* name);
20 ~AliEmcalJetFinder();
21
22 Bool_t FindJets();
23 void AddInputVector(Double_t px, Double_t py, Double_t pz);
abfd90d8 24 void AddInputVector(Double_t px, Double_t py, Double_t pz, Double_t E);
14ca6380 25 void FillPtHistogram(TH1* histogram);
26 void FillEtaHistogram(TH1* histogram);
27 void FillPhiHistogram(TH1* histogram);
28
29 Int_t GetJets(AliEmcalJet*& jets) {jets = fJetArray[0]; return fJetCount;}
30 AliEmcalJet* GetJet(Int_t index) {return fJetArray[index];}
abfd90d8 31 Int_t GetNumberOfJets() {return fJetCount;}
14ca6380 32 void SetGhostArea(Double_t val) {fGhostArea = val;}
33 void SetRadius(Double_t val) {fRadius = val;}
34 void SetJetAlgorithm(Int_t val) {fJetAlgorithm = val;}
abfd90d8 35 void SetRecombSheme(Int_t val) {fRecombScheme = val;}
14ca6380 36 void SetTrackMaxEta(Double_t val) {fTrackMaxEta = val;}
37 void SetJetMaxEta(Double_t val) {fJetMaxEta = val;}
38 void SetJetMinPt(Double_t val) {fJetMinPt = val;}
39 void SetJetMinArea(Double_t val) {fJetMinArea = val;}
40
41 void SetManualIndex(Int_t val) {fInputVectorIndex = val;}
42 private:
43 // General properties
2eedf9a5 44 AliFJWrapper* fFastjetWrapper; // Interface object to fastjet
45 Int_t fInputVectorIndex; // Current index of input vectors (by default: count of vectors)
46 Int_t fJetCount; // Found jets within the given acceptances
47 std::vector<AliEmcalJet*> fJetArray; // Internal array for the jets
14ca6380 48 // Settings for fastjet
2eedf9a5 49 Double_t fGhostArea; // setting for ghost area in FJ
50 Double_t fRadius; // Radius parameter
51 Int_t fJetAlgorithm; // var for algorithm (0=antikt, 1=kt)
abfd90d8 52 Int_t fRecombScheme; // Recombination scheme for Fastjet
2eedf9a5 53 Double_t fTrackMaxEta; // cut for |track-eta| < fTrackMaxEta
14ca6380 54 // Jet cuts
2eedf9a5 55 Double_t fJetMaxEta; // cut for |jet-eta| < fJetMaxEta
56 Double_t fJetMinPt; // cut for jet-pT > fJetMinPt
57 Double_t fJetMinArea; // cut for jet-area > fJetMinArea
14ca6380 58
24b3622c 59 AliEmcalJetFinder(const AliEmcalJetFinder& obj); // copy constructor
60 AliEmcalJetFinder& operator=(const AliEmcalJetFinder& other); // assignment
61
14ca6380 62 ClassDef(AliEmcalJetFinder, 1); // Lightweight fastjet implementation outside analysis tasks
63};
64
65#endif