Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:24:32

0001 #ifndef RecoBTag_SecondaryVertex_TrackSelector_h
0002 #define RecoBTag_SecondaryVertex_TrackSelector_h
0003 
0004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0005 
0006 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0007 #include "DataFormats/JetReco/interface/Jet.h"
0008 #include "DataFormats/TrackReco/interface/Track.h"
0009 #include "DataFormats/Candidate/interface/CandidateFwd.h"
0010 #include "DataFormats/BTauReco/interface/IPTagInfo.h"
0011 
0012 namespace reco {
0013 
0014   class TrackSelector {
0015   public:
0016     TrackSelector(const edm::ParameterSet &params);
0017     ~TrackSelector() {}
0018 
0019     bool operator()(const reco::Track &track,
0020                     const reco::btag::TrackIPData &ipData,
0021                     const reco::Jet &jet,
0022                     const GlobalPoint &pv) const;
0023 
0024     bool operator()(const reco::CandidatePtr &track,
0025                     const reco::btag::TrackIPData &ipData,
0026                     const reco::Jet &jet,
0027                     const GlobalPoint &pv) const;
0028 
0029     inline bool operator()(const reco::TrackRef &track,
0030                            const reco::btag::TrackIPData &ipData,
0031                            const reco::Jet &jet,
0032                            const GlobalPoint &pv) const {
0033       return (*this)(*track, ipData, jet, pv);
0034     }
0035 
0036   private:
0037     bool trackSelection(const reco::Track &track,
0038                         const reco::btag::TrackIPData &ipData,
0039                         const reco::Jet &jet,
0040                         const GlobalPoint &pv) const;
0041 
0042     bool selectQuality;
0043     reco::TrackBase::TrackQuality quality;
0044     unsigned int minPixelHits;
0045     unsigned int minTotalHits;
0046     double minPt;
0047     double maxNormChi2;
0048     double maxJetDeltaR;
0049     double maxDistToAxis;
0050     double maxDecayLen;
0051     double sip2dValMin;
0052     double sip2dValMax;
0053     double sip2dSigMin;
0054     double sip2dSigMax;
0055     double sip3dValMin;
0056     double sip3dValMax;
0057     double sip3dSigMin;
0058     double sip3dSigMax;
0059     bool useVariableJTA_;
0060     reco::btag::variableJTAParameters varJTApars;
0061   };
0062 
0063 }  // namespace reco
0064 
0065 #endif  // RecoBTag_SecondaryVertex_TrackSelector_h