Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:27:01

0001 #ifndef MuonIdentification_MuonRefProducer_h
0002 #define MuonIdentification_MuonRefProducer_h
0003 
0004 // -*- C++ -*-
0005 //
0006 // Package:    MuonIdentification
0007 // Class:      MuonRefProducer
0008 //
0009 /*
0010 
0011  Description: create a reduced collection of muons based on a reference
0012               collection and a set of cuts.
0013 */
0014 //
0015 // Original Author:  Dmytro Kovalskyi
0016 //
0017 
0018 // user include files
0019 #include "FWCore/Framework/interface/Frameworkfwd.h"
0020 #include "FWCore/Framework/interface/global/EDProducer.h"
0021 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0022 #include "DataFormats/MuonReco/interface/Muon.h"
0023 #include "DataFormats/MuonReco/interface/MuonFwd.h"
0024 #include "DataFormats/MuonReco/interface/MuonSelectors.h"
0025 
0026 class MuonRefProducer : public edm::global::EDProducer<> {
0027 public:
0028   explicit MuonRefProducer(const edm::ParameterSet&);
0029   ~MuonRefProducer() override;
0030   void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override;
0031 
0032 private:
0033   edm::InputTag theReferenceCollection_;
0034   edm::EDGetTokenT<reco::MuonCollection> muonToken_;
0035 
0036   muon::AlgorithmType type_;
0037   int minNumberOfMatches_;
0038   double maxAbsDx_;
0039   double maxAbsPullX_;
0040   double maxAbsDy_;
0041   double maxAbsPullY_;
0042   double maxChamberDist_;
0043   double maxChamberDistPull_;
0044   reco::Muon::ArbitrationType arbitrationType_;
0045 };
0046 #endif