]>
Commit | Line | Data |
---|---|---|
dfcc2025 | 1 | #ifndef ALISELECTNONHFE_H |
2 | #define ALISELECTNONHFE_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | //////////////////////////////////////////////////////////////////////// | |
8 | // // | |
7edfba87 | 9 | // Class for the Selection of Non-Heavy-Flavour-Electrons // |
dfcc2025 | 10 | // // |
11 | // Author: Elienos Pereira de Oliveira Filho // | |
7edfba87 | 12 | // (epereira@cern.ch) // |
13 | // University of São Paulo // | |
dfcc2025 | 14 | // // |
15 | //////////////////////////////////////////////////////////////////////// | |
16 | ||
17 | #ifndef ROOT_TNamed | |
18 | #include <TNamed.h> | |
19 | #endif | |
20 | ||
21 | class TH1F; | |
22 | class TH2F; | |
7edfba87 | 23 | class AliVEvent; |
24 | class AliVParticle; | |
dfcc2025 | 25 | class AliESDtrackCuts; |
70448e3b | 26 | class AliPIDResponse; |
dfcc2025 | 27 | |
dfcc2025 | 28 | class AliSelectNonHFE : public TNamed { |
29 | public: | |
30 | AliSelectNonHFE(); | |
31 | AliSelectNonHFE(const char *name, const Char_t *title); | |
32 | virtual ~AliSelectNonHFE(); | |
33 | Int_t GetNLS() const {return fNLS;}; | |
34 | Int_t GetNULS() const {return fNULS;}; | |
35 | Int_t* GetPartnersLS() const {return fLSPartner;}; | |
36 | Int_t* GetPartnersULS() const {return fULSPartner;}; | |
37 | Bool_t IsLS() const {return fIsLS;}; | |
38 | Bool_t IsULS() const {return fIsULS;}; | |
7edfba87 | 39 | void FindNonHFE(Int_t iTrack1, AliVParticle *Vtrack1, AliVEvent *fVevent); |
dfcc2025 | 40 | void SetAlgorithm(TString Algorithm) {fAlgorithm = Algorithm;}; |
a6f21076 | 41 | void SetAdditionalCuts(Double_t PtMin, Int_t TpcNcls) {fPtMin = PtMin; fTpcNcls = TpcNcls; fHasPtCut=kTRUE; }; |
7edfba87 | 42 | void SetAODanalysis(Bool_t IsAOD) {fIsAOD = IsAOD;}; |
dfcc2025 | 43 | void SetChi2OverNDFCut(Double_t Chi2OverNDFCut) {fChi2OverNDFCut = Chi2OverNDFCut;}; |
44 | void SetDCACut(Double_t dcaCut) {fdcaCut = dcaCut;}; | |
45 | void SetHistAngleBack(TH1F *HistAngleBack) {fHistAngleBack = HistAngleBack;}; | |
46 | void SetHistAngle(TH1F *HistAngle) {fHistAngle = HistAngle;}; | |
47 | void SetHistDCABack(TH1F *HistDCABack) {fHistDCABack = HistDCABack;}; | |
48 | void SetHistDCA(TH1F *HistDCA) {fHistDCA = HistDCA;}; | |
49 | void SetHistMassBack(TH1F *HistMassBack) {fHistMassBack = HistMassBack;}; | |
50 | void SetHistMass(TH1F *HistMass) {fHistMass = HistMass;}; | |
51 | void SetInvariantMassCut(Double_t MassCut) {fMassCut = MassCut;}; | |
52 | void SetOpeningAngleCut(Double_t AngleCut) {fAngleCut = AngleCut;}; | |
70448e3b | 53 | void SetPIDresponse(AliPIDResponse* PIDResponse) {fPIDResponse = PIDResponse;}; |
54 | ||
7edfba87 | 55 | void SetTrackCuts(Double_t TPCnSigmaMin, Double_t TPCnSigmaMax) |
70448e3b | 56 | { |
57 | fTPCnSigmaMin = TPCnSigmaMin; | |
58 | fTPCnSigmaMax = TPCnSigmaMax; | |
70448e3b | 59 | }; |
60 | ||
7edfba87 | 61 | void SetTrackCuts(Double_t TPCnSigmaMin, Double_t TPCnSigmaMax, AliESDtrackCuts* TrackCuts) |
70448e3b | 62 | { |
63 | fTPCnSigmaMin = TPCnSigmaMin; | |
64 | fTPCnSigmaMax = TPCnSigmaMax; | |
70448e3b | 65 | fTrackCuts = TrackCuts; |
66 | }; | |
dfcc2025 | 67 | |
68 | private: | |
69 | AliESDtrackCuts *fTrackCuts; //! Track quality | |
7edfba87 | 70 | TString fAlgorithm; //Algorithm choice: "MA" (Manual Algorithm) or "KF" (Kalman Filter Algorithm) |
71 | Double_t fAngleCut; //Maximum opening angle between the tracks | |
72 | Double_t fdcaCut; //Maximum dca between the tracks | |
73 | Double_t fTPCnSigmaMin; //Minimum partner TPCnSigma value | |
70448e3b | 74 | Double_t fTPCnSigmaMax; //Maximum partner TPCnSigma value |
7edfba87 | 75 | Double_t fMassCut; //Maximum Invariant Mass Value for Non-HF-Electrons |
dfcc2025 | 76 | Double_t fChi2OverNDFCut; //Maximum value of Chi2 over NDF in the case of KF Algorithm |
a6f21076 | 77 | Double_t fPtMin; //Minimum pT value for the associated electrons |
7edfba87 | 78 | Bool_t fIsLS; //Unlike signal pairs Flag |
79 | Bool_t fIsULS; //like signal pairs Flag | |
80 | Bool_t fIsAOD; //Flag for AOD analysis | |
a6f21076 | 81 | Bool_t fHasPtCut; //Flag for additional pT cut |
7edfba87 | 82 | Int_t fNLS; //Number of Unlike signal pairs |
83 | Int_t fNULS; //Number of like signal pairs | |
a6f21076 | 84 | Int_t fTpcNcls; //Minimum Number of clusters in the TPC |
dfcc2025 | 85 | Int_t *fLSPartner; //! Pointer for the LS partners index |
86 | Int_t *fULSPartner; //! Pointer for the ULS partners index | |
7edfba87 | 87 | TH1F *fHistMass; //! Invariant mass histogram for Unlike sign pairs |
dfcc2025 | 88 | TH1F *fHistMassBack; //! Invariant mass histogram for like sign pairs |
7edfba87 | 89 | TH1F *fHistDCA; //! DCA histogram for Unlike sign pairs |
dfcc2025 | 90 | TH1F *fHistDCABack; //! DCA histogram for like sign pairs |
91 | TH1F *fHistAngle; //! Opening Angle histogram for Unlike sign pairs | |
92 | TH1F *fHistAngleBack; //! Opening Angle histogram for like sign pairs | |
7edfba87 | 93 | AliPIDResponse *fPIDResponse; //! PID response object |
dfcc2025 | 94 | |
95 | AliSelectNonHFE(const AliSelectNonHFE&); // not implemented | |
96 | AliSelectNonHFE& operator=(const AliSelectNonHFE&); // not implemented | |
97 | ||
98 | ClassDef(AliSelectNonHFE, 1); //!example of analysis | |
99 | }; | |
100 | ||
101 | #endif |