File indexing completed on 2024-04-06 12:25:32
0001 #ifndef RecoJets_JetProducers_HTTTopJetProducer_h
0002 #define RecoJets_JetProducers_HTTTopJetProducer_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042 #include "FWCore/Framework/interface/Event.h"
0043 #include "FWCore/Framework/interface/EventSetup.h"
0044 #include "DataFormats/Common/interface/View.h"
0045 #include "DataFormats/Common/interface/Handle.h"
0046 #include "DataFormats/Provenance/interface/ProductID.h"
0047 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0048 #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h"
0049 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
0050
0051 #include "DataFormats/JetReco/interface/CaloJetCollection.h"
0052 #include "DataFormats/JetReco/interface/GenJetCollection.h"
0053 #include "DataFormats/JetReco/interface/PFJetCollection.h"
0054 #include "DataFormats/JetReco/interface/BasicJetCollection.h"
0055 #include "RecoJets/JetAlgorithms/interface/JetAlgoHelper.h"
0056 #include "DataFormats/Candidate/interface/CandidateFwd.h"
0057 #include "DataFormats/Candidate/interface/LeafCandidate.h"
0058 #include "FWCore/Framework/interface/ESHandle.h"
0059 #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
0060 #include "Geometry/Records/interface/CaloGeometryRecord.h"
0061
0062 #include "RecoJets/JetProducers/plugins/FastjetJetProducer.h"
0063
0064 #include "RecoJets/JetAlgorithms/interface/HEPTopTaggerWrapperV2.h"
0065
0066 #include "FWCore/Utilities/interface/RandomNumberGenerator.h"
0067 #include "FWCore/ServiceRegistry/interface/Service.h"
0068 #include "CLHEP/Random/RandomEngine.h"
0069
0070 #include "fastjet/SISConePlugin.hh"
0071
0072 namespace cms {
0073 class HTTTopJetProducer : public FastjetJetProducer {
0074 public:
0075 HTTTopJetProducer(const edm::ParameterSet& ps);
0076
0077 ~HTTTopJetProducer() override {}
0078
0079 void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override;
0080
0081 void runAlgorithm(edm::Event& iEvent, const edm::EventSetup& iSetup) override;
0082
0083 void addHTTTopJetTagInfoCollection(edm::Event& iEvent,
0084 const edm::EventSetup& iSetup,
0085 edm::OrphanHandle<reco::BasicJetCollection>& oh) override;
0086
0087 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0088
0089 private:
0090 std::unique_ptr<fastjet::HEPTopTaggerV2> fjHEPTopTagger_;
0091
0092
0093
0094
0095 bool optimalR_;
0096 bool qJets_;
0097
0098 double minFatjetPt_;
0099 double minSubjetPt_;
0100 double minCandPt_;
0101
0102 double maxFatjetAbsEta_;
0103
0104 double subjetMass_;
0105 double muCut_;
0106
0107 double filtR_;
0108 int filtN_;
0109
0110
0111
0112
0113
0114
0115
0116
0117 int mode_;
0118
0119
0120 double minCandMass_;
0121 double maxCandMass_;
0122
0123 double massRatioWidth_;
0124 double minM23Cut_;
0125 double minM13Cut_;
0126 double maxM13Cut_;
0127
0128 double maxR_;
0129 double minR_;
0130
0131 bool rejectMinR_;
0132
0133
0134 bool verbose_;
0135 };
0136
0137 }
0138
0139 #endif