Go to the documentation of this file. 1 #ifndef RecoTauTag_RecoTau_RecoTauQualityCuts_h
2 #define RecoTauTag_RecoTau_RecoTauQualityCuts_h
65 template <
typename Coll>
68 for (
auto const&
track : coll) {
79 template <
typename CandRefType>
85 template <
typename Coll>
88 for (
auto const&
cand : refcoll) {
bool filterNeutralHadronCand(const reco::Candidate &cand) const
double maxDeltaZToLeadTrack_
bool filterCandRef(const CandRefType &cand) const
Filter a Candidate held by a smart pointer or Ref.
bool filterTrack_(const reco::Track *track) const
InputIterator leadCand(InputIterator begin, InputIterator end)
std::vector< CandQCutFunc > CandQCutFuncCollection
bool filterCand(const reco::Candidate &cand) const
Filter a single Candidate.
const reco::Track * leadTrack_
std::vector< TrackQCutFunc > TrackQCutFuncCollection
reco::CandidatePtr CandRefType
Coll filterTracks(const Coll &coll, bool invert=false) const
Filter a collection of Tracks.
void setPV(const reco::VertexRef &vtx)
Update the primary vertex.
std::function< bool(const Candidate &)> CandQCutFunc
bool filterChargedCand(const reco::Candidate &cand) const
or a single charged candidate
std::function< bool(const TrackBaseRef &)> TrackQCutFunc
Coll filterCandRefs(const Coll &refcoll, bool invert=false) const
Filter a ref vector of Candidates.
static void fillDescriptions(edm::ParameterSetDescription &descriptions)
Declare all parameters read from python config file.
bool filterTrack(const reco::TrackBaseRef &track) const
Filter a single Track.
std::pair< edm::ParameterSet, edm::ParameterSet > factorizePUQCuts(const edm::ParameterSet &inputSet)
double maxTransverseImpactParameter_
RecoTauQualityCuts(const edm::ParameterSet &qcuts)
void setLeadTrack(const reco::Track &leadTrack)
Update the leading track.
bool filterGammaCand(const reco::Candidate &cand) const
bool filterCandByType(const reco::Candidate &cand) const
std::map< int, CandQCutFuncCollection > CandQCutFuncMap
double minNeutralHadronEt_
double minTrackVertexWeight_