]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoShareQualityKTPairCut.cxx
Fix Coverity
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemtoUser / AliFemtoShareQualityKTPairCut.cxx
1 /////////////////////////////////////////////////////////////////////////////
2 //                                                                         //
3 // AliFemtoShareQualityKTPairCut - a pair cut which checks for some pair   //
4 // qualities that attempt to identify slit/doubly reconstructed tracks     //
5 // and selects pairs based on their transverse momentum kT                 //
6 //                                                                         //
7 /////////////////////////////////////////////////////////////////////////////
8 /***************************************************************************
9  *
10  * $Id: AliFemtoShareQualityKTPairCut.cxx,v 1.1.2.1 2007/10/19 13:35:33 akisiel Exp $
11  *
12  * Author: Adam Kisiel, Ohio State, kisiel@mps.ohio-state.edu
13  ***************************************************************************
14  *
15  * Description: part of STAR HBT Framework: AliFemtoMaker package
16  *   a cut to remove "shared" and "split" pairs
17  *
18  ***************************************************************************
19  *
20  *
21  **************************************************************************/
22
23 #include "AliFemtoShareQualityKTPairCut.h"
24 #include <string>
25 #include <cstdio>
26
27 #ifdef __ROOT__
28 ClassImp(AliFemtoShareQualityKTPairCut)
29 #endif
30
31 //__________________
32 AliFemtoShareQualityKTPairCut::AliFemtoShareQualityKTPairCut():
33   AliFemtoShareQualityPairCut(),
34   fKTMin(0),
35   fKTMax(1.0e6)
36 {
37 }
38 //__________________
39 AliFemtoShareQualityKTPairCut::AliFemtoShareQualityKTPairCut(const AliFemtoShareQualityKTPairCut& c) : 
40   AliFemtoShareQualityPairCut(c),
41   fKTMin(0),
42   fKTMax(1.0e6)
43
44   fKTMin = c.fKTMin;
45   fKTMax = c.fKTMax;
46 }
47
48 //__________________
49 AliFemtoShareQualityKTPairCut::~AliFemtoShareQualityKTPairCut(){
50   /* no-op */
51 }
52 //__________________
53 AliFemtoShareQualityKTPairCut& AliFemtoShareQualityKTPairCut::operator=(const AliFemtoShareQualityKTPairCut& c){
54   if (this != &c) {
55     AliFemtoPairCut::operator=(c);
56     
57     fKTMin = c.fKTMin;
58     fKTMax = c.fKTMax;
59   }
60
61   return *this;
62 }
63 //__________________
64 bool AliFemtoShareQualityKTPairCut::Pass(const AliFemtoPair* pair){
65   // Accept a pair base on its Kt and sharity and quality
66   bool temp = true;
67   
68   if (pair->KT() < fKTMin)
69     temp = false;
70
71   if (pair->KT() > fKTMax)
72     temp = false;
73
74   if (temp) {
75     temp = AliFemtoShareQualityPairCut::Pass(pair);
76   }
77   else
78     fNPairsFailed++;
79
80   return temp;
81 }
82 //__________________
83 AliFemtoString AliFemtoShareQualityKTPairCut::Report(){
84   // Prepare a report from execution
85   string stemp = "AliFemtoShareQuality Pair Cut - remove shared and split pairs\n";  char ctemp[100];
86   snprintf(ctemp , 100, "Accept pair with kT in range %f , %f",fKTMin,fKTMax);
87   stemp += ctemp;
88   snprintf(ctemp , 100, "Number of pairs which passed:\t%ld  Number which failed:\t%ld\n",fNPairsPassed,fNPairsFailed);
89   stemp += ctemp;
90   AliFemtoString returnThis = stemp;
91   return returnThis;}
92 //__________________
93
94 TList *AliFemtoShareQualityKTPairCut::ListSettings()
95 {
96   // return a list of settings in a writable form
97   TList *tListSetttings =  AliFemtoShareQualityPairCut::ListSettings();
98   char buf[200];
99   snprintf(buf, 200, "AliFemtoShareQualityKTPairCut.ktmax=%f", fKTMax);
100   tListSetttings->AddLast(new TObjString(buf));
101   snprintf(buf, 200, "AliFemtoShareQualityKTPairCut.ktmin=%f", fKTMin);
102   tListSetttings->AddLast(new TObjString(buf));
103
104   return tListSetttings;
105 }
106
107 void AliFemtoShareQualityKTPairCut::SetKTRange(double ktmin, double ktmax)
108 {
109   // Set the accepted kT range
110   fKTMin = ktmin;
111   fKTMax = ktmax;
112 }