00001 #ifndef RecoTauTag_TauTagTools_PFTauQualityCutWrapper_h 00002 #define RecoTauTag_TauTagTools_PFTauQualityCutWrapper_h 00003 00004 #include "RecoTauTag/TauTagTools/interface/TauTagTools.h" 00005 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00006 #include "DataFormats/TauReco/interface/PFTau.h" 00007 00008 class PFTauQualityCutWrapper { 00009 public: 00010 PFTauQualityCutWrapper(const edm::ParameterSet& pset) 00011 { 00012 isoQCuts.fill(pset.getParameter<edm::ParameterSet>("isolationQualityCuts")); 00013 signalQCuts.fill(pset.getParameter<edm::ParameterSet>("signalQualityCuts")); 00014 } 00015 00016 struct QualityCutSet { 00017 // charged hadron & track cuts 00018 bool useTracksInsteadOfPF; 00019 double minTrackPt; 00020 double maxTrackChi2; 00021 uint32_t minTrackPixelHits; 00022 uint32_t minTrackHits; 00023 double maxTransverseImpactParameter; 00024 double maxDeltaZ; 00025 // gamma cuts 00026 double minGammaEt; 00027 void fill(const edm::ParameterSet& pset) { 00028 useTracksInsteadOfPF = pset.getParameter<bool>("useTracksInsteadOfPFHadrons"); 00029 minTrackPt = pset.getParameter<double>("minTrackPt"); 00030 maxTrackChi2 = pset.getParameter<double>("maxTrackChi2"); 00031 minTrackPixelHits = pset.getParameter<uint32_t>("minTrackPixelHits"); 00032 minTrackHits = pset.getParameter<uint32_t>("minTrackHits"); 00033 maxTransverseImpactParameter = pset.getParameter<double>("maxTransverseImpactParameter"); 00034 maxDeltaZ = pset.getParameter<double>("maxDeltaZ"); 00035 minGammaEt = pset.getParameter<double>("minGammaEt"); 00036 } 00037 }; 00038 00040 void isolationChargedObjects(const reco::PFTau&, const reco::Vertex&, std::vector<reco::LeafCandidate>&); 00042 void isolationGammaObjects(const reco::PFTau&, std::vector<reco::LeafCandidate>&); 00043 00045 void signalChargedObjects(const reco::PFTau&, const reco::Vertex&, std::vector<reco::LeafCandidate>&); 00047 void signalGammaObjects(const reco::PFTau&, std::vector<reco::LeafCandidate>&); 00048 00049 private: 00050 QualityCutSet isoQCuts; 00051 QualityCutSet signalQCuts; 00052 }; 00053 00054 #endif