]>
Commit | Line | Data |
---|---|---|
7c3c85cd | 1 | //-*- Mode: C++ -*- |
2 | ||
3 | // $Id: AliHLTJETConeFinder.h $ | |
4 | ||
5 | #ifndef ALIHLTJETCONEFINDER_H | |
6 | #define ALIHLTJETCONEFINDER_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 AliHLTJETConeFinder.h | |
13 | @author Jochen Thaeder | |
14 | @date | |
15 | @brief Jet cone finder | |
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 "AliJetFinder.h" | |
25 | ||
6ce099ba | 26 | #include "AliHLTJets.h" |
7c3c85cd | 27 | #include "AliHLTLogging.h" |
7c3c85cd | 28 | |
6ce099ba | 29 | #include "AliHLTJETBase.h" |
7c3c85cd | 30 | #include "AliHLTJETConeGrid.h" |
31 | ||
32 | /** | |
33 | * @class AliHLTJETConeFinder | |
34 | * ConeFinder for jet finder | |
35 | * | |
36 | * <b>Usage in off-line</b><br> | |
37 | * * Initialization phase : | |
38 | * <pre>jetFinder->Init();</pre> | |
39 | * * Set the input event via the reader | |
40 | * <pre>jetReader->SetInputEvent( ... )</pre> | |
1f9fec4a | 41 | * * Process one event (contains reset per event) |
7c3c85cd | 42 | * <pre>jetFinder->ProcessEvent();</pre> |
1f9fec4a | 43 | * |
7c3c85cd | 44 | * <b>Usage in on-line</b><br> |
45 | * * Initialization phase : | |
46 | * <pre>jetFinder->Initialize();</pre> | |
7c3c85cd | 47 | * * Set the input event via the reader |
48 | * <pre>jetReader->SetInputEvent( ... )</pre> | |
1f9fec4a | 49 | * * Process one event |
50 | * * Fill grid (contains reset per event) | |
51 | * <pre>jetReader->FillGridXXX();</pre> | |
52 | * Where XXX is has to be replaced by MC, ESD or AOD, | |
53 | * depending, on the input object | |
54 | * * Process one event (contains reset per event) | |
55 | * <pre>jetFinder->ProcessConeEvent();</pre> | |
7c3c85cd | 56 | * |
57 | * @ingroup alihlt_jet_cone | |
58 | */ | |
59 | ||
60 | class AliHLTJETConeFinder : public AliJetFinder, public AliHLTLogging { | |
61 | ||
62 | public: | |
63 | ||
64 | /* | |
65 | * --------------------------------------------------------------------------------- | |
66 | * Constructor / Destructor | |
67 | * --------------------------------------------------------------------------------- | |
68 | */ | |
69 | ||
70 | /** standard constructor */ | |
71 | AliHLTJETConeFinder(); | |
72 | ||
73 | /** destructor */ | |
74 | virtual ~AliHLTJETConeFinder(); | |
75 | ||
76 | /* | |
77 | * --------------------------------------------------------------------------------- | |
78 | * Initialize | |
79 | * --------------------------------------------------------------------------------- | |
80 | */ | |
81 | ||
82 | /** Initialize the jet finder and the search grid | |
83 | * ONLY for use in off-line ... it inherits from a virtual void ?!?! | |
84 | */ | |
85 | void Init() { Initialize(); } | |
86 | ||
87 | /** Initialize the jet finder and the search grid | |
88 | * @return 0 on success, < 0 on failure | |
89 | */ | |
90 | Int_t Initialize(); | |
91 | ||
92 | /** Reset for next event */ | |
93 | void Reset(); | |
94 | ||
95 | /* | |
96 | * --------------------------------------------------------------------------------- | |
97 | * Setter | |
98 | * --------------------------------------------------------------------------------- | |
99 | */ | |
100 | ||
101 | /** Set ptr to output container */ | |
6ce099ba | 102 | void SetOutputJets( AliHLTJets* jets ) { fJets = jets; } |
7c3c85cd | 103 | |
104 | /* | |
105 | * --------------------------------------------------------------------------------- | |
106 | * Process | |
107 | * --------------------------------------------------------------------------------- | |
108 | */ | |
109 | ||
110 | /** Process one event | |
111 | * ONLY for use in off-line ... it inherits from a virtual Bool_t | |
112 | * @return kTRUE on success, kFALSE on failure | |
113 | */ | |
114 | Bool_t ProcessEvent(); | |
115 | ||
116 | /** Process one event | |
117 | * @return kTRUE on success, kFALSE on failure | |
118 | */ | |
1f9fec4a | 119 | Bool_t ProcessHLTEvent(); |
7c3c85cd | 120 | |
121 | /////////////////////////////////////////////////////////////////////////////////// | |
122 | ||
123 | private: | |
124 | ||
125 | /** copy constructor prohibited */ | |
126 | AliHLTJETConeFinder (const AliHLTJETConeFinder&); | |
127 | ||
128 | /** assignment operator prohibited */ | |
129 | AliHLTJETConeFinder& operator= (const AliHLTJETConeFinder&); | |
130 | ||
131 | /* | |
132 | * --------------------------------------------------------------------------------- | |
133 | * Process - private | |
134 | * --------------------------------------------------------------------------------- | |
135 | */ | |
136 | ||
137 | /** Sort seed descending in pt | |
138 | * if header::fUseLeading only is set, keep only seed with highest pt | |
139 | * @return 0 on success, < 0 on failure | |
140 | */ | |
141 | Int_t FindConeLeading(); | |
142 | ||
143 | /** Find jets in one event | |
144 | * @return 0 on success, < 0 on failure | |
145 | */ | |
146 | Int_t FindConeJets(); | |
147 | ||
148 | /** Fill jets in output container and apply cuts | |
149 | * @return 0 on success, < 0 on failure | |
150 | */ | |
151 | Int_t FillConeJets(); | |
152 | ||
153 | /* | |
154 | * --------------------------------------------------------------------------------- | |
155 | * Members - private | |
156 | * --------------------------------------------------------------------------------- | |
157 | */ | |
158 | ||
159 | /** Grid for cone finder */ | |
160 | AliHLTJETConeGrid *fGrid; //! transient | |
161 | ||
1f9fec4a | 162 | /** Container of AliAODJets */ |
6ce099ba | 163 | AliHLTJets *fJets; //! transient |
7c3c85cd | 164 | |
165 | ClassDef(AliHLTJETConeFinder, 1) | |
166 | ||
167 | }; | |
168 | #endif | |
169 |