CMS 3D CMS Logo

MuonIdProducer.h
Go to the documentation of this file.
1 #ifndef MuonIdentification_MuonIdProducer_h
2 #define MuonIdentification_MuonIdProducer_h
3 
4 // -*- C++ -*-
5 //
6 // Package: MuonIdentification
7 // Class: MuonIdProducer
8 //
9 /*
10 
11  Description: reco::Muon producer that can fill various information:
12  - track-segment matching
13  - energy deposition
14  - muon isolation
15  - muon hypothesis compatibility (calorimeter)
16  Acceptable inputs:
17  - reco::TrackCollection
18  - reco::MuonCollection
19  - reco::MuonTrackLinksCollection
20 */
21 //
22 // Original Author: Dmytro Kovalskyi
23 //
24 //
25 
26 // user include files
29 
33 
35 
42 
44 // #include "Utilities/Timing/interface/TimerStack.h"
45 
50 
51 // RPC-Muon stuffs
55 
58 
62 
63 class MuonMesh;
64 class MuonKinkFinder;
65 
67 public:
69 
70  explicit MuonIdProducer(const edm::ParameterSet&);
71 
72  ~MuonIdProducer() override;
73 
74  void produce(edm::Event&, const edm::EventSetup&) override;
75  void beginRun(const edm::Run&, const edm::EventSetup&) override;
76 
77  static double sectorPhi(const DetId& id);
78 
79  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
80 
81 private:
82  void fillMuonId(edm::Event&,
83  const edm::EventSetup&,
84  reco::Muon&,
89  const edm::EventSetup&,
90  reco::Muon& aMuon,
91  reco::IsoDeposit& trackDep,
92  reco::IsoDeposit& ecalDep,
93  reco::IsoDeposit& hcalDep,
94  reco::IsoDeposit& hoDep,
95  reco::IsoDeposit& jetDep);
96  void fillGlbQuality(edm::Event&, const edm::EventSetup&, reco::Muon& aMuon);
97  void fillTrackerKink(reco::Muon& aMuon);
98  void init(edm::Event&, const edm::EventSetup&);
99 
100  // make a muon based on a track ref
102  // make a global muon based on the links object
104 
105  // make a muon based on track (p4)
107 
109 
110  // check if a silicon track satisfies the trackerMuon requirements
111  bool isGoodTrack(const reco::Track& track);
112 
113  bool isGoodTrackerMuon(const reco::Muon& muon);
114  bool isGoodCaloMuon(const reco::CaloMuon& muon);
115  bool isGoodRPCMuon(const reco::Muon& muon);
116  bool isGoodGEMMuon(const reco::Muon& muon);
117  bool isGoodME0Muon(const reco::Muon& muon);
118 
119  // check number of common DetIds for a given trackerMuon and a stand alone
120  // muon track
121  int overlap(const reco::Muon& muon, const reco::Track& track);
122 
123  unsigned int chamberId(const DetId&);
124 
125  double phiOfMuonInteractionRegion(const reco::Muon& muon) const;
126 
127  bool checkLinks(const reco::MuonTrackLinks*) const;
128  inline bool approxEqual(const double a, const double b, const double tol = 1E-3) const {
129  return std::abs(a - b) < tol;
130  }
131 
133  std::vector<reco::MuonSegmentMatch>* getSegmentMatches(reco::MuonChamberMatch& chamber, unsigned int muonType) const {
134  if (muonType == reco::Muon::TrackerMuon)
135  return &chamber.segmentMatches;
136  else if (muonType == reco::Muon::ME0Muon)
137  return &chamber.me0Matches;
138  else if (muonType == reco::Muon::GEMMuon)
139  return &chamber.gemMatches;
140  else
141  throw cms::Exception("getSegmentMatches called with unsupported muonType");
142  }
143 
146 
147  struct ICTypes {
149 
150  static ICTypeKey toKey(const std::string& s) {
151  if (s == "inner tracks")
152  return INNER_TRACKS;
153  else if (s == "outer tracks")
154  return OUTER_TRACKS;
155  else if (s == "links")
156  return LINKS;
157  else if (s == "muons")
158  return MUONS;
159  else if (s == "tev firstHit")
160  return TEV_FIRSTHIT;
161  else if (s == "tev picky")
162  return TEV_PICKY;
163  else if (s == "tev dyt")
164  return TEV_DYT;
165 
166  throw cms::Exception("FatalError") << "Unknown input collection type: " << s;
167  }
168 
169  static std::string toStr(const ICTypeKey k) {
170  switch (k) {
171  case INNER_TRACKS:
172  return "inner tracks";
173  case OUTER_TRACKS:
174  return "outer tracks";
175  case LINKS:
176  return "links";
177  case MUONS:
178  return "muons";
179  case TEV_FIRSTHIT:
180  return "tev firstHit";
181  case TEV_PICKY:
182  return "tev picky";
183  case TEV_DYT:
184  return "tev dyt";
185  default:
186  throw cms::Exception("FatalError") << "Unknown input collection type";
187  }
188  return "";
189  }
190  };
191  std::vector<edm::InputTag> inputCollectionLabels_;
192  std::vector<ICTypes::ICTypeKey> inputCollectionTypes_;
193 
194  std::unique_ptr<MuonTimingFiller> theTimingFiller_;
195 
196  std::unique_ptr<MuonShowerDigiFiller> theShowerDigiFiller_;
197 
198  // selections
199  double minPt_;
200  double minP_;
203  double maxAbsEta_;
205 
206  // matching
207  double maxAbsDx_;
209  double maxAbsDy_;
211 
212  // what information to fill
222 
224 
226 
234 
242 
245 
248 
251 
253  std::unique_ptr<reco::isodeposit::IsoDepositExtractor> muIsoExtractorCalo_;
254  std::unique_ptr<reco::isodeposit::IsoDepositExtractor> muIsoExtractorTrack_;
255  std::unique_ptr<reco::isodeposit::IsoDepositExtractor> muIsoExtractorJet_;
261 
265 
267  std::unique_ptr<MuonKinkFinder> trackerKinkFinder_;
268 
269  double caloCut_;
270 
271  bool arbClean_;
272  std::unique_ptr<MuonMesh> meshAlgo_;
273 };
274 #endif
MuonIdProducer::fillIsolation_
bool fillIsolation_
Definition: MuonIdProducer.h:218
MuonIdProducer::fillGlobalTrackQuality_
bool fillGlobalTrackQuality_
Definition: MuonIdProducer.h:262
MuonIdProducer::maxAbsPullY2_
double maxAbsPullY2_
Definition: MuonIdProducer.h:210
MuonIdProducer::maxAbsPullX2_
double maxAbsPullX2_
Definition: MuonIdProducer.h:208
MuonIdProducer::tpfmsCollectionHandle_
edm::Handle< reco::TrackToTrackMap > tpfmsCollectionHandle_
Definition: MuonIdProducer.h:231
MuonIdProducer::minPt_
double minPt_
Definition: MuonIdProducer.h:199
Handle.h
MuonIdProducer::ICTypes::INNER_TRACKS
Definition: MuonIdProducer.h:148
MuonIdProducer::muonCaloCompatibility_
MuonCaloCompatibility muonCaloCompatibility_
Definition: MuonIdProducer.h:252
MuonIdProducer::muonCollectionHandle_
edm::Handle< reco::MuonCollection > muonCollectionHandle_
Definition: MuonIdProducer.h:229
MuonIdProducer::outerTrackCollectionHandle_
edm::Handle< reco::TrackCollection > outerTrackCollectionHandle_
Definition: MuonIdProducer.h:228
HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11724
Muon.h
MuonIdProducer::muIsoExtractorJet_
std::unique_ptr< reco::isodeposit::IsoDepositExtractor > muIsoExtractorJet_
Definition: MuonIdProducer.h:255
MuonArbitrationMethods.h
MuonIdProducer::pickyCollectionToken_
edm::EDGetTokenT< reco::TrackToTrackMap > pickyCollectionToken_
Definition: MuonIdProducer.h:240
MuonIdProducer::ICTypes::TEV_PICKY
Definition: MuonIdProducer.h:148
reco::Muon::MuonTrackType
MuonTrackType
map for Global Muon refitters
Definition: Muon.h:36
MuonIdProducer::init
void init(edm::Event &, const edm::EventSetup &)
Definition: MuonIdProducer.cc:191
MuonIdProducer::arbitrateTrackerMuons_
bool arbitrateTrackerMuons_
Definition: MuonIdProducer.h:223
MuonIdProducer::ICTypes::NONE
Definition: MuonIdProducer.h:148
MuonIdProducer::jetDepositName_
std::string jetDepositName_
Definition: MuonIdProducer.h:260
MuonShowerDigiFiller.h
MuonIdProducer::isGoodTrackerMuon
bool isGoodTrackerMuon(const reco::Muon &muon)
Definition: MuonIdProducer.cc:755
muon
Definition: MuonCocktails.h:17
MuonIdProducer::ICTypes::TEV_FIRSTHIT
Definition: MuonIdProducer.h:148
TrackDetectorAssociator.h
MuonIdTruthInfo.h
edm::Run
Definition: Run.h:45
MuonIdProducer::innerTrackCollectionHandle_
edm::Handle< reco::TrackCollection > innerTrackCollectionHandle_
Definition: MuonIdProducer.h:227
edm::EDGetTokenT< reco::TrackCollection >
MuonIdProducer::outerTrackCollectionToken_
edm::EDGetTokenT< reco::TrackCollection > outerTrackCollectionToken_
Definition: MuonIdProducer.h:236
MuonIdProducer::pickyCollectionHandle_
edm::Handle< reco::TrackToTrackMap > pickyCollectionHandle_
Definition: MuonIdProducer.h:232
MuonIdProducer::ptThresholdToFillCandidateP4WithGlobalFit_
double ptThresholdToFillCandidateP4WithGlobalFit_
Definition: MuonIdProducer.h:220
MuonIdProducer::storeCrossedHcalRecHits_
bool storeCrossedHcalRecHits_
Definition: MuonIdProducer.h:215
MuonIdProducer::isGoodTrack
bool isGoodTrack(const reco::Track &track)
Definition: MuonIdProducer.cc:351
MuonIdProducer::maxAbsDx_
double maxAbsDx_
Definition: MuonIdProducer.h:207
EDProducer.h
MuonIdProducer::dytCollectionToken_
edm::EDGetTokenT< reco::TrackToTrackMap > dytCollectionToken_
Definition: MuonIdProducer.h:241
MuonIdProducer::TrackType
reco::Muon::MuonTrackType TrackType
Definition: MuonIdProducer.h:68
MuonIdProducer::globalTrackQualityInputTag_
edm::InputTag globalTrackQualityInputTag_
Definition: MuonIdProducer.h:264
MuonCaloCompatibility
Definition: MuonCaloCompatibility.h:26
MuonIdProducer::ICTypes::ICTypeKey
ICTypeKey
Definition: MuonIdProducer.h:148
MuonIdProducer::linkCollectionToken_
edm::EDGetTokenT< reco::MuonTrackLinksCollection > linkCollectionToken_
Definition: MuonIdProducer.h:238
MuonIdProducer::innerTrackCollectionToken_
edm::EDGetTokenT< reco::TrackCollection > innerTrackCollectionToken_
Definition: MuonIdProducer.h:235
MuonIdProducer::writeIsoDeposits_
bool writeIsoDeposits_
Definition: MuonIdProducer.h:219
MuonIdProducer::ICTypes::toKey
static ICTypeKey toKey(const std::string &s)
Definition: MuonIdProducer.h:150
MuonIdProducer::minNumberOfMatches_
int minNumberOfMatches_
Definition: MuonIdProducer.h:202
MuonIdProducer::rpcHitHandle_
edm::Handle< RPCRecHitCollection > rpcHitHandle_
Definition: MuonIdProducer.h:246
MuonIdProducer::theShowerDigiFiller_
std::unique_ptr< MuonShowerDigiFiller > theShowerDigiFiller_
Definition: MuonIdProducer.h:196
MuonIdProducer::ICTypes::LINKS
Definition: MuonIdProducer.h:148
edm::Handle< reco::TrackCollection >
reco::Muon
Definition: Muon.h:27
MuonIdProducer::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition: MuonIdProducer.cc:433
MuonIdProducer::trackAssociator_
TrackDetectorAssociator trackAssociator_
Definition: MuonIdProducer.h:144
MuonIdProducer::linkCollectionHandle_
edm::Handle< reco::MuonTrackLinksCollection > linkCollectionHandle_
Definition: MuonIdProducer.h:230
edm::Ref< TrackCollection >
MuonIdProducer::muonCollectionToken_
edm::EDGetTokenT< reco::MuonCollection > muonCollectionToken_
Definition: MuonIdProducer.h:237
MuonIdProducer::ecalDepositName_
std::string ecalDepositName_
Definition: MuonIdProducer.h:257
reco::Muon::GEMMuon
static const unsigned int GEMMuon
Definition: Muon.h:291
DetId
Definition: DetId.h:17
MuonIdProducer::meshAlgo_
std::unique_ptr< MuonMesh > meshAlgo_
Definition: MuonIdProducer.h:272
MuonIdProducer::ICTypes::TEV_DYT
Definition: MuonIdProducer.h:148
MakerMacros.h
alignCSCRings.s
s
Definition: alignCSCRings.py:92
MuonIdProducer::inputCollectionLabels_
std::vector< edm::InputTag > inputCollectionLabels_
Definition: MuonIdProducer.h:191
MuonIdProducer::dytCollectionHandle_
edm::Handle< reco::TrackToTrackMap > dytCollectionHandle_
Definition: MuonIdProducer.h:233
MuonCaloCompatibility.h
Track.h
MuonIdProducer::makeMuon
reco::Muon makeMuon(edm::Event &iEvent, const edm::EventSetup &iSetup, const reco::TrackRef &track, TrackType type)
Definition: MuonIdProducer.cc:253
MuonIdProducer::isGoodGEMMuon
bool isGoodGEMMuon(const reco::Muon &muon)
Definition: MuonIdProducer.cc:779
MuonIdProducer::arbitrateMuons
void arbitrateMuons(reco::MuonCollection *, reco::CaloMuonCollection *)
Definition: MuonIdProducer.cc:1027
MuonIdProducer::fillMatching_
bool fillMatching_
Definition: MuonIdProducer.h:216
MuonFwd.h
MuonIdProducer::beginRun
void beginRun(const edm::Run &, const edm::EventSetup &) override
Definition: MuonIdProducer.cc:414
reco::MuonCollection
std::vector< Muon > MuonCollection
collection of Muon objects
Definition: MuonFwd.h:9
MuonIdProducer::getSegmentMatches
std::vector< reco::MuonSegmentMatch > * getSegmentMatches(reco::MuonChamberMatch &chamber, unsigned int muonType) const
get the segment matches of the appropriate type
Definition: MuonIdProducer.h:133
reco::CaloMuonCollection
std::vector< CaloMuon > CaloMuonCollection
collection of Muon objects
Definition: MuonFwd.h:27
reco::Track
Definition: Track.h:27
MuonIdProducer::ICTypes::toStr
static std::string toStr(const ICTypeKey k)
Definition: MuonIdProducer.h:169
MuonIdProducer::glbQualToken_
edm::EDGetTokenT< edm::ValueMap< reco::MuonQuality > > glbQualToken_
Definition: MuonIdProducer.h:244
MuonIdProducer::muIsoExtractorCalo_
std::unique_ptr< reco::isodeposit::IsoDepositExtractor > muIsoExtractorCalo_
Definition: MuonIdProducer.h:253
MuonKinkFinder
Definition: MuonKinkFinder.h:8
dqmdumpme.k
k
Definition: dqmdumpme.py:60
b
double b
Definition: hdecay.h:118
MuonIdProducer::caloCut_
double caloCut_
Definition: MuonIdProducer.h:269
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
MuonIdProducer::ICTypes::MUONS
Definition: MuonIdProducer.h:148
IsoDepositExtractor.h
RPCRecHitCollection.h
CaloMuon.h
MuonIdProducer::debugWithTruthMatching_
bool debugWithTruthMatching_
Definition: MuonIdProducer.h:225
MuonIdProducer::makeCaloMuon
reco::CaloMuon makeCaloMuon(const reco::Muon &)
Definition: MuonIdProducer.cc:273
edm::ParameterSet
Definition: ParameterSet.h:47
MuonIdProducer::sectorPhi
static double sectorPhi(const DetId &id)
Definition: MuonIdProducer.cc:1315
MuonIdProducer::fillTrackerKink_
bool fillTrackerKink_
Definition: MuonIdProducer.h:266
a
double a
Definition: hdecay.h:119
Event.h
MuonIdProducer::ICTypes
Definition: MuonIdProducer.h:147
type
type
Definition: SiPixelVCal_PayloadInspector.cc:39
MuonIdProducer::trackDepositName_
std::string trackDepositName_
Definition: MuonIdProducer.h:256
MuonIdProducer::isGoodME0Muon
bool isGoodME0Muon(const reco::Muon &muon)
Definition: MuonIdProducer.cc:785
TrackDetectorAssociator
Definition: TrackDetectorAssociator.h:44
MuonIdProducer::minP_
double minP_
Definition: MuonIdProducer.h:200
MuonIdProducer::glbQualHandle_
edm::Handle< edm::ValueMap< reco::MuonQuality > > glbQualHandle_
Definition: MuonIdProducer.h:247
iEvent
int iEvent
Definition: GenABIO.cc:224
edm::stream::EDProducer
Definition: EDProducer.h:36
edm::EventSetup
Definition: EventSetup.h:58
MuonIdProducer::fillMuonIsolation
void fillMuonIsolation(edm::Event &, const edm::EventSetup &, reco::Muon &aMuon, reco::IsoDeposit &trackDep, reco::IsoDeposit &ecalDep, reco::IsoDeposit &hcalDep, reco::IsoDeposit &hoDep, reco::IsoDeposit &jetDep)
Definition: MuonIdProducer.cc:1242
MuonIdProducer::checkLinks
bool checkLinks(const reco::MuonTrackLinks *) const
Definition: MuonIdProducer.cc:1369
MuonIdProducer::arbClean_
bool arbClean_
Definition: MuonIdProducer.h:271
MuonIdProducer::addExtraSoftMuons_
bool addExtraSoftMuons_
Definition: MuonIdProducer.h:204
reco::MuonChamberMatch
Definition: MuonChamberMatch.h:10
TrackDetectorAssociator::InsideOut
Definition: TrackDetectorAssociator.h:50
MuonIdProducer::propagatorToken_
const edm::ESGetToken< Propagator, TrackingComponentsRecord > propagatorToken_
Definition: MuonIdProducer.h:250
MuonRPCHitMatch.h
MuonIdProducer::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: MuonIdProducer.cc:1382
MuonIdProducer::hcalDepositName_
std::string hcalDepositName_
Definition: MuonIdProducer.h:258
edm::ESGetToken< CSCGeometry, MuonGeometryRecord >
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
MuonIdProducer::hoDepositName_
std::string hoDepositName_
Definition: MuonIdProducer.h:259
ValueMap.h
MuonIdProducer::fillShowerDigis_
bool fillShowerDigis_
Definition: MuonIdProducer.h:217
MuonIdProducer::MuonIdProducer
MuonIdProducer(const edm::ParameterSet &)
Definition: MuonIdProducer.cc:34
TrackDetectorAssociator::Direction
Direction
Definition: TrackDetectorAssociator.h:50
MuonIdProducer::theTimingFiller_
std::unique_ptr< MuonTimingFiller > theTimingFiller_
Definition: MuonIdProducer.h:194
MuonTimingFiller.h
MuonIdProducer::approxEqual
bool approxEqual(const double a, const double b, const double tol=1E-3) const
Definition: MuonIdProducer.h:128
MuonIdProducer::overlap
int overlap(const reco::Muon &muon, const reco::Track &track)
Definition: MuonIdProducer.cc:385
MuonIdProducer::phiOfMuonInteractionRegion
double phiOfMuonInteractionRegion(const reco::Muon &muon) const
Definition: MuonIdProducer.cc:1335
MuonIdProducer::trackerKinkFinder_
std::unique_ptr< MuonKinkFinder > trackerKinkFinder_
Definition: MuonIdProducer.h:267
MuonIdProducer::fillTrackerKink
void fillTrackerKink(reco::Muon &aMuon)
Definition: MuonIdProducer.cc:1356
Frameworkfwd.h
reco::CaloMuon
Definition: CaloMuon.h:21
Exception
Definition: hltDiff.cc:245
MuonIdProducer::fillCaloCompatibility_
bool fillCaloCompatibility_
Definition: MuonIdProducer.h:213
electronStore.links
links
Definition: electronStore.py:149
RPCRecHit.h
MuonIdProducer::maxAbsDy_
double maxAbsDy_
Definition: MuonIdProducer.h:209
relativeConstraints.chamber
chamber
Definition: relativeConstraints.py:53
EventSetup.h
MuonIdProducer
Definition: MuonIdProducer.h:66
reco::IsoDeposit
Definition: IsoDeposit.h:49
MuonIdProducer::ICTypes::OUTER_TRACKS
Definition: MuonIdProducer.h:148
MuonIdProducer::geomTokenRun_
const edm::ESGetToken< CSCGeometry, MuonGeometryRecord > geomTokenRun_
Definition: MuonIdProducer.h:249
MuonIdProducer::fillEnergy_
bool fillEnergy_
Definition: MuonIdProducer.h:214
reco::Muon::TrackerMuon
static const unsigned int TrackerMuon
Definition: Muon.h:286
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
ParameterSet.h
MuonIdProducer::chamberId
unsigned int chamberId(const DetId &)
Definition: MuonIdProducer.cc:371
MuonIdProducer::tpfmsCollectionToken_
edm::EDGetTokenT< reco::TrackToTrackMap > tpfmsCollectionToken_
Definition: MuonIdProducer.h:239
MuonIdProducer::rpcHitToken_
edm::EDGetTokenT< RPCRecHitCollection > rpcHitToken_
Definition: MuonIdProducer.h:243
MuonIdProducer::fillMuonId
void fillMuonId(edm::Event &, const edm::EventSetup &, reco::Muon &, TrackDetectorAssociator::Direction direction=TrackDetectorAssociator::InsideOut)
Definition: MuonIdProducer.cc:792
MuonIdProducer::inputCollectionTypes_
std::vector< ICTypes::ICTypeKey > inputCollectionTypes_
Definition: MuonIdProducer.h:192
MuonIdProducer::isGoodCaloMuon
bool isGoodCaloMuon(const reco::CaloMuon &muon)
Definition: MuonIdProducer.cc:764
edm::Event
Definition: Event.h:73
MuonIdProducer::minPCaloMuon_
double minPCaloMuon_
Definition: MuonIdProducer.h:201
MuonMesh
Definition: MuonMesh.h:17
MuonIdProducer::parameters_
TrackAssociatorParameters parameters_
Definition: MuonIdProducer.h:145
reco::Muon::ME0Muon
static const unsigned int ME0Muon
Definition: Muon.h:292
MuonIdProducer::maxAbsEta_
double maxAbsEta_
Definition: MuonIdProducer.h:203
edm::InputTag
Definition: InputTag.h:15
MuonIdProducer::isGoodRPCMuon
bool isGoodRPCMuon(const reco::Muon &muon)
Definition: MuonIdProducer.cc:770
MuonIdProducer::fillGlobalTrackRefits_
bool fillGlobalTrackRefits_
Definition: MuonIdProducer.h:263
MuonIdProducer::muIsoExtractorTrack_
std::unique_ptr< reco::isodeposit::IsoDepositExtractor > muIsoExtractorTrack_
Definition: MuonIdProducer.h:254
MuonIdProducer::sigmaThresholdToFillCandidateP4WithGlobalFit_
double sigmaThresholdToFillCandidateP4WithGlobalFit_
Definition: MuonIdProducer.h:221
TrackToTrackMap.h
MuonIdProducer::~MuonIdProducer
~MuonIdProducer() override
Definition: MuonIdProducer.cc:187
MuonIdProducer::fillArbitrationInfo
void fillArbitrationInfo(reco::MuonCollection *, unsigned int muonType=reco::Muon::TrackerMuon)
Definition: MuonIdProducer.cc:1053
TrackAssociatorParameters
Definition: TrackAssociatorParameters.h:43
MuonIdProducer::fillGlbQuality
void fillGlbQuality(edm::Event &, const edm::EventSetup &, reco::Muon &aMuon)
Definition: MuonIdProducer.cc:1348