File indexing completed on 2024-04-06 12:04:47
0001 #ifndef MuonReco_MuonChamberMatch_h
0002 #define MuonReco_MuonChamberMatch_h
0003
0004 #include "DataFormats/DetId/interface/DetId.h"
0005 #include "DataFormats/MuonReco/interface/MuonSegmentMatch.h"
0006 #include "DataFormats/MuonReco/interface/MuonRPCHitMatch.h"
0007 #include "DataFormats/MuonReco/interface/MuonGEMHitMatch.h"
0008 #include <vector>
0009
0010 namespace reco {
0011 class MuonChamberMatch {
0012 public:
0013 std::vector<reco::MuonSegmentMatch> segmentMatches;
0014 std::vector<reco::MuonSegmentMatch> gemMatches;
0015 std::vector<reco::MuonGEMHitMatch> gemHitMatches;
0016 std::vector<reco::MuonSegmentMatch> me0Matches;
0017 std::vector<reco::MuonSegmentMatch> truthMatches;
0018 std::vector<reco::MuonRPCHitMatch> rpcMatches;
0019 float edgeX;
0020 float edgeY;
0021 float x;
0022 float y;
0023 float xErr;
0024 float yErr;
0025 float dXdZ;
0026 float dYdZ;
0027 float dXdZErr;
0028 float dYdZErr;
0029 DetId id;
0030
0031 int nDigisInRange;
0032
0033 int detector() const { return id.subdetId(); }
0034 int station() const;
0035
0036 std::pair<float, float> getDistancePair(float edgeX, float edgeY, float xErr, float yErr) const;
0037 float dist() const { return getDistancePair(edgeX, edgeY, xErr, yErr).first; }
0038 float distErr() const {
0039 return getDistancePair(edgeX, edgeY, xErr, yErr).second;
0040 }
0041 };
0042 }
0043
0044 #endif