CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
GsfEleMissingHitsCut Class Reference
Inheritance diagram for GsfEleMissingHitsCut:
CutApplicatorBase candidate_functions::CandidateCut

Public Member Functions

CandidateType candidateType () const final
 
 GsfEleMissingHitsCut (const edm::ParameterSet &c)
 
result_type operator() (const reco::GsfElectronPtr &) const final
 
double value (const reco::CandidatePtr &cand) const final
 
- Public Member Functions inherited from CutApplicatorBase
virtual result_type asCandidate (const argument_type &) const
 
 CutApplicatorBase ()
 
 CutApplicatorBase (const edm::ParameterSet &c)
 
 CutApplicatorBase (const CutApplicatorBase &)=delete
 
const std::string & name () const override
 
result_type operator() (const argument_type &) const final
 
virtual result_type operator() (const pat::ElectronPtr &) const
 
virtual result_type operator() (const reco::PhotonPtr &) const
 
virtual result_type operator() (const pat::PhotonPtr &) const
 
virtual result_type operator() (const reco::MuonPtr &) const
 
virtual result_type operator() (const pat::MuonPtr &) const
 
virtual result_type operator() (const reco::PFTauPtr &) const
 
virtual result_type operator() (const pat::TauPtr &) const
 
CutApplicatorBaseoperator= (const CutApplicatorBase &)=delete
 
 ~CutApplicatorBase () override
 Destructor. More...
 
- Public Member Functions inherited from candidate_functions::CandidateCut
 CandidateCut ()
 
virtual ~CandidateCut ()
 

Private Attributes

const double _barrelCutOff
 
const unsigned _maxMissingHitsEB
 
const unsigned _maxMissingHitsEE
 

Additional Inherited Members

- Public Types inherited from CutApplicatorBase
enum  CandidateType {
  NONE, ELECTRON, MUON, PHOTON,
  TAU, PATELECTRON, PATMUON, PATPHOTON,
  PATTAU
}
 
- Public Types inherited from candidate_functions::CandidateCut
using argument_type = reco::CandidatePtr
 
using result_type = bool
 

Detailed Description

Definition at line 5 of file GsfEleMissingHitsCut.cc.

Constructor & Destructor Documentation

GsfEleMissingHitsCut::GsfEleMissingHitsCut ( const edm::ParameterSet c)
inline

Definition at line 7 of file GsfEleMissingHitsCut.cc.

References operator()(), and value().

9  _maxMissingHitsEB(c.getParameter<unsigned>("maxMissingHitsEB")),
10  _maxMissingHitsEE(c.getParameter<unsigned>("maxMissingHitsEE")),
11  _barrelCutOff(c.getParameter<double>("barrelCutOff")) {}
T getParameter(std::string const &) const
const unsigned _maxMissingHitsEB
const unsigned _maxMissingHitsEE

Member Function Documentation

CandidateType GsfEleMissingHitsCut::candidateType ( ) const
inlinefinalvirtual

Reimplemented from CutApplicatorBase.

Definition at line 17 of file GsfEleMissingHitsCut.cc.

References CutApplicatorBase::ELECTRON.

CutApplicatorBase::result_type GsfEleMissingHitsCut::operator() ( const reco::GsfElectronPtr cand) const
finalvirtual

Reimplemented from CutApplicatorBase.

Definition at line 26 of file GsfEleMissingHitsCut.cc.

References _barrelCutOff, _maxMissingHitsEB, _maxMissingHitsEE, funct::abs(), constexpr, reco::GsfElectron::gsfTrack(), reco::HitPattern::MISSING_INNER_HITS, and reco::GsfElectron::superCluster().

Referenced by GsfEleMissingHitsCut().

26  {
27  constexpr auto missingHitType = reco::HitPattern::MISSING_INNER_HITS;
28  const unsigned maxMissingHits =
29  (std::abs(cand->superCluster()->position().eta()) < _barrelCutOff ? _maxMissingHitsEB : _maxMissingHitsEE);
30  const unsigned mHits = cand->gsfTrack()->hitPattern().numberOfLostHits(missingHitType);
31  return mHits <= maxMissingHits;
32 }
GsfTrackRef gsfTrack() const override
reference to a GsfTrack
Definition: GsfElectron.h:156
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
const unsigned _maxMissingHitsEB
SuperClusterRef superCluster() const override
reference to a SuperCluster
Definition: GsfElectron.h:155
const unsigned _maxMissingHitsEE
#define constexpr
double GsfEleMissingHitsCut::value ( const reco::CandidatePtr cand) const
finalvirtual

Implements candidate_functions::CandidateCut.

Definition at line 34 of file GsfEleMissingHitsCut.cc.

References constexpr, reco::GsfElectron::gsfTrack(), and reco::HitPattern::MISSING_INNER_HITS.

Referenced by GsfEleMissingHitsCut().

34  {
35  constexpr auto missingHitType = reco::HitPattern::MISSING_INNER_HITS;
36  reco::GsfElectronPtr ele(cand);
37  const unsigned mHits = ele->gsfTrack()->hitPattern().numberOfLostHits(missingHitType);
38  return mHits;
39 }
#define constexpr

Member Data Documentation

const double GsfEleMissingHitsCut::_barrelCutOff
private

Definition at line 21 of file GsfEleMissingHitsCut.cc.

Referenced by operator()().

const unsigned GsfEleMissingHitsCut::_maxMissingHitsEB
private

Definition at line 20 of file GsfEleMissingHitsCut.cc.

Referenced by operator()().

const unsigned GsfEleMissingHitsCut::_maxMissingHitsEE
private

Definition at line 20 of file GsfEleMissingHitsCut.cc.

Referenced by operator()().