CMS 3D CMS Logo

Functions

reco::tau::qcuts Namespace Reference

Functions

bool AND (const PFCandidate &cand, const RecoTauQualityCuts::QCutFuncCollection &cuts)
bool etMin (const PFCandidate &cand, double cut)
bool mapAndCutByType (const PFCandidate &cand, const RecoTauQualityCuts::QCutFuncMap &funcMap)
bool ptMin (const PFCandidate &cand, double cut)
bool trkChi2 (const PFCandidate &cand, double cut)
bool trkLongitudinalImpactParameter (const PFCandidate &cand, const reco::VertexRef *pv, double cut)
bool trkPixelHits (const PFCandidate &cand, int cut)
bool trkTrackerHits (const PFCandidate &cand, int cut)
bool trkTransverseImpactParameter (const PFCandidate &cand, const reco::VertexRef *pv, double cut)

Function Documentation

bool reco::tau::qcuts::AND ( const PFCandidate &  cand,
const RecoTauQualityCuts::QCutFuncCollection &  cuts 
)
bool reco::tau::qcuts::etMin ( const PFCandidate &  cand,
double  cut 
)
bool reco::tau::qcuts::mapAndCutByType ( const PFCandidate &  cand,
const RecoTauQualityCuts::QCutFuncMap &  funcMap 
)

Definition at line 76 of file RecoTauQualityCuts.cc.

References AND(), and reco::PFCandidate::particleId().

Referenced by reco::tau::RecoTauQualityCuts::RecoTauQualityCuts().

                                                                   {
  // Find the cuts that for this particle type
  RecoTauQualityCuts::QCutFuncMap::const_iterator cuts =
      funcMap.find(cand.particleId());
  // Return false if we dont' know how to deal w/ this particle type
  if (cuts == funcMap.end())
    return false;
  else
    // Otherwise AND all the cuts
    return AND(cand, cuts->second);
}
bool reco::tau::qcuts::ptMin ( const PFCandidate &  cand,
double  cut 
)

Definition at line 12 of file RecoTauQualityCuts.cc.

References align_tpl::cut, and reco::LeafCandidate::pt().

Referenced by reco::tau::RecoTauQualityCuts::RecoTauQualityCuts().

                                                {
  return cand.pt() > cut;
}
bool reco::tau::qcuts::trkChi2 ( const PFCandidate &  cand,
double  cut 
)

Definition at line 59 of file RecoTauQualityCuts.cc.

References align_tpl::cut, and reco::PFCandidate::trackRef().

Referenced by reco::tau::RecoTauQualityCuts::RecoTauQualityCuts().

                                                  {
  TrackRef trk = cand.trackRef();
  if (!trk) return false;
  return trk->normalizedChi2() <= cut;
}
bool reco::tau::qcuts::trkLongitudinalImpactParameter ( const PFCandidate &  cand,
const reco::VertexRef pv,
double  cut 
)

Definition at line 46 of file RecoTauQualityCuts.cc.

References abs, align_tpl::cut, edm::Ref< C, T, F >::isNull(), and reco::PFCandidate::trackRef().

Referenced by reco::tau::RecoTauQualityCuts::RecoTauQualityCuts().

                                                {
  if (pv->isNull()) {
    edm::LogError("QCutsNoPrimaryVertex") << "Primary vertex Ref in " <<
        "RecoTauQualityCuts is invalid. - trkLongitudinalImpactParameter";
    return false;
  }
  TrackRef trk = cand.trackRef();
  if (!trk) return false;
  return std::abs(trk->dz((*pv)->position())) <= cut;
}
bool reco::tau::qcuts::trkPixelHits ( const PFCandidate &  cand,
int  cut 
)

Definition at line 20 of file RecoTauQualityCuts.cc.

References align_tpl::cut, and reco::PFCandidate::trackRef().

Referenced by reco::tau::RecoTauQualityCuts::RecoTauQualityCuts().

                                                    {
  // For some reason, the number of hits is signed
  TrackRef trk = cand.trackRef();
  if (!trk) return false;
  return trk->hitPattern().numberOfValidPixelHits() >= cut;
}
bool reco::tau::qcuts::trkTrackerHits ( const PFCandidate &  cand,
int  cut 
)

Definition at line 27 of file RecoTauQualityCuts.cc.

References align_tpl::cut, and reco::PFCandidate::trackRef().

Referenced by reco::tau::RecoTauQualityCuts::RecoTauQualityCuts().

                                                      {
  TrackRef trk = cand.trackRef();
  if (!trk) return false;
  return trk->hitPattern().numberOfValidHits() >= cut;
}
bool reco::tau::qcuts::trkTransverseImpactParameter ( const PFCandidate &  cand,
const reco::VertexRef pv,
double  cut 
)

Definition at line 33 of file RecoTauQualityCuts.cc.

References abs, align_tpl::cut, edm::Ref< C, T, F >::isNull(), and reco::PFCandidate::trackRef().

Referenced by reco::tau::RecoTauQualityCuts::RecoTauQualityCuts().

                                              {
  if (pv->isNull()) {
    edm::LogError("QCutsNoPrimaryVertex") << "Primary vertex Ref in " <<
        "RecoTauQualityCuts is invalid. - trkTransverseImpactParameter";
    return false;
  }
  TrackRef trk = cand.trackRef();
  if (!trk) return false;
  return std::abs(trk->dxy((*pv)->position())) <= cut;
}