CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CMGMuonCleanerBySegmentsAlgo.h
Go to the documentation of this file.
1 #ifndef PhysicsTools_Heppy_CMGMuonCleanerBySegmentsAlgo_h
2 #define PhysicsTools_Heppy_CMGMuonCleanerBySegmentsAlgo_h
3 
6 #include <vector>
7 
8 namespace heppy {
9 
11  public:
12  CMGMuonCleanerBySegmentsAlgo(double sharedFraction=0.499, const std::string & preselection="track.isNonnull", const std::string & passthrough="isGlobalMuon && numberOfMatches >= 2") :
13  sharedFraction_(sharedFraction),
15  passthrough_(passthrough,true) {}
17 
19  std::vector<bool> clean(const std::vector<pat::Muon> &muons) const ;
20 
21  private:
24 
29 
31  bool isSameMuon(const pat::Muon &mu1, const pat::Muon &mu2) const ;
32  bool isBetterMuon(const pat::Muon &mu1, bool mu1PF, const pat::Muon &mu2, bool mu2PF) const ;
33 };
34 
35 }
36 
37 #endif
std::vector< bool > clean(const std::vector< pat::Muon > &muons) const
Return a vector of boolean marking the muons to be considered clean.
double sharedFraction_
Fraction of shared segments.
bool isBetterMuon(const pat::Muon &mu1, bool mu1PF, const pat::Muon &mu2, bool mu2PF) const
StringCutObjectSelector< pat::Muon > passthrough_
Always-accept cut.
bool isSameMuon(const pat::Muon &mu1, const pat::Muon &mu2) const
Methods.
tuple preselection
PRESELECTION
CMGMuonCleanerBySegmentsAlgo(double sharedFraction=0.499, const std::string &preselection="track.isNonnull", const std::string &passthrough="isGlobalMuon && numberOfMatches >= 2")
StringCutObjectSelector< pat::Muon > preselection_
Preselection cut.
tuple muons
Definition: patZpeak.py:38
Analysis-level muon class.
Definition: Muon.h:49