Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:24:04

0001 // -*- C++ -*-
0002 //
0003 // Package:    JetSubstructurePacker
0004 // Class:      JetSubstructurePacker
0005 //
0006 // \class JetSubstructurePacker JetSubstructurePacker.h PhysicsTools/PatUtils/interface/JetSubstructurePacker.h
0007 // Description: Class to pack subjet information from various pat::Jet collections into a single one.
0008 //
0009 // Original Author:  "Salvatore Rappoccio"
0010 // $Id: JetSubstructurePacker.cc,v 1.1 2013/03/07 20:13:55 srappocc Exp $
0011 //
0012 //
0013 
0014 // system include files
0015 #include <memory>
0016 
0017 // user include files
0018 #include "FWCore/Framework/interface/Frameworkfwd.h"
0019 #include "FWCore/Framework/interface/stream/EDProducer.h"
0020 
0021 #include "FWCore/Framework/interface/Event.h"
0022 #include "FWCore/Framework/interface/MakerMacros.h"
0023 
0024 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0025 #include "DataFormats/PatCandidates/interface/Jet.h"
0026 #include "DataFormats/Common/interface/View.h"
0027 #include "DataFormats/Candidate/interface/CandidateFwd.h"
0028 #include "FWCore/Utilities/interface/transform.h"
0029 #include "DataFormats/PatCandidates/interface/PackedCandidate.h"
0030 //
0031 // class decleration
0032 //
0033 
0034 class JetSubstructurePacker : public edm::stream::EDProducer<> {
0035 public:
0036   explicit JetSubstructurePacker(const edm::ParameterSet&);
0037   ~JetSubstructurePacker() override;
0038 
0039 private:
0040   void produce(edm::Event&, const edm::EventSetup&) override;
0041 
0042   // ----------member data ---------------------------
0043 
0044   // data labels
0045   float distMax_;
0046   edm::EDGetTokenT<edm::View<pat::Jet>> jetToken_;
0047   std::vector<std::string> algoLabels_;
0048   std::vector<edm::InputTag> algoTags_;
0049   std::vector<edm::EDGetTokenT<edm::View<pat::Jet>>> algoTokens_;
0050   bool fixDaughters_;
0051   edm::EDGetTokenT<edm::Association<pat::PackedCandidateCollection>> pf2pc_;
0052   edm::EDGetTokenT<edm::Association<reco::PFCandidateCollection>> pc2pf_;
0053 };