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 
15 
16 class ECFAdder : public edm::stream::EDProducer<> {
17  public:
18  explicit ECFAdder(const edm::ParameterSet& iConfig);
19 
20  void produce(edm::Event & iEvent, const edm::EventSetup & iSetup) override;
21  float getECF(unsigned index, const edm::Ptr<reco::Jet> & object) const;
22 
23  static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
24 
25  private:
28  std::vector<unsigned> Njets_;
29  std::vector<std::string> cuts_;
30  std::string ecftype_; // Options: ECF (or empty); C; D; N; M; U;
31  std::vector<std::string> variables_;
32  double alpha_;
33  double beta_ ;
34 
35  std::vector< std::shared_ptr<fastjet::FunctionOfPseudoJet<double> > > routine_;
36  std::vector< StringCutObjectSelector<reco::Jet> > selectors_;
37 };
38 
39 #endif
std::vector< std::shared_ptr< fastjet::FunctionOfPseudoJet< double > > > routine_
Definition: ECFAdder.h:35
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: ECFAdder.cc:137
ECFAdder(const edm::ParameterSet &iConfig)
Definition: ECFAdder.cc:9
std::string ecftype_
Definition: ECFAdder.h:30
float getECF(unsigned index, const edm::Ptr< reco::Jet > &object) const
Definition: ECFAdder.cc:99
std::vector< StringCutObjectSelector< reco::Jet > > selectors_
Definition: ECFAdder.h:36
std::vector< std::string > variables_
Definition: ECFAdder.h:31
std::vector< std::string > cuts_
Definition: ECFAdder.h:29
int iEvent
Definition: GenABIO.cc:230
double beta_
Definition: ECFAdder.h:33
edm::EDGetTokenT< edm::View< reco::Jet > > src_token_
Definition: ECFAdder.h:27
std::vector< unsigned > Njets_
Definition: ECFAdder.h:28
void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) override
Definition: ECFAdder.cc:65
double alpha_
Definition: ECFAdder.h:32
edm::InputTag src_
Definition: ECFAdder.h:26