]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/SPECTRA/ChargedHadrons/dNdPt/AlidNdPtBackgroundCuts.h
Added distributions in phi, updated AddTask accordingly
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / ChargedHadrons / dNdPt / AlidNdPtBackgroundCuts.h
CommitLineData
a65a7e70 1#ifndef ALIDNDPTBACKGROUNDCUTS_H
2#define ALIDNDPTBACKGROUNDCUTS_H
3
4//------------------------------------------------------------------------------
5// Class to keep selection cuts for
6// cosmic and kinks and splitted tracks.
7//
8// Author: J.Otwinowski 25/01/2010
9//------------------------------------------------------------------------------
10
11class TParticle;
12class AliESDtrack;
13class AliExternalTrackParam;
14
15#include "AliAnalysisCuts.h"
16
17class AlidNdPtBackgroundCuts : public AliAnalysisCuts
18{
19public:
20 AlidNdPtBackgroundCuts(const Char_t* name ="AlidNdPtBackgroundCuts", const Char_t *title ="");
21 virtual ~AlidNdPtBackgroundCuts();
22
23 // setters
24 void SetEtaWindow(const Float_t min=-10., const Float_t max=10.) { fMinEta=min; fMaxEta=max; }
25 void SetPhiWindow(const Float_t min=0., const Float_t max=1e99) { fMinPhi=min; fMaxPhi=max;}
26 void SetPtWindow(const Float_t min=0., const Float_t max=1e99) { fMinPt=min; fMaxPt=max;}
27 void SetMaxFracSharedClust(const Float_t max=1.) {fMaxFracSharedClust=max;}
28
29 // getters
30 Float_t GetMinEta() const {return fMinEta;}
31 Float_t GetMaxEta() const {return fMaxEta;}
32 Float_t GetMinPhi() const {return fMinPhi;}
33 Float_t GetMaxPhi() const {return fMaxPhi;}
34 Float_t GetMinPt() const {return fMinPt;}
35 Float_t GetMaxPt() const {return fMaxPt;}
36
37 Float_t GetMaxFracSharedClust() const {return fMaxFracSharedClust;}
38
39 // Get control histo
40 THnSparseF *GetControlHisto() const {return fControlHisto;}
41
42 // cuts init function
43 void Init();
44
45 // check MC tracks
46 virtual Bool_t IsSelected(TObject *) {return kTRUE;}
47 virtual Bool_t IsSelected(TList *) {return kTRUE;}
48
49 //
50 Bool_t IsBackgroundTrack(AliESDtrack *track1, AliESDtrack *track2);
51 Bool_t IsCosmicTrack(AliESDtrack *track1, AliESDtrack *track2);
52 Bool_t IsSplittedTrack(AliESDtrack *track1, AliESDtrack *track2);
53
54 // Merge output objects (needed by PROOF)
55 virtual Long64_t Merge(TCollection* list);
56
57 // fill control histograms
58 void SetHistogramsOn(Bool_t fill=kTRUE) {fFillControlHisto = fill; }
59 Bool_t IsHistogramsOn() const {return fFillControlHisto; }
60
61private:
62 Float_t fMinEta; // min pseudorapidity limit
63 Float_t fMaxEta; // max pseudorapidity limit
64 Float_t fMinPhi; // min azimuthal angle (rad) limit
65 Float_t fMaxPhi; // max azimuthal angle (rad) limit
66 Float_t fMinPt; // min pt limit
67 Float_t fMaxPt; // max pt limit
68 Float_t fMaxFracSharedClust; // max fraction of track shared clusters
69
70 Bool_t fFillControlHisto; // flag to fill control histograms
71 THnSparseF *fControlHisto; //-> etasum:dphi:dpt:pt1:fracSharedClust1:qsum
72
73 AlidNdPtBackgroundCuts(const AlidNdPtBackgroundCuts&); // not implemented
74 AlidNdPtBackgroundCuts& operator=(const AlidNdPtBackgroundCuts&); // not implemented
75
76 ClassDef(AlidNdPtBackgroundCuts, 1)
77};
78
79#endif //