]>
Commit | Line | Data |
---|---|---|
7488b3de | 1 | #ifndef ALIJETCORRELSELECTOR_H |
2 | #define ALIJETCORRELSELECTOR_H | |
c97d2ae1 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | /* $Id: $ */ | |
6 | ||
7 | //__________________________________________ | |
e1b97289 | 8 | // Class for user selections. |
9 | // Object is created by ConfigJetCorrel.C macro and passed to | |
10 | // AddTaskJetCorrel.C running macro via the main class AliAnalysisTaskJetCorrel | |
c97d2ae1 | 11 | //-- Author: Paul Constantin |
12 | ||
13 | #include "CorrelTrack.h" | |
14 | #include "CorrelKFTrack.h" | |
15 | #include "CorrelRecoParent.h" | |
16 | #include "CorrelList.h" | |
17 | ||
e1b97289 | 18 | class AliJetCorrelSelector : public TObject { |
c97d2ae1 | 19 | |
e1b97289 | 20 | public: |
21 | AliJetCorrelSelector(); | |
22 | ~AliJetCorrelSelector(); | |
23 | ||
24 | // Selection getters: | |
7488b3de | 25 | UInt_t PoolDepth() const {return fPoolDepth;} |
26 | UInt_t NoOfCorrel() const {return fNumCorrel;} | |
27 | UInt_t* CorrelTypes() const {return fCorrelType;} | |
28 | UInt_t NoOfBins(BinType_t cType) const {return fNumBins[cType]-1;} | |
29 | Float_t BinBorder(BinType_t cType, UInt_t ii) const; | |
30 | Float_t MinLowBin(BinType_t cType) const {return fBinning[cType][0];} | |
31 | Float_t MaxHighBin(BinType_t cType) const {return fBinning[cType][fNumBins[cType]-1];} | |
32 | Int_t GetBin(BinType_t cType, Float_t val) const; | |
33 | Bool_t GenQA() const {return fGenQA;} | |
34 | Bool_t UseAliKF() const {return fUseAliKF;} | |
35 | UInt_t DPhiNumBins() const {return fDPhiNumBins;} | |
36 | UInt_t DEtaNumBins() const {return fDEtaNumBins;} | |
37 | void Show() const; | |
e1b97289 | 38 | // Selection Setters: |
39 | void SetPoolDepth(UInt_t v) {fPoolDepth=v;} | |
40 | void SetCorrelTypes(UInt_t s, UInt_t * const v); | |
41 | void SetBinningCentr(UInt_t s, Float_t * const v); | |
42 | void SetBinningZvert(UInt_t s, Float_t * const v); | |
7488b3de | 43 | void SetBinningTrigg(UInt_t s, Float_t * const v); |
44 | void SetBinningAssoc(UInt_t s, Float_t * const v); | |
e1b97289 | 45 | void SetTriggers(UInt_t s, TString * const v); |
46 | void SetITSRefit(Bool_t v) {fITSRefit=v;} | |
47 | void SetTPCRefit(Bool_t v) {fTPCRefit=v;} | |
48 | void SetTRDRefit(Bool_t v) {fTRDRefit=v;} | |
49 | void SetMaxEta(Float_t v) {fMaxEta=v;} | |
50 | void SetMaxITSChi2(Float_t v) {fMaxITSChi2=v;} | |
51 | void SetMaxTPCChi2(Float_t v) {fMaxTPCChi2=v;} | |
52 | void SetMinNClusITS(UInt_t v) {fMinNClusITS=v;} | |
53 | void SetMinNClusTPC(UInt_t v) {fMinNClusTPC=v;} | |
54 | void SetMaxNsigmaVtx(Float_t v) {fMaxNsigmaVtx=v;} | |
55 | void SetMaxTrkVtx(Float_t v) {fMaxTrkVtx=v;} | |
56 | void SetRejectKinkChild(Bool_t v) {fRejectKinkChild=v;} | |
57 | void SetQA(Bool_t v) {fGenQA=v;} | |
58 | void SetDPhiNumBins(UInt_t v) {fDPhiNumBins=v;} | |
59 | void SetDEtaNumBins(UInt_t v) {fDEtaNumBins=v;} | |
7488b3de | 60 | void SetTrkProximityCut(Float_t v) {fTrkMinProx=v;} |
e1b97289 | 61 | void SetUseAliKF(Bool_t v) {fUseAliKF=v;} |
62 | // Cutting methods: | |
7488b3de | 63 | Bool_t SelectedEvtTrigger(AliESDEvent * const jcESD) const; |
64 | Bool_t CloseTrackPair(Float_t dist) const; | |
65 | Bool_t LowQualityTrack(AliESDtrack* t) const; | |
66 | Bool_t PassPID(AliESDtrack* t, PartType_t pType) const; | |
67 | Float_t GetSigmaToVertex(AliESDtrack* trk) const; | |
68 | void GetPID(AliESDtrack* trk, Stat_t& fpid, Stat_t& fweight) const; | |
e1b97289 | 69 | |
70 | private: | |
71 | // Generic Selections: | |
72 | Bool_t fGenQA; // generate QA histos | |
73 | UInt_t fDPhiNumBins, fDEtaNumBins; // number of bins in DeltaPhi, DeltaEta histos | |
7488b3de | 74 | UInt_t fNumCorrel, fNumEvtTriggs, fPoolDepth; // number of correlations, event triggers, pool depth |
75 | UInt_t* fCorrelType; //! array of correlation types | |
76 | TString* fEvtTriggs; //! array of event triggers | |
77 | UInt_t fNumBins[4]; // number of bins: centr, zvert, trigg, assoc | |
78 | Float_t* fBinning[4]; //! bin margins: centr, zvert, trigg, assoc | |
e1b97289 | 79 | // Track Selections: |
80 | Bool_t fITSRefit, fTPCRefit, fTRDRefit, fRejectKinkChild; // on/off cuts | |
81 | Float_t fMaxEta; // single-particle eta cut | |
82 | Float_t fMaxNsigmaVtx; // track-primary vertex cut (sigma) | |
83 | Float_t fMaxTrkVtx; // track-primary vertex cut (value) | |
84 | Float_t fMaxITSChi2, fMaxTPCChi2; // ITS/TPC Chi2/cluster cut | |
85 | UInt_t fMinNClusITS, fMinNClusTPC; // ITS/TPC number of clusters cut | |
7488b3de | 86 | Float_t fTrkMinProx; // two-track proximity cut (dist at TPC entrance) |
e1b97289 | 87 | Bool_t fUseAliKF; // use AliKF or TLorentzVector for parent reconstruction |
88 | ||
89 | // disable (make private) copy constructor, and assignment operator: | |
90 | AliJetCorrelSelector(const AliJetCorrelSelector&); | |
91 | AliJetCorrelSelector& operator=(const AliJetCorrelSelector&); | |
92 | ||
7488b3de | 93 | ClassDef(AliJetCorrelSelector, 1); //AliJetCorrelSelector |
e1b97289 | 94 | }; |
c97d2ae1 | 95 | |
96 | #endif |