]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG3/dielectron/AliDielectronPairLegCuts.h
Adding Id to PWG3 classes for better tracking of the coverity defect fixes (Ivana)
[u/mrichter/AliRoot.git] / PWG3 / dielectron / AliDielectronPairLegCuts.h
1 #ifndef ALIDIELECTRONPAIRLEGCUTS_H
2 #define ALIDIELECTRONPAIRLEGCUTS_H
3
4 /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */ 
8
9 //#############################################################
10 //#                                                           # 
11 //#         Class AliDielectronPairLegCuts                    #
12 //#         Manage Cuts on the legs of the pair               #
13 //#                                                           #
14 //#  Authors:                                                 #
15 //#   Anton     Andronic, GSI / A.Andronic@gsi.de             #
16 //#   Ionut C.  Arsene,   GSI / I.C.Arsene@gsi.de             #
17 //#   Julian    Book,     Uni Ffm / Julian.Book@cern.ch       #
18 //#   Frederick Kramer,   Uni Ffm, / Frederick.Kramer@cern.ch #
19 //#   Magnus    Mager,    CERN / Magnus.Mager@cern.ch         #
20 //#   WooJin J. Park,     GSI / W.J.Park@gsi.de               #
21 //#   Jens      Wiechula, Uni HD / Jens.Wiechula@cern.ch      #
22 //#                                                           #
23 //#############################################################
24
25 #include <AliAnalysisFilter.h>
26
27 #include <AliAnalysisCuts.h>
28
29 class AliDielectronPairLegCuts : public AliAnalysisCuts {
30 public:
31   enum CutType { kBothLegs=0, kAnyLeg, kMixLegs };
32
33   AliDielectronPairLegCuts();
34   AliDielectronPairLegCuts(const char* name, const char* title);
35   virtual ~AliDielectronPairLegCuts() {;}
36   //TODO: make copy constructor and assignment operator public
37   //      and implement them
38   
39   //
40   //AliAnalysisCuts interface
41   //
42   virtual Bool_t IsSelected(TObject* track);
43   virtual Bool_t IsSelected(TList*   /* list */ ) {return kFALSE;}
44 //   virtual Long64_t Merge(TCollection* /* list */)      { return 0; }
45
46   AliAnalysisFilter& GetLeg1Filter() { return fFilterLeg1; }
47   AliAnalysisFilter& GetLeg2Filter() { return fFilterLeg2; }
48
49   void SetCutType(CutType type) {fCutType=type;}
50 private:
51   AliAnalysisFilter fFilterLeg1;     // Analysis Filter for leg1
52   AliAnalysisFilter fFilterLeg2;     // Analysis Filter for leg2
53
54   CutType fCutType;                  // Type of the cut
55
56   AliDielectronPairLegCuts(const AliDielectronPairLegCuts &c);
57   AliDielectronPairLegCuts &operator=(const AliDielectronPairLegCuts &c);
58   
59   ClassDef(AliDielectronPairLegCuts,1)         //Cut class providing cuts for both legs of a pair
60 };
61
62 #endif