]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/FEMTOSCOPY/AliFemto/AliFemtoV0TrackPairCut.h
update in Kaon Femto train
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemto / AliFemtoV0TrackPairCut.h
CommitLineData
973a91f8 1/////////////////////////////////////////////////////////////////////////////
2// //
3// AliFemtoShareQualityPairCut - a pair cut which checks for some pair //
4// qualities that attempt to identify slit/doubly reconstructed tracks //
5// //
6/////////////////////////////////////////////////////////////////////////////
7/***************************************************************************
8 *
9 * $Id: AliFemtoShareQualityPairCut.h 24360 2008-03-10 09:48:27Z akisiel $
10 *
11 * Author: Adam Kisiel, Ohio State University, kisiel@mps.ohio-state.edu
12 ***************************************************************************
13 *
14 * Description: part of STAR HBT Framework: AliFemtoMaker package
15 * a cut to remove "shared" and "split" pairs
16 *
17 ***************************************************************************
18 *
19 *
20 **************************************************************************/
21
22
23#ifndef ALIFEMTOV0TRACKPAIRCUT_H
24#define ALIFEMTOV0TRACKPAIRCUT_H
25
26// do I need these lines ?
27//#ifndef StMaker_H
28//#include "StMaker.h"
29//#endif
30
31#include "AliFemtoPairCut.h"
32
33class AliFemtoV0TrackPairCut : public AliFemtoPairCut{
34public:
ce7b3d98 35 enum ParticleType {kLambda=0, kAntiLambda=1, kProton=2, kAntiProton=3};
36 typedef enum ParticleType AliFemtoParticleType;
973a91f8 37 AliFemtoV0TrackPairCut();
38 AliFemtoV0TrackPairCut(const AliFemtoV0TrackPairCut& cut);
39 virtual ~AliFemtoV0TrackPairCut();
1ae130d9 40 AliFemtoV0TrackPairCut& operator=(const AliFemtoV0TrackPairCut& cut);
973a91f8 41
42 virtual bool Pass(const AliFemtoPair* pair);
43 virtual AliFemtoString Report();
44 virtual TList *ListSettings();
45 virtual AliFemtoPairCut* Clone();
46 void SetV0Max(Double_t aAliFemtoV0Max);
47 Double_t GetAliFemtoV0Max() const;
48 void SetRemoveSameLabel(Bool_t aRemove);
49 void SetTPCOnly(Bool_t tpconly);
50 void SetShareQualityMax(Double_t aShareQualityMax);
51 void SetShareFractionMax(Double_t aShareFractionMax);
1ae130d9 52 void SetTPCEntranceSepMinimum(double dtpc);
53 void SetTPCExitSepMinimum(double dtpc);
54 void SetDataType(AliFemtoDataType type);
ce7b3d98 55 void SetKstarCut(double kstar, AliFemtoParticleType firstParticle, AliFemtoParticleType secondParticle);
6691ea4f 56 void SetMinAvgSeparation(int type, double minSep);
1ae130d9 57
973a91f8 58 protected:
59 long fNPairsPassed; // Number of pairs consideered that passed the cut
60 long fNPairsFailed; // Number of pairs consideered that failed the cut
61
62 private:
63 Double_t fV0Max; // Maximum allowed pair quality
64 Double_t fShareQualityMax;
65 Double_t fShareFractionMax; // Maximum allowed share fraction
66 Bool_t fRemoveSameLabel; // If 1 pairs with two tracks with the same label will be removed
67 Bool_t fTrackTPCOnly;
68
1ae130d9 69 AliFemtoDataType fDataType; //Use ESD / AOD / Kinematics.
70 Double_t fDTPCMin; // Minimum allowed pair nominal separation at the entrance to the TPC
71 Double_t fDTPCExitMin; // Minimum allowed pair nominal separation at the exit of the TPC
72
ce7b3d98 73 double fKstarCut; //do we want the K star cut, if yes (>0) then it is the minimum value of k*
74 AliFemtoParticleType fFirstParticleType; //for kstar - first particle type (V0 type)
75 AliFemtoParticleType fSecondParticleType; //for kstar - second particle type (primary track)
6691ea4f 76 double fMinAvgSepTrackPos;
77 double fMinAvgSepTrackNeg;
973a91f8 78
79#ifdef __ROOT__
80 ClassDef(AliFemtoV0TrackPairCut, 0)
81#endif
82};
83
84inline AliFemtoV0TrackPairCut::AliFemtoV0TrackPairCut(const AliFemtoV0TrackPairCut& c) :
85 AliFemtoPairCut(c),
86 fNPairsPassed(0),
87 fNPairsFailed(0),
88 fV0Max(1.0),
89 fShareQualityMax(1.0),
90 fShareFractionMax(1.0),
91 fRemoveSameLabel(0),
1ae130d9 92 fTrackTPCOnly(0),
93 fDataType(kAOD),
94 fDTPCMin(0),
ce7b3d98 95 fDTPCExitMin(0),
96 fKstarCut(0),
97 fFirstParticleType(kLambda),
6691ea4f 98 fSecondParticleType(kProton),
99 fMinAvgSepTrackPos(0),
100 fMinAvgSepTrackNeg(0)
101
973a91f8 102{ /* no-op */ }
103
104inline AliFemtoPairCut* AliFemtoV0TrackPairCut::Clone() { AliFemtoV0TrackPairCut* c = new AliFemtoV0TrackPairCut(*this); return c;}
105
106#endif