StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StConeJetFinderBase.h
1 // -*- mode: c++;-*-
2 // $Id: StConeJetFinderBase.h,v 1.10 2008/05/08 05:02:13 tai Exp $
3 #ifndef STCONEJETFINDERBASE_H
4 #define STCONEJETFINDERBASE_H
5 
6 #include "StJetEtCellFactory.h"
7 
8 #include "TObject.h"
9 
10 
11 
12 //StJetFinder
13 #include "StJetFinder.h"
14 #include "Functors.h"
15 #include "StJetEtCell.h"
16 
17 class StJetSpliterMerger;
19 
20 #include "StConePars.h"
21 
22 #include "StEtaPhiGrid.h"
23 
30 
31 public:
32 
33  typedef StEtaPhiCell::CellList CellList;
34 
35  StConeJetFinderBase(const StConePars& pars);
36  virtual ~StConeJetFinderBase();
37 
38  void Init();
39 
40  virtual void findJets(JetList& protoJetList, const FourVecList& particleList) = 0;
41 
42 protected:
43 
45  friend struct PreJetInitializer;
46 
49 
50  virtual StJetEtCellFactory* makeCellFactory() = 0;
51 
52 
53  void initializeWorkCell(const StEtaPhiCell* other);
54 
55  void formCone();
56 
57 
58  const StProtoJet& collectCell(StEtaPhiCell* seed);
59 
60  StConePars mPars;
61 
63 
64 
65  StSpinJet::StEtaPhiGrid _cellGrid;
66 
67 
68  CellList generateToSearchListFrom(CellList& orderedList);
69 
70  // virtual void findProtoJets(CellList& toSearchList);
71 
72 private:
73 
74  // virtual void findJetAroundThis(StEtaPhiCell* cell) = 0;
75 
76  virtual bool shouldNotAddToTheCell(const StEtaPhiCell& theCell, const StEtaPhiCell& otherCell) const = 0;
77 
78 };
79 
80 #endif // STCONEJETFINDERBASE_H
81 
82 
StConeJetFinderBase()
Only available for derived classes.
friend struct PreJetInitializer
needs access to the grid
StEtaPhiCell * mWorkCell
run-time pars