1 | #ifndef JETREC_JETCONEFINDERTOOL_H |
---|
2 | #define JETREC_JETCONEFINDERTOOL_H |
---|
3 | |
---|
4 | //---------------------------------------------------------------------- |
---|
5 | // This file distributed with FastJet has been obtained from SpartyJet |
---|
6 | // v2.20.0 by Pierre-Antoine Delsart, Kurtis L. Geerlings, Joey |
---|
7 | // Huston, Brian T. Martin and Chris Vermilion |
---|
8 | // For details, see http://www.pa.msu.edu/~huston/SpartyJet/ |
---|
9 | // http://projects.hepforge.org/spartyjet/ |
---|
10 | // |
---|
11 | // Changes from the original file are listed below. |
---|
12 | //---------------------------------------------------------------------- |
---|
13 | |
---|
14 | //****************************************************************************** |
---|
15 | // Filename : JetConeFinderTool |
---|
16 | // Author : Ambreesh Gupta |
---|
17 | // Created : September, 2002 |
---|
18 | // |
---|
19 | // DESCRIPTION: |
---|
20 | // TESTING cone algorithm created from JetSeedLessCone algorithm. The algorithm |
---|
21 | // only lookps over seed of certain Pt that is configurable trought the |
---|
22 | // jobOption file. |
---|
23 | // |
---|
24 | // PROPERTIES (JobOption Parameters): |
---|
25 | // |
---|
26 | // declareProperty("ConeParam",m_coneR); |
---|
27 | // ProtoJetContainerLoc string "Default" Key for ProtoJet input. |
---|
28 | // JetContainerLoc string "Default" Key for Jet list to output. |
---|
29 | // ConeR double 0.5 Cone radius |
---|
30 | // PtCut double 0.0 Pt Cut applied on ProtoJet. |
---|
31 | // Epsilon double 0.05 |
---|
32 | // SeedPt double 2.0 Pt Cut for ProtoJet to be a seed. |
---|
33 | // |
---|
34 | // HISTORY |
---|
35 | // |
---|
36 | // BUGS |
---|
37 | //***************************************************************************** |
---|
38 | |
---|
39 | // History of changes from the original JetConeFinder.hh file in |
---|
40 | // SpartyJet v2.20 |
---|
41 | // |
---|
42 | // 2009-01-15 Gregory Soyez <soyez@fastjet.fr> |
---|
43 | // |
---|
44 | // * put the code in the fastjet::atlas namespace |
---|
45 | // |
---|
46 | // 2009-02-14 Gregory Soyez <soyez@fastjet.fr> |
---|
47 | // |
---|
48 | // * imported into FastJet |
---|
49 | // * removed the message logs |
---|
50 | // * replaced StatusCode by int |
---|
51 | |
---|
52 | //Library Includes |
---|
53 | #include <string> |
---|
54 | #include <vector> |
---|
55 | #include <list> |
---|
56 | |
---|
57 | //#include "JetCore/CustomMessage.hh" |
---|
58 | //typedef int StatusCode; |
---|
59 | |
---|
60 | // class JetCollection; |
---|
61 | #include "Jet.hh" |
---|
62 | |
---|
63 | #include <fastjet/internal/base.hh> |
---|
64 | |
---|
65 | FASTJET_BEGIN_NAMESPACE |
---|
66 | |
---|
67 | namespace atlas{ |
---|
68 | |
---|
69 | class JetConeFinderTool |
---|
70 | { |
---|
71 | public: |
---|
72 | typedef Jet::jet_list_t jetcollection_t; |
---|
73 | |
---|
74 | |
---|
75 | JetConeFinderTool(); |
---|
76 | |
---|
77 | virtual ~JetConeFinderTool(); |
---|
78 | |
---|
79 | virtual int execute(jetcollection_t &theJets); |
---|
80 | |
---|
81 | |
---|
82 | //private: |
---|
83 | void reconstruct(); |
---|
84 | Jet* calc_cone(double, double); |
---|
85 | |
---|
86 | // Configured through jobOption |
---|
87 | std::string m_protoJetContainerLoc; |
---|
88 | std::string m_jetContainerLoc; |
---|
89 | |
---|
90 | double m_coneR; // Cone Radius |
---|
91 | double m_ptcut; // Pt Cut |
---|
92 | double m_eps; // Arbitrary parameter |
---|
93 | double m_seedPt; |
---|
94 | double m_etaMax; |
---|
95 | |
---|
96 | // Internals |
---|
97 | //std::list<Jet*>* m_pjetV; |
---|
98 | jetcollection_t* m_pjetV; |
---|
99 | jetcollection_t* m_jetOV; |
---|
100 | |
---|
101 | int m_cone_in_tower; |
---|
102 | |
---|
103 | std::vector<double>* m_veta; |
---|
104 | std::vector<double>* m_vphi; |
---|
105 | |
---|
106 | int m_ctr; |
---|
107 | int m_dctr; |
---|
108 | |
---|
109 | //Message m_log; |
---|
110 | }; |
---|
111 | |
---|
112 | } // namespace atlas |
---|
113 | |
---|
114 | FASTJET_END_NAMESPACE |
---|
115 | #endif // JETREC_JETCONEFINDERTOOL_H |
---|