]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/RESONANCES/AliRsnCutDaughterSigmaStar2010PP.h
Bug fix in cut settings for check with/without TRD
[u/mrichter/AliRoot.git] / PWGLF / RESONANCES / AliRsnCutDaughterSigmaStar2010PP.h
1 #ifndef ALIRSNCUTDAUGHTERSIGMASTAR2010PP_H
2 #define ALIRSNCUTDAUGHTERSIGMASTAR2010PP_H
3
4 //
5 // Cuts for selecting good pion candidates for Sigma* analysis
6 // with the data samples from pp runs in 2010.
7 // Applies track quality selection plus PID selection,
8 // with different tolerance ranges depending on the momentum.
9 //
10
11 #include "AliVTrack.h"
12 #include "AliRsnCut.h"
13 #include "AliRsnCutTrackQuality.h"
14
15 class AliRsnCutDaughterSigmaStar2010PP : public AliRsnCut {
16
17 public:
18
19    AliRsnCutDaughterSigmaStar2010PP(const char *name = "", AliPID::EParticleType pid = AliPID::kPion);
20    virtual ~AliRsnCutDaughterSigmaStar2010PP() { }
21
22    //void                   SetPID(AliPID::EParticleType type) {fPID = type;}
23    AliRsnCutTrackQuality *CutQuality()                       {return &fCutQuality;}
24    Bool_t                 MatchTOF(const AliVTrack *vtrack);
25    virtual Bool_t         IsSelected(TObject *obj);
26
27    void           SetPIDCut(Double_t value)                  {fPIDCut = value;}
28    void           SetMinTPCcluster(Int_t value)              {fMinTPCcluster = value;}
29    
30 private:
31
32    AliPID::EParticleType fPID;              // PID for track
33    AliRsnCutTrackQuality fCutQuality;       // track quality cut
34
35    ClassDef(AliRsnCutDaughterSigmaStar2010PP,2) // cut definitions for Sigma*
36
37 protected:
38
39    Double_t         fPIDCut;          // nsigmas for pions
40    Int_t            fMinTPCcluster;   // min allowed TPC cluster
41 };
42
43 //__________________________________________________________________________________________________
44 inline Bool_t AliRsnCutDaughterSigmaStar2010PP::MatchTOF(const AliVTrack *vtrack)
45 {
46 //
47 // Checks if the track has matched the TOF detector
48 //
49
50    if (!vtrack) {
51       AliWarning("NULL argument: impossible to check status");
52       return kFALSE;
53    }
54
55    if (!(vtrack->GetStatus() & AliESDtrack::kTOFout)) return kFALSE;
56    if (!(vtrack->GetStatus() & AliESDtrack::kTIME  )) return kFALSE;
57
58    return kTRUE;
59 }
60
61 #endif