Line data Source code
1 : //-*- Mode: C++ -*-
2 :
3 : // $Id: AliHLTJets.h $
4 :
5 : #ifndef ALIHLTJETS_H
6 : #define ALIHLTJETS_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 AliHLTJets.h
13 : @author Jochen Thaeder
14 : @date
15 : @brief Container holding produced Jets
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 "TClonesArray.h"
25 : #include "TString.h"
26 :
27 : #include "AliAODJet.h"
28 :
29 : #include "AliHLTLogging.h"
30 :
31 : /**
32 : * @class AliHLTJets
33 : * This class contains AliAODJets and comments
34 : *
35 : * @ingroup alihlt_jet
36 : */
37 :
38 : class AliHLTJets : public TObject, public AliHLTLogging {
39 : public:
40 :
41 : /*
42 : * ---------------------------------------------------------------------------------
43 : * Constructor / Destructor
44 : * ---------------------------------------------------------------------------------
45 : */
46 :
47 : /** Constructor */
48 : AliHLTJets();
49 :
50 : /** Destructor */
51 : ~AliHLTJets();
52 :
53 : /*
54 : * ---------------------------------------------------------------------------------
55 : * Initialize / Reset
56 : * ---------------------------------------------------------------------------------
57 : */
58 :
59 : /** Reset output array */
60 : void Reset();
61 :
62 : /** Reset output array */
63 : void ResetEvent();
64 :
65 : /*
66 : * ---------------------------------------------------------------------------------
67 : * Getter
68 : * ---------------------------------------------------------------------------------
69 : */
70 :
71 : /** Get Comment */
72 0 : TString GetComment() const { return fComment; }
73 :
74 : /** Get number of AliAODJets */
75 0 : Int_t GetNAODJets() const { return fNAODJets; }
76 :
77 : /** Get ptr to TClonesArray of AliAODJets */
78 0 : TClonesArray* GetAODJets() const { return fAODJets; }
79 :
80 : /** Get AliAODJet with idx iter */
81 : AliAODJet* GetJet( Int_t iter ) const;
82 :
83 : /** Get next AliAODJet
84 : * @return Ptr to Jet, NULL if no next jet is present
85 : */
86 : AliAODJet* NextJet();
87 :
88 : /*
89 : * ---------------------------------------------------------------------------------
90 : * Setter
91 : * ---------------------------------------------------------------------------------
92 : */
93 :
94 : /** Set Comment
95 : * @param comment arguments of jet finder
96 : */
97 0 : void SetComment( const Char_t* comment ) { fComment = TString(comment); }
98 :
99 : /** Set Comment
100 : * @param comment arguments of jet finder
101 : */
102 0 : void SetComment( TString comment ) { fComment = TString(comment); }
103 :
104 : /** Add Jet to Container
105 : * @param eta Jet eta
106 : * @param phi Jet phi
107 : * @param pt Jet pt
108 : * @param et Jet et
109 : */
110 : void AddJet( Float_t eta, Float_t phi, Float_t pt, Float_t et );
111 :
112 : /** Add Jet to Container
113 : * @param jet Ptr to AliAODJet
114 : */
115 : void AddJet( AliAODJet* jet );
116 :
117 : /*
118 : * ---------------------------------------------------------------------------------
119 : * Helper
120 : * ---------------------------------------------------------------------------------
121 : */
122 :
123 : /** Sort Jets with decreasing Et */
124 : void Sort();
125 :
126 : ///////////////////////////////////////////////////////////////////////////////////
127 :
128 : private:
129 :
130 : /** copy constructor prohibited */
131 : AliHLTJets(const AliHLTJets&);
132 :
133 : /** assignment operator prohibited */
134 : AliHLTJets& operator=(const AliHLTJets&);
135 :
136 : /*
137 : * ---------------------------------------------------------------------------------
138 : * Members - private
139 : * ---------------------------------------------------------------------------------
140 : */
141 :
142 : /** String containing comment */
143 : TString fComment; // see above
144 :
145 : /** Current Jet index */
146 : Int_t fCurrentJetIndex; //! transient
147 :
148 : /** Number of AOD jets */
149 : Int_t fNAODJets; // see above
150 :
151 : /** Array of AOD jets */
152 : TClonesArray *fAODJets; // see above
153 :
154 8 : ClassDef(AliHLTJets, 1)
155 : };
156 : #endif
|