StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
adamsPairCut.h
1 /***************************************************************************
2  *
3  * $Id: adamsPairCut.h,v 1.1 2002/12/12 17:03:51 kisiel Exp $
4  *
5  * Author: KAdam Kisiel, Warsaw University of Technoogy, kisiel@if.pw.edu.pl
6  ***************************************************************************
7  *
8  * Description: part of STAR HBT Framework: StHbtMaker package
9  * Cuts on probability of a pair being e+e-, pi+pi- or K+K-
10  * using dEdx NSigma PID information
11  *
12  ***************************************************************************
13  *
14  *
15  **************************************************************************/
16 
17 
18 #ifndef adamsPairCut_hh
19 #define adamsPairCut_hh
20 
21 // do I need these lines ?
22 //#ifndef StMaker_H
23 //#include "StMaker.h"
24 //#endif
25 
26 #include <sstream>
27 
28 #include "Cut/HitMergingPairCut.h"
29 
31 public:
32  adamsPairCut();
33  adamsPairCut(const adamsPairCut&);
34  //~adamsPairCut();
35 
36  virtual bool Pass(const StHbtPair*);
37  virtual StHbtString Report();
38  adamsPairCut* Clone();
39  void setElSigma (double aElSigma);
40  void setPiSigma (double aPiSigma);
41  void setKSigma (double aKSigma);
42  void setElPairPIDMax (double aElPIDMax);
43  void setPiPairPIDMax (double aPiPIDMax);
44  void setKPairPIDMax (double aKPIDMax);
45  void SetPIDPThreshold(const float&);
46  std::ostringstream* finalReport() const;
47 
48 private:
49  double mElSigma;
50  double mPiSigma;
51  double mKSigma;
52 
53  double mElPIDMax;
54  double mPiPIDMax;
55  double mKPIDMax;
56 
57  float mPIDPThreshold;
58 #ifdef __ROOT__
59  ClassDef(adamsPairCut, 1)
60 #endif
61 };
62 
63 inline adamsPairCut::adamsPairCut(const adamsPairCut& c) : HitMergingPairCut(c) {
64  mNPairsPassed = 0;
65  mNPairsFailed = 0;
66 
67 }
68 inline adamsPairCut* adamsPairCut::Clone() { adamsPairCut* c = new adamsPairCut(*this); return c;}
69 
70 inline void adamsPairCut::setElSigma(double aElSigma){
71  mElSigma = aElSigma;
72 }
73 inline void adamsPairCut::setPiSigma(double aPiSigma){
74  mPiSigma = aPiSigma;
75 }
76 inline void adamsPairCut::setKSigma(double aKSigma){
77  mKSigma = aKSigma;
78 }
79 inline void adamsPairCut::setElPairPIDMax(double aElPIDMax){
80  mElPIDMax = aElPIDMax;
81 }
82 inline void adamsPairCut::setPiPairPIDMax(double aPiPIDMax){
83  mPiPIDMax = aPiPIDMax;
84 }
85 inline void adamsPairCut::setKPairPIDMax(double aKPIDMax){
86  mKPIDMax = aKPIDMax;
87 }
88 inline void adamsPairCut::SetPIDPThreshold(const float& pidpt){mPIDPThreshold = pidpt;}
89 #endif