CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HGCalTriggerNtupleGenJet.cc
Go to the documentation of this file.
4 
6 
8 public:
10 
11  void initialize(TTree&, const edm::ParameterSet&, edm::ConsumesCollector&&) final;
12  void fill(const edm::Event&, const HGCalTriggerNtupleEventSetup&) final;
13 
14 private:
15  void clear() final;
16 
18 
19  int genjet_n_;
20  std::vector<float> genjet_energy_;
21  std::vector<float> genjet_pt_;
22  std::vector<float> genjet_eta_;
23  std::vector<float> genjet_phi_;
24 };
25 
27 
29  accessEventSetup_ = false;
30 }
31 
33  const edm::ParameterSet& conf,
34  edm::ConsumesCollector&& collector) {
35  genjet_token_ = collector.consumes<reco::GenJetCollection>(conf.getParameter<edm::InputTag>("GenJets"));
36  tree.Branch("genjet_n", &genjet_n_, "genjet_n/I");
37  tree.Branch("genjet_energy", &genjet_energy_);
38  tree.Branch("genjet_pt", &genjet_pt_);
39  tree.Branch("genjet_eta", &genjet_eta_);
40  tree.Branch("genjet_phi", &genjet_phi_);
41 }
42 
45  e.getByToken(genjet_token_, genjets_h);
46  const reco::GenJetCollection& genjets = *genjets_h;
47 
48  clear();
49  genjet_n_ = genjets.size();
50  genjet_energy_.reserve(genjet_n_);
51  genjet_pt_.reserve(genjet_n_);
52  genjet_eta_.reserve(genjet_n_);
53  genjet_phi_.reserve(genjet_n_);
54  for (const auto& jet : genjets) {
55  genjet_energy_.emplace_back(jet.energy());
56  genjet_pt_.emplace_back(jet.pt());
57  genjet_eta_.emplace_back(jet.eta());
58  genjet_phi_.emplace_back(jet.phi());
59  }
60 }
61 
63  genjet_n_ = 0;
64  genjet_energy_.clear();
65  genjet_pt_.clear();
66  genjet_eta_.clear();
67  genjet_phi_.clear();
68 }
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:539
HGCalTriggerNtupleGenJet(const edm::ParameterSet &)
std::vector< GenJet > GenJetCollection
collection of GenJet objects
void fill(const edm::Event &, const HGCalTriggerNtupleEventSetup &) final
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
std::vector< float > genjet_energy_
#define DEFINE_EDM_PLUGIN(factory, type, name)
void initialize(TTree &, const edm::ParameterSet &, edm::ConsumesCollector &&) final