CMS 3D CMS Logo

GlobalMuonTrackMatcher.h
Go to the documentation of this file.
1 #ifndef RecoMuon_GlobalTrackingTools_GlobalMuonTrackMatcher_H
2 #define RecoMuon_GlobalTrackingTools_GlobalMuonTrackMatcher_H
3 
26 
28 class MuonServiceProxy;
29 class Trajectory;
30 
31 namespace edm {class ParameterSet;}
32 
33 // ---------------------
34 // -- Class Interface --
35 // ---------------------
36 
38 
39  public:
40 
41  typedef std::pair<const Trajectory*,reco::TrackRef> TrackCand;
42 
45  const MuonServiceProxy*);
46 
48  virtual ~GlobalMuonTrackMatcher();
49 
51  bool matchTight(const TrackCand& sta,
52  const TrackCand& track) const;
53 
57  double match(const TrackCand& sta,
58  const TrackCand& track,
59  int matchOption = 0,
60  int surfaceOption = 1) const;
61 
63  std::vector<TrackCand> match(const TrackCand& sta,
64  const std::vector<TrackCand>& tracks) const;
65 
67  std::vector<TrackCand>::const_iterator matchOne(const TrackCand& sta,
68  const std::vector<TrackCand>& tracks) const;
69 
70  double match_R_IP(const TrackCand&, const TrackCand&) const;
71  double match_D(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
72  double match_d(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
73  double match_Rmom(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
74  double match_Rpos(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
75  double match_Chi2(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
76  double match_dist(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
77 
78  std::pair<TrajectoryStateOnSurface,TrajectoryStateOnSurface> convertToTSOSTk(const TrackCand&, const TrackCand&) const;
79  std::pair<TrajectoryStateOnSurface,TrajectoryStateOnSurface> convertToTSOSMuHit(const TrackCand&, const TrackCand&) const;
80  std::pair<TrajectoryStateOnSurface,TrajectoryStateOnSurface> convertToTSOSTkHit(const TrackCand&, const TrackCand&) const;
81  bool samePlane(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
82 
83  private:
84 
85  double theMinP;
86  double theMinPt;
90  double theChi2_1;
91  double theChi2_2;
92  double theChi2_3;
93  double theLocChi2;
94  double theDeltaD_1;
95  double theDeltaD_2;
96  double theDeltaD_3;
97  double theDeltaR_1;
98  double theDeltaR_2;
99  double theDeltaR_3;
100  double theQual_1;
101  double theQual_2;
102  double theQual_3;
103 
106 
107 };
108 
109 #endif
const MuonServiceProxy * theService
HLT enums.
std::pair< const Trajectory *, reco::TrackRef > TrackCand
std::string match(BranchDescription const &a, BranchDescription const &b, std::string const &fileName)