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 {
32  class ParameterSet;
33 }
34 
35 // ---------------------
36 // -- Class Interface --
37 // ---------------------
38 
40 public:
41  typedef std::pair<const Trajectory*, reco::TrackRef> TrackCand;
42 
45 
47  virtual ~GlobalMuonTrackMatcher();
48 
50  bool matchTight(const TrackCand& sta, const TrackCand& track) const;
51 
55  double match(const TrackCand& sta, const TrackCand& track, int matchOption = 0, int surfaceOption = 1) const;
56 
58  std::vector<TrackCand> match(const TrackCand& sta, const std::vector<TrackCand>& tracks) const;
59 
61  std::vector<TrackCand>::const_iterator matchOne(const TrackCand& sta, const std::vector<TrackCand>& tracks) const;
62 
63  double match_R_IP(const TrackCand&, const TrackCand&) const;
64  double match_D(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
65  double match_d(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
66  double match_Rmom(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
67  double match_Rpos(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
68  double match_Chi2(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
69  double match_dist(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
70 
71  std::pair<TrajectoryStateOnSurface, TrajectoryStateOnSurface> convertToTSOSTk(const TrackCand&,
72  const TrackCand&) const;
73  std::pair<TrajectoryStateOnSurface, TrajectoryStateOnSurface> convertToTSOSMuHit(const TrackCand&,
74  const TrackCand&) const;
75  std::pair<TrajectoryStateOnSurface, TrajectoryStateOnSurface> convertToTSOSTkHit(const TrackCand&,
76  const TrackCand&) const;
77  bool samePlane(const TrajectoryStateOnSurface&, const TrajectoryStateOnSurface&) const;
78 
79 private:
80  double theMinP;
81  double theMinPt;
85  double theChi2_1;
86  double theChi2_2;
87  double theChi2_3;
88  double theLocChi2;
89  double theDeltaD_1;
90  double theDeltaD_2;
91  double theDeltaD_3;
92  double theDeltaR_1;
93  double theDeltaR_2;
94  double theDeltaR_3;
95  double theQual_1;
96  double theQual_2;
97  double theQual_3;
98 
101 };
102 
103 #endif
std::pair< const Trajectory *, reco::TrackRef > TrackCand
const MuonServiceProxy * theService
HLT enums.
std::string match(BranchDescription const &a, BranchDescription const &b, std::string const &fileName)