]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/vertexingHF/AliRDHFCutsLctoV0.h
Add histogram with fraction of energy in cluster with large time cells
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / AliRDHFCutsLctoV0.h
CommitLineData
a07ad8e0 1#ifndef ALIRDHFCUTSLCTOV0_H
2#define ALIRDHFCUTSLCTOV0_H
3/* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
27de2dfb 6/* $Id$ */
7
a07ad8e0 8//***********************************************************
9// Class AliRDHFCutsLctoV0
10// class for cuts on AOD reconstructed Lc-> V0 + bachelor
11//***********************************************************
12
992ba7d8 13#include "AliAODPidHF.h"
a07ad8e0 14#include "AliRDHFCuts.h"
15
16class AliRDHFCutsLctoV0 : public AliRDHFCuts
17{
18 public:
19
e7af8919 20 enum ELctoV0channel {
992ba7d8 21 kLcToK0Spr=0x0001,
22 kLcToLBarpi=0x0002,
23 kLcToLpi=0x0004
24 };
25
e7af8919 26 enum ELctoV0pidStrategy {
27 kTOFandTPC=0,
28 kTOForTPCveto=1
29 };
30
992ba7d8 31 AliRDHFCutsLctoV0(const char* name="CutsLctoV0", Short_t v0channel=0);
a07ad8e0 32
992ba7d8 33 virtual ~AliRDHFCutsLctoV0();
a07ad8e0 34
35 AliRDHFCutsLctoV0(const AliRDHFCutsLctoV0& source);
36 AliRDHFCutsLctoV0& operator=(const AliRDHFCutsLctoV0& source);
37
ed2d2734 38 using AliRDHFCuts::GetCutVarsForOpt;
a07ad8e0 39 virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters);
40
41 using AliRDHFCuts::IsSelected;
42 virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel);
43
992ba7d8 44 using AliRDHFCuts::IsSelectedPID;
45 virtual Int_t IsSelectedPID(AliAODRecoDecayHF* obj);
0dbd1d4f 46
47 Int_t IsSelectedSingleCut(TObject* obj, Int_t selectionLevel, Int_t cutIndex);
992ba7d8 48
49 Int_t CombinePIDCuts (Int_t returnvalue, Int_t returnvaluePID) const;
50
a07ad8e0 51 Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}
52 Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(7,iPtBin)] : 1.e6);}
53
e7af8919 54 void SetPidSelectionFlag(Int_t a) {fPidSelectionFlag=a;}
55 Int_t GetPidSelectionFlag() {return fPidSelectionFlag;}
56
57 virtual void SetStandardCutsPP2010();
58 virtual void SetStandardCutsPbPb2010();
59 virtual void SetStandardCutsPbPb2011();
60
992ba7d8 61 void SetPidV0pos(AliAODPidHF* pidV0pos) {
62 if (fPidHFV0pos) delete fPidHFV0pos;
63 fPidHFV0pos = new AliAODPidHF(*pidV0pos);
64 }
65 void SetPidV0neg(AliAODPidHF* pidV0neg) {
66 if (fPidHFV0neg) delete fPidHFV0neg;
67 fPidHFV0neg = new AliAODPidHF(*pidV0neg);
68 }
69
70 AliAODPidHF * GetPidV0pos() { return fPidHFV0pos; }
71 AliAODPidHF * GetPidV0neg() { return fPidHFV0neg; }
72
e7af8919 73 void AddTrackCutsV0daughters(AliESDtrackCuts* v0daug) {
74 fV0daughtersCuts = new AliESDtrackCuts(*v0daug);
75 }
76 virtual AliESDtrackCuts *GetTrackCutsV0daughters() const {return fV0daughtersCuts;}
77
a07ad8e0 78 protected:
79
e7af8919 80 void CheckPID(AliAODTrack *bachelor, AliAODTrack *v0Neg, AliAODTrack *v0Pos,
81 Bool_t &isBachelorID1, Bool_t &isV0NegID2, Bool_t &isV0PosID4);
82
992ba7d8 83 private:
84
e7af8919 85 Int_t fPidSelectionFlag;
992ba7d8 86 AliAODPidHF *fPidHFV0pos;
87 AliAODPidHF *fPidHFV0neg;
e7af8919 88 AliESDtrackCuts *fV0daughtersCuts; // cuts for v0 daughters (AOD converted to ESD on the flight!)
992ba7d8 89 //UShort_t fV0channel;
a07ad8e0 90
e7af8919 91 ClassDef(AliRDHFCutsLctoV0,3); // class for cuts on AOD reconstructed Lc->V0+bachelor
a07ad8e0 92};
93
94#endif