]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/FEMTOSCOPY/AliFemtoUser/AliFemtoShareQualityQAPairCut.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemtoUser / AliFemtoShareQualityQAPairCut.h
CommitLineData
76ce4b5b 1/////////////////////////////////////////////////////////////////////////////
2// //
3// AliFemtoShareQualityQAPairCut - a pair cut which checks for some pair //
4// qualities that attempt to identify slit/doubly reconstructed tracks //
5// //
6/////////////////////////////////////////////////////////////////////////////
7/***************************************************************************
8 *
9 * $Id: AliFemtoShareQualityQAPairCut.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 AliFemtoShareQualityQAPairCut_H
24#define AliFemtoShareQualityQAPairCut_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 AliFemtoShareQualityQAPairCut : public AliFemtoPairCut{
34public:
35 AliFemtoShareQualityQAPairCut();
36 AliFemtoShareQualityQAPairCut(const AliFemtoShareQualityQAPairCut& cut);
37 virtual ~AliFemtoShareQualityQAPairCut();
38 AliFemtoShareQualityQAPairCut& operator=(const AliFemtoShareQualityQAPairCut& 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 void SetShareQualitymin(Double_t aAliFemtoShareQualitymin);
46 void SetShareQualityQASwitch(bool aSwitch);
47 void SetShareQualityQAExclusionZone(Double_t lo, Double_t hi);
48 Double_t GetAliFemtoShareQualityMax() const;
49 void SetShareFractionMax(Double_t aAliFemtoShareFractionMax);
50 void SetShareFractionmin(Double_t aAliFemtoShareFractionmin);
51 void SetShareFractionQASwitch(bool aSwitch);
52 void SetShareFractionQAExclusionZone(Double_t lo, Double_t hi);
53 Double_t GetAliFemtoShareFractionMax() const;
54 void SetRemoveSameLabel(Bool_t aRemove);
55
56 protected:
57 long fNPairsPassed; // Number of pairs consideered that passed the cut
58 long fNPairsFailed; // Number of pairs consideered that failed the cut
59
60 private:
61 Double_t fShareQualityMax; // Maximum allowed pair quality
62 Double_t fShareQualitymin; // Minimum allowed pair quality
63 Double_t fShareFractionMax; // Maximum allowed share fraction
64 Double_t fShareFractionmin; // Minimum allowed share fraction
65 Bool_t fRemoveSameLabel; // If 1 pairs with two tracks with the same label will be removed
66
67 bool fShareQualityQASwitch; // Turn on QA Exclusion Zone (true=on)
68 Double_t fShareQualityQAExclusionZone[2]; // Set Exclusion Zone limits
69 bool fShareFractionQASwitch; // Turn on QA Exclusion Zone (true=on)
70 Double_t fShareFractionQAExclusionZone[2]; // Set Exclusion Zone limits
71
72
73#ifdef __ROOT__
74 ClassDef(AliFemtoShareQualityQAPairCut, 0)
75#endif
76};
77
78inline AliFemtoShareQualityQAPairCut::AliFemtoShareQualityQAPairCut(const AliFemtoShareQualityQAPairCut& c) :
79 AliFemtoPairCut(c),
80 fNPairsPassed(0),
81 fNPairsFailed(0),
82 fShareQualityMax(1.0),
83 fShareQualitymin(-0.5),
84 fShareFractionMax(1.0),
85 fShareFractionmin(0.0),
86 fRemoveSameLabel(0),// no cut
87 fShareQualityQASwitch(0),
88 fShareFractionQASwitch(0)
89{
90 fShareQualityQASwitch = c.fShareQualityQASwitch;
91 fShareQualityQAExclusionZone[0] = c.fShareQualityQAExclusionZone[0];
92 fShareQualityQAExclusionZone[1] = c.fShareQualityQAExclusionZone[1];
93 fShareFractionQASwitch = c.fShareFractionQASwitch;
94 fShareFractionQAExclusionZone[0] = c.fShareFractionQAExclusionZone[0];
95 fShareFractionQAExclusionZone[1] = c.fShareFractionQAExclusionZone[1];
96}
97
98inline AliFemtoPairCut* AliFemtoShareQualityQAPairCut::Clone() { AliFemtoShareQualityQAPairCut* c = new AliFemtoShareQualityQAPairCut(*this); return c;}
99
100#endif