Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2025-01-31 02:19:52

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