CMS 3D CMS Logo

ECFAdder.h
Go to the documentation of this file.
1 #ifndef RecoJets_JetProducers_ECFAdder_h
2 #define RecoJets_JetProducers_ECFAdder_h
3 
4 #include <memory>
12 #include "fastjet/contrib/EnergyCorrelator.hh"
14 
16 public:
17  explicit ECFAdder(const edm::ParameterSet& iConfig);
18 
19  void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override;
20  float getECF(unsigned index, const edm::Ptr<reco::Jet>& object) const;
21 
22  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
23 
24 private:
27  std::vector<unsigned> Njets_;
28  std::vector<std::string> cuts_;
29  std::string ecftype_; // Options: ECF (or empty); C; D; N; M; U;
30  std::vector<std::string> variables_;
31  double alpha_;
32  double beta_;
33 
34  std::vector<std::shared_ptr<fastjet::FunctionOfPseudoJet<double>>> routine_;
35  std::vector<StringCutObjectSelector<reco::Jet>> selectors_;
36 };
37 
38 #endif
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: ECFAdder.cc:115
ECFAdder(const edm::ParameterSet &iConfig)
Definition: ECFAdder.cc:9
std::string ecftype_
Definition: ECFAdder.h:29
float getECF(unsigned index, const edm::Ptr< reco::Jet > &object) const
Definition: ECFAdder.cc:84
std::vector< std::string > variables_
Definition: ECFAdder.h:30
std::vector< std::string > cuts_
Definition: ECFAdder.h:28
std::vector< std::shared_ptr< fastjet::FunctionOfPseudoJet< double > > > routine_
Definition: ECFAdder.h:34
int iEvent
Definition: GenABIO.cc:224
double beta_
Definition: ECFAdder.h:32
edm::EDGetTokenT< edm::View< reco::Jet > > src_token_
Definition: ECFAdder.h:26
std::vector< unsigned > Njets_
Definition: ECFAdder.h:27
void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) override
Definition: ECFAdder.cc:53
double alpha_
Definition: ECFAdder.h:31
std::vector< StringCutObjectSelector< reco::Jet > > selectors_
Definition: ECFAdder.h:35
edm::InputTag src_
Definition: ECFAdder.h:25