File indexing completed on 2024-04-06 12:06:45
0001 #ifndef DPGAnalysis_Skim_TagProbeMassProducer_h
0002 #define DPGAnalysis_Skim_TagProbeMassProducer_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 #include <memory>
0024
0025
0026 #include "FWCore/Framework/interface/Frameworkfwd.h"
0027 #include "FWCore/Framework/interface/stream/EDProducer.h"
0028 #include "FWCore/Framework/interface/Event.h"
0029 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0030 #include "DataFormats/Candidate/interface/CandidateFwd.h"
0031
0032
0033
0034 class TagProbeMassProducer : public edm::stream::EDProducer<> {
0035 public:
0036 explicit TagProbeMassProducer(const edm::ParameterSet&);
0037 ~TagProbeMassProducer() override;
0038
0039 private:
0040 void produce(edm::Event&, const edm::EventSetup&) override;
0041
0042 bool isPassingProbe(const unsigned int iprobe) const;
0043
0044
0045
0046 edm::InputTag tagCollection_;
0047 edm::InputTag probeCollection_;
0048 edm::InputTag passingProbeCollection_;
0049
0050 edm::Handle<reco::CandidateView> tags;
0051 edm::Handle<reco::CandidateView> probes;
0052 edm::Handle<reco::CandidateView> passingProbes;
0053
0054 double massMinCut_;
0055 double massMaxCut_;
0056 double delRMinCut_;
0057 double delRMaxCut_;
0058
0059 bool requireOS_;
0060 };
0061
0062 #endif