]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGHF/hfe/AliHFEextraCuts.h
Cristiane pA
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliHFEextraCuts.h
index 55b7c18ce6b2b326c42961c3b0f430e39430f901..43919aeb7664286aca30d7ed94b0084bdf314b67 100644 (file)
 #include "AliCFCutBase.h"
 // #endif
 
+#ifndef ROOT_TArrayI
+#include <TArrayI.h>
+#endif
+
 class TList;
 
 class AliVEvent;
@@ -84,6 +88,7 @@ class AliHFEextraCuts: public AliCFCutBase{
     void SetMinNClustersTPCPID(Int_t minclusters) { SETBIT(fRequirements, kMinNClustersTPCPID); fMinNClustersTPCPID = minclusters; }
     void SetTOFPID(Bool_t tofPid) { tofPid ? SETBIT(fRequirements, kTOFPID) : CLRBIT(fRequirements, kTOFPID); }
     void SetTOFMISMATCH(Bool_t tofMismatch) { tofMismatch ? SETBIT(fRequirements, kTOFmismatch) : CLRBIT(fRequirements, kTOFmismatch); }
+    void SetMatchTOFLabel(Bool_t match) {match ? SETBIT(fRequirements, kTOFlabel) : CLRBIT(fRequirements, kTOFlabel); }
     void SetTPCPIDCleanUp(Bool_t tpcPIDCleanUp) { tpcPIDCleanUp ? SETBIT(fRequirements, kTPCPIDCleanUp) : CLRBIT(fRequirements, kTPCPIDCleanUp); }
     void SetMaxImpactParameterRpar(Bool_t maxImpactParameterRpar) { maxImpactParameterRpar ? SETBIT(fRequirements, kMaxImpactParameterRpar) : CLRBIT(fRequirements, kMaxImpactParameterRpar); }
     void SetFractionOfTPCSharedClusters(Double_t fractionShared) { fFractionTPCShared= fractionShared; SETBIT(fRequirements, kTPCfractionShared); }
@@ -107,6 +112,8 @@ class AliHFEextraCuts: public AliCFCutBase{
     Bool_t CheckITSstatus(Int_t itsStatus) const;
     Bool_t CheckITSpattern(const AliVTrack *const track) const;
     Bool_t IsKinkDaughter(AliVTrack *track);
+    Bool_t IsKinkMother(AliVTrack *track);
+
 
     void UnSetRejectKinkDaughter() { CLRBIT(fRequirements, kRejectKinkDaughter);}; 
     void UnSetRejectKinkMother() { CLRBIT(fRequirements, kRejectKinkMother);}; 
@@ -132,7 +139,7 @@ class AliHFEextraCuts: public AliCFCutBase{
     Float_t GetTPCsharedClustersRatio(AliVTrack *track);
     Float_t GetTRDchi(AliVTrack *track);
     Int_t GetITSNbOfcls(AliVTrack *track);
-    Bool_t IsKinkMother(AliVTrack *track);
+    Bool_t MatchTOFlabel(const AliVTrack * const track) const;
 
   private:
     typedef enum{
@@ -162,7 +169,8 @@ class AliHFEextraCuts: public AliCFCutBase{
       kITSpattern = 23,
       kMinHFEImpactParamRcharge = 24,
       kAODFilterBit=25,
-      kNcuts = 26
+      kTOFlabel=26,
+      kNcuts = 27
     } Cut_t;
     enum{
       //
@@ -194,6 +202,8 @@ class AliHFEextraCuts: public AliCFCutBase{
     Double_t fTOFsignalDz;            // TOF signal dz
     Double_t fMagField;               // Magnetic field
     Int_t    fAODFilterBit;           // Require AOD filter bit
+    TArrayI  fListKinkMothers;        // List of Kink Mothers (AOD analysis)
+    Int_t    fNumberKinkMothers;      // Number of Kink mothers
 
     Bool_t  fCheck;                     // check
     TList *fQAlist;                    //! Directory for QA histograms