File indexing completed on 2025-02-05 23:51:10
0001 #ifndef UtilAlgos_PdgIdSelector_h
0002 #define UtilAlgos_PdgIdSelector_h
0003 #include "FWCore/Framework/interface/ConsumesCollector.h"
0004 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
0005 #include "CommonTools/UtilAlgos/interface/ParameterAdapter.h"
0006 #include "CommonTools/Utils/interface/PdgIdSelector.h"
0007
0008 namespace reco {
0009 namespace modules {
0010
0011 template <>
0012 struct ParameterAdapter<PdgIdSelector> {
0013 static PdgIdSelector make(const edm::ParameterSet& cfg, edm::ConsumesCollector& iC) {
0014 return PdgIdSelector(cfg.getParameter<std::vector<int> >("pdgId"));
0015 }
0016
0017 static void fillPSetDescription(edm::ParameterSetDescription& desc) { desc.add<std::vector<int> >("pdgId", {}); }
0018 };
0019
0020 }
0021 }
0022
0023
0024
0025
0026 namespace reco {
0027 class PdgIdSelectorHandler : public PdgIdSelector {
0028 public:
0029 explicit PdgIdSelectorHandler(const edm::ParameterSet& cfg)
0030 : PdgIdSelector(cfg.getParameter<std::vector<int> >("pdgId")) {}
0031 };
0032 }
0033
0034 #endif