Go to the documentation of this file.00001 #ifndef RecoJets_JetAlgorithms_CATopJetAlgorithm2_h
00002 #define RecoJets_JetAlgorithms_CATopJetAlgorithm2_h
00003
00004 #include <vector>
00005
00006 #include "RecoJets/JetAlgorithms/interface/CompoundPseudoJet.h"
00007 #include "FWCore/Framework/interface/Event.h"
00008
00009 #include <fastjet/JetDefinition.hh>
00010 #include <fastjet/PseudoJet.hh>
00011 #include <fastjet/ClusterSequence.hh>
00012
00013
00014 class SubJetAlgorithm{
00015 public:
00016 SubJetAlgorithm(edm::InputTag mSrc,
00017 int algorithm,
00018 double centralEtaCut,
00019 double ptMin,
00020 double jetsize,
00021 unsigned int subjets,
00022 bool pruning,
00023 double zcut=0.1) :
00024 mSrc_ (mSrc ),
00025 algorithm_ (algorithm ),
00026 centralEtaCut_ (centralEtaCut ),
00027 ptMin_ (ptMin ),
00028 jetsize_ (jetsize ),
00029 nSubjets_ (subjets ),
00030 enable_pruning_(pruning ),
00031 zcut_ (zcut )
00032 { }
00033
00034 bool get_pruning()const;
00035 void set_zcut(double z);
00036 void set_rcut_factor(double r);
00037
00039 void run( const std::vector<fastjet::PseudoJet> & cell_particles,
00040 std::vector<CompoundPseudoJet> & hardjetsOutput,
00041 const edm::EventSetup & c);
00042
00043
00044 private:
00045
00046 edm::InputTag mSrc_;
00047 int algorithm_;
00048 double centralEtaCut_;
00049 double ptMin_;
00050 double jetsize_;
00051 int nSubjets_;
00052 bool enable_pruning_;
00053 double zcut_;
00054 double rcut_factor_;
00055
00056 };
00057
00058 #endif