ROOT logo
/////////////////////////////////////////////////////////////////////////////
//                                                                         //
// AliFemtoShareQualityPairCut - a pair cut which checks for some pair     //
// qualities that attempt to identify slit/doubly reconstructed tracks     //
//                                                                         //
/////////////////////////////////////////////////////////////////////////////
/***************************************************************************
 *
 * $Id$
 *
 * Author: Adam Kisiel, Ohio State University, kisiel@mps.ohio-state.edu
 ***************************************************************************
 *
 * Description: part of STAR HBT Framework: AliFemtoMaker package
 *   a cut to remove "shared" and "split" pairs
 *
 ***************************************************************************
 *
 *
 **************************************************************************/


#ifndef ALIFEMTOSHAREQUALITYPAIRCUT_H
#define ALIFEMTOSHAREQUALITYPAIRCUT_H

// do I need these lines ?
//#ifndef StMaker_H
//#include "StMaker.h"
//#endif

#include "AliFemtoPairCut.h"

class AliFemtoShareQualityPairCut : public AliFemtoPairCut{
public:
  AliFemtoShareQualityPairCut();
  AliFemtoShareQualityPairCut(const AliFemtoShareQualityPairCut& cut);
  virtual ~AliFemtoShareQualityPairCut();
  AliFemtoShareQualityPairCut& operator=(const AliFemtoShareQualityPairCut& cut);
  
  virtual bool Pass(const AliFemtoPair* pair);
  virtual AliFemtoString Report();
  virtual TList *ListSettings();
  virtual AliFemtoPairCut* Clone();
  void SetShareQualityMax(Double_t aAliFemtoShareQualityMax);
  Double_t GetAliFemtoShareQualityMax() const;
  void SetShareFractionMax(Double_t aAliFemtoShareFractionMax);
  Double_t GetAliFemtoShareFractionMax() const;
  void     SetRemoveSameLabel(Bool_t aRemove);
  
 protected:
  long fNPairsPassed;          // Number of pairs consideered that passed the cut 
  long fNPairsFailed;          // Number of pairs consideered that failed the cut

 private:
  Double_t fShareQualityMax;   // Maximum allowed pair quality
  Double_t fShareFractionMax;  // Maximum allowed share fraction
  Bool_t   fRemoveSameLabel;   // If 1 pairs with two tracks with the same label will be removed 


#ifdef __ROOT__
  ClassDef(AliFemtoShareQualityPairCut, 0)
#endif
};

inline AliFemtoShareQualityPairCut::AliFemtoShareQualityPairCut(const AliFemtoShareQualityPairCut& c) : 
  AliFemtoPairCut(c),
  fNPairsPassed(0),
  fNPairsFailed(0),
  fShareQualityMax(1.0),
  fShareFractionMax(1.0),
  fRemoveSameLabel(0)// no cut
{ /* no-op */ }

inline AliFemtoPairCut* AliFemtoShareQualityPairCut::Clone() { AliFemtoShareQualityPairCut* c = new AliFemtoShareQualityPairCut(*this); return c;}

#endif
 AliFemtoShareQualityPairCut.h:1
 AliFemtoShareQualityPairCut.h:2
 AliFemtoShareQualityPairCut.h:3
 AliFemtoShareQualityPairCut.h:4
 AliFemtoShareQualityPairCut.h:5
 AliFemtoShareQualityPairCut.h:6
 AliFemtoShareQualityPairCut.h:7
 AliFemtoShareQualityPairCut.h:8
 AliFemtoShareQualityPairCut.h:9
 AliFemtoShareQualityPairCut.h:10
 AliFemtoShareQualityPairCut.h:11
 AliFemtoShareQualityPairCut.h:12
 AliFemtoShareQualityPairCut.h:13
 AliFemtoShareQualityPairCut.h:14
 AliFemtoShareQualityPairCut.h:15
 AliFemtoShareQualityPairCut.h:16
 AliFemtoShareQualityPairCut.h:17
 AliFemtoShareQualityPairCut.h:18
 AliFemtoShareQualityPairCut.h:19
 AliFemtoShareQualityPairCut.h:20
 AliFemtoShareQualityPairCut.h:21
 AliFemtoShareQualityPairCut.h:22
 AliFemtoShareQualityPairCut.h:23
 AliFemtoShareQualityPairCut.h:24
 AliFemtoShareQualityPairCut.h:25
 AliFemtoShareQualityPairCut.h:26
 AliFemtoShareQualityPairCut.h:27
 AliFemtoShareQualityPairCut.h:28
 AliFemtoShareQualityPairCut.h:29
 AliFemtoShareQualityPairCut.h:30
 AliFemtoShareQualityPairCut.h:31
 AliFemtoShareQualityPairCut.h:32
 AliFemtoShareQualityPairCut.h:33
 AliFemtoShareQualityPairCut.h:34
 AliFemtoShareQualityPairCut.h:35
 AliFemtoShareQualityPairCut.h:36
 AliFemtoShareQualityPairCut.h:37
 AliFemtoShareQualityPairCut.h:38
 AliFemtoShareQualityPairCut.h:39
 AliFemtoShareQualityPairCut.h:40
 AliFemtoShareQualityPairCut.h:41
 AliFemtoShareQualityPairCut.h:42
 AliFemtoShareQualityPairCut.h:43
 AliFemtoShareQualityPairCut.h:44
 AliFemtoShareQualityPairCut.h:45
 AliFemtoShareQualityPairCut.h:46
 AliFemtoShareQualityPairCut.h:47
 AliFemtoShareQualityPairCut.h:48
 AliFemtoShareQualityPairCut.h:49
 AliFemtoShareQualityPairCut.h:50
 AliFemtoShareQualityPairCut.h:51
 AliFemtoShareQualityPairCut.h:52
 AliFemtoShareQualityPairCut.h:53
 AliFemtoShareQualityPairCut.h:54
 AliFemtoShareQualityPairCut.h:55
 AliFemtoShareQualityPairCut.h:56
 AliFemtoShareQualityPairCut.h:57
 AliFemtoShareQualityPairCut.h:58
 AliFemtoShareQualityPairCut.h:59
 AliFemtoShareQualityPairCut.h:60
 AliFemtoShareQualityPairCut.h:61
 AliFemtoShareQualityPairCut.h:62
 AliFemtoShareQualityPairCut.h:63
 AliFemtoShareQualityPairCut.h:64
 AliFemtoShareQualityPairCut.h:65
 AliFemtoShareQualityPairCut.h:66
 AliFemtoShareQualityPairCut.h:67
 AliFemtoShareQualityPairCut.h:68
 AliFemtoShareQualityPairCut.h:69
 AliFemtoShareQualityPairCut.h:70
 AliFemtoShareQualityPairCut.h:71
 AliFemtoShareQualityPairCut.h:72
 AliFemtoShareQualityPairCut.h:73
 AliFemtoShareQualityPairCut.h:74
 AliFemtoShareQualityPairCut.h:75
 AliFemtoShareQualityPairCut.h:76