Fix Coverity
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemtoUser / AliFemtoShareQualityPairCut.h
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$
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 ALIFEMTOSHAREQUALITYPAIRCUT_H
24 #define ALIFEMTOSHAREQUALITYPAIRCUT_H
25
26 // do I need these lines ?
27 //#ifndef StMaker_H
28 //#include "StMaker.h"
29 //#endif
30
31 #include "AliFemtoPairCut.h"
32
33 class AliFemtoShareQualityPairCut : public AliFemtoPairCut{
34 public:
35   AliFemtoShareQualityPairCut();
36   AliFemtoShareQualityPairCut(const AliFemtoShareQualityPairCut& cut);
37   virtual ~AliFemtoShareQualityPairCut();
38   AliFemtoShareQualityPairCut& operator=(const AliFemtoShareQualityPairCut& cut);
39   
40   virtual bool Pass(const AliFemtoPair* pair);
41   virtual AliFemtoString Report();
42   virtual TList *ListSettings();
43   virtual AliFemtoPairCut* Clone();
44   void SetShareQualityMax(Double_t aAliFemtoShareQualityMax);
45   Double_t GetAliFemtoShareQualityMax() const;
46   void SetShareFractionMax(Double_t aAliFemtoShareFractionMax);
47   Double_t GetAliFemtoShareFractionMax() const;
48   void     SetRemoveSameLabel(Bool_t aRemove);
49   
50  protected:
51   long fNPairsPassed;          // Number of pairs consideered that passed the cut 
52   long fNPairsFailed;          // Number of pairs consideered that failed the cut
53
54  private:
55   Double_t fShareQualityMax;   // Maximum allowed pair quality
56   Double_t fShareFractionMax;  // Maximum allowed share fraction
57   Bool_t   fRemoveSameLabel;   // If 1 pairs with two tracks with the same label will be removed 
58
59
60 #ifdef __ROOT__
61   ClassDef(AliFemtoShareQualityPairCut, 0)
62 #endif
63 };
64
65 inline AliFemtoShareQualityPairCut::AliFemtoShareQualityPairCut(const AliFemtoShareQualityPairCut& c) : 
66   AliFemtoPairCut(c),
67   fNPairsPassed(0),
68   fNPairsFailed(0),
69   fShareQualityMax(1.0),
70   fShareFractionMax(1.0),
71   fRemoveSameLabel(0)// no cut
72 { /* no-op */ }
73
74 inline AliFemtoPairCut* AliFemtoShareQualityPairCut::Clone() { AliFemtoShareQualityPairCut* c = new AliFemtoShareQualityPairCut(*this); return c;}
75
76 #endif