1c17810183007f8a55ee8b11b4c1d1027bd0c771
[u/mrichter/AliRoot.git] / HLT / JET / cone / AliHLTJETConeSeedCuts.h
1 //-*- Mode: C++ -*-
2
3 // $Id: AliHLTJETConeSeedCuts.h $
4
5 #ifndef ALIHLTJETCONESEEDCUTS_H
6 #define ALIHLTJETCONESEEDCUTS_H
7
8 /* This file is property of and copyright by the ALICE HLT Project        * 
9  * ALICE Experiment at CERN, All rights reserved.                         *
10  * See cxx source for full Copyright notice                               */
11
12 /** @file   AliHLTJETConeSeedCuts.h
13     @author Jochen Thaeder
14     @date   
15     @brief  Cuts for jet input tracks
16 */
17
18 // see below for class documentation
19 // or
20 // refer to README to build package
21 // or
22 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
23
24 #include "TParticle.h"
25
26 #include "AliAnalysisCuts.h"
27 #include "AliESDtrack.h"
28
29 #include "AliHLTLogging.h"
30 #include "AliHLTJETBase.h"
31
32 /**
33  * @class  AliHLTJETConeSeedCuts
34  * Cuts for seed MC tracks and ESD tracks 
35  *
36  * @ingroup alihlt_jet_cone
37  */
38
39 class AliHLTJETConeSeedCuts : public AliAnalysisCuts, public AliHLTLogging {
40   
41 public:
42
43   /*
44    * ---------------------------------------------------------------------------------
45    *                            Constructor / Destructor
46    * ---------------------------------------------------------------------------------
47    */
48
49   /** constructor */
50   AliHLTJETConeSeedCuts(const Char_t* name = "AliHLTJETConeSeedCuts", 
51                         const Char_t* title = "");
52
53   /** destructor */
54   virtual ~AliHLTJETConeSeedCuts();
55
56   /*
57    * ---------------------------------------------------------------------------------
58    *                                   Selection
59    * ---------------------------------------------------------------------------------
60    */
61   
62   /** Select track
63       @param obj esd track or particle
64       @return kTRUE if selected, kFALSE otherwise
65   */
66   Bool_t IsSelected( TObject* obj );
67
68   /** Select track
69       @param particle particle
70       @return kTRUE if selected, kFALSE otherwise
71   */
72   Bool_t IsSelected( TParticle* particle );
73
74   /** Select track
75       @param esdTrack esd track 
76       @return kTRUE if selected, kFALSE otherwise
77   */
78   Bool_t IsSelected( AliESDtrack* esdTrack );
79   
80   /** Select track
81       Not implemented
82       @return kTRUE 
83   */
84   Bool_t IsSelected( TList* /*list*/ ) { return kTRUE; }
85
86   /*
87    * ---------------------------------------------------------------------------------
88    *                                     Setter
89    * ---------------------------------------------------------------------------------
90    */
91   
92   /** Set cut on min pt */
93   void SetMinPt( Float_t f ) { fPtMin = f; }
94
95   /** Set cut on eta acceptance */
96   void SetEtaRange( Float_t etaMin, Float_t etaMax ) { fEtaMin = etaMin; fEtaMax = etaMax; }
97
98   /** Set cut on phi acceptance */
99   void SetPhiRange( Float_t phiMin, Float_t phiMax ) { fPhiMin = phiMin; fPhiMax = phiMax; }
100
101   ///////////////////////////////////////////////////////////////////////////////////
102
103 private:
104
105   /** copy constructor prohibited */
106   AliHLTJETConeSeedCuts (const AliHLTJETConeSeedCuts&);
107
108   /** assignment operator prohibited */
109   AliHLTJETConeSeedCuts& operator= (const AliHLTJETConeSeedCuts&);
110
111   /*
112    * ---------------------------------------------------------------------------------
113    *                             Members - private
114    * ---------------------------------------------------------------------------------
115    */
116
117   /** Minimum pt */
118   Float_t            fPtMin;                    // see above
119
120   /** Minimum eta */
121   Float_t            fEtaMin;                   // see above
122
123   /** Maximum eta */
124   Float_t            fEtaMax;                   // see above
125
126   /** Minimum phi */
127   Float_t            fPhiMin;                   // see above
128
129   /** Maximum phi */
130   Float_t            fPhiMax;                   // see above
131
132   ClassDef(AliHLTJETConeSeedCuts, 1)
133
134 };
135 #endif
136