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
|
---|