FastJet 3.0.0
JetConeFinderTool.hh
00001 #ifndef JETREC_JETCONEFINDERTOOL_H
00002 #define JETREC_JETCONEFINDERTOOL_H
00003 //******************************************************************************
00004 // Filename :  JetConeFinderTool
00005 // Author   :  Ambreesh Gupta
00006 // Created  :  September, 2002
00007 //
00008 // DESCRIPTION:
00009 //  TESTING cone algorithm created from JetSeedLessCone algorithm. The algorithm
00010 //  only lookps over seed of certain Pt that is configurable trought the 
00011 //  jobOption file.
00012 //
00013 // PROPERTIES (JobOption Parameters):
00014 //
00015 //  declareProperty("ConeParam",m_coneR);
00016 //    ProtoJetContainerLoc  string "Default"   Key for ProtoJet input.
00017 //    JetContainerLoc       string "Default"   Key for Jet list to output.
00018 //    ConeR                 double 0.5         Cone radius
00019 //    PtCut                 double 0.0         Pt Cut applied on ProtoJet.
00020 //    Epsilon               double 0.05        
00021 //    SeedPt                double 2.0         Pt Cut for ProtoJet to be a seed.
00022 //
00023 // HISTORY
00024 //
00025 // BUGS
00026 //
00027 // NOTES
00028 //   file taken from SpartyJet v.2.20.0
00029 //   removed the Message logs
00030 //   replaced StatusCode by int
00031 //*****************************************************************************
00032 
00033 //Library Includes
00034 #include <string>
00035 #include <vector>
00036 #include <list>
00037 
00038 //#include "JetCore/CustomMessage.hh"
00039 //typedef int StatusCode;
00040 
00041 // class JetCollection;
00042 #include "Jet.hh"
00043 
00044 #include <fastjet/internal/base.hh>
00045 
00046 FASTJET_BEGIN_NAMESPACE
00047 
00048 namespace atlas{
00049 
00050 class JetConeFinderTool 
00051 {
00052 public:
00053   typedef Jet::jet_list_t jetcollection_t;
00054   
00055 
00056   JetConeFinderTool();
00057 
00058   virtual ~JetConeFinderTool();
00059 
00060   virtual int execute(jetcollection_t &theJets);
00061 
00062 
00063   //private:
00064     void  reconstruct();   
00065     Jet*  calc_cone(double, double); 
00066 
00067     // Configured through jobOption
00068     std::string m_protoJetContainerLoc;
00069     std::string m_jetContainerLoc;
00070 
00071     double      m_coneR; // Cone Radius
00072     double      m_ptcut; // Pt Cut
00073     double      m_eps;   // Arbitrary parameter
00074     double      m_seedPt;
00075     double      m_etaMax;
00076 
00077     // Internals 
00078     //std::list<Jet*>*       m_pjetV;
00079     jetcollection_t*       m_pjetV;
00080     jetcollection_t*       m_jetOV;
00081 
00082     int             m_cone_in_tower;
00083 
00084     std::vector<double>*     m_veta;
00085     std::vector<double>*     m_vphi;
00086 
00087     int m_ctr;
00088     int m_dctr;
00089 
00090   //Message m_log;
00091 };
00092 
00093 }  // namespace atlas
00094 
00095 FASTJET_END_NAMESPACE 
00096 #endif // JETREC_JETCONEFINDERTOOL_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends