![]() |
![]() |
00001 #ifndef RecoMuon_MuonSeedGenerator_MuonSeedPtExtractor_H 00002 #define RecoMuon_MuonSeedGenerator_MuonSeedPtExtractor_H 00003 00007 #include "RecoMuon/TransientTrackingRecHit/interface/MuonTransientTrackingRecHit.h" 00008 00009 00010 namespace edm {class ParameterSet;} 00011 00012 class MuonSeedPtExtractor { 00013 00014 public: 00016 MuonSeedPtExtractor(const edm::ParameterSet&); 00017 00019 ~MuonSeedPtExtractor(); 00020 00021 00022 std::vector<double> pT_extract(MuonTransientTrackingRecHit::ConstMuonRecHitPointer firstHit, 00023 MuonTransientTrackingRecHit::ConstMuonRecHitPointer secondHit) const; 00024 00025 std::vector<double> getPt(const std::vector<double> & vPara, double eta, double dPhi ) const; 00026 00027 std::vector<double> dt12() const { return DT12; } 00028 std::vector<double> dt13() const { return DT13; } 00029 std::vector<double> dt14() const { return DT14; } 00030 std::vector<double> dt23() const { return DT23; } 00031 std::vector<double> dt24() const { return DT24; } 00032 std::vector<double> dt34() const { return DT34; } 00033 00034 std::vector<double> csc01() const { return CSC01; } 00035 std::vector<double> csc12() const { return CSC12; } 00036 std::vector<double> csc02() const { return CSC02; } 00037 std::vector<double> csc13() const { return CSC13; } 00038 std::vector<double> csc03() const { return CSC03; } 00039 std::vector<double> csc14() const { return CSC14; } 00040 std::vector<double> csc23() const { return CSC23; } 00041 std::vector<double> csc24() const { return CSC24; } 00042 std::vector<double> csc34() const { return CSC34; } 00043 00044 std::vector<double> ol1213() const { return OL1213; } 00045 std::vector<double> ol1222() const { return OL1222; } 00046 std::vector<double> ol1232() const { return OL1232; } 00047 std::vector<double> ol2213() const { return OL2213; } 00048 std::vector<double> ol2222() const { return OL2222; } 00049 00050 std::vector<double> sme11() const { return SME11; } 00051 std::vector<double> sme12() const { return SME12; } 00052 std::vector<double> sme13() const { return SME13; } 00053 std::vector<double> sme21() const { return SME21; } 00054 std::vector<double> sme22() const { return SME22; } 00055 std::vector<double> sme31() const { return SME31; } 00056 std::vector<double> sme32() const { return SME32; } 00057 std::vector<double> sme41() const { return SME41; } 00058 00059 std::vector<double> smb10() const { return SMB10; } 00060 std::vector<double> smb11() const { return SMB11; } 00061 std::vector<double> smb12() const { return SMB12; } 00062 std::vector<double> smb20() const { return SMB20; } 00063 std::vector<double> smb21() const { return SMB21; } 00064 std::vector<double> smb22() const { return SMB22; } 00065 std::vector<double> smb30() const { return SMB30; } 00066 std::vector<double> smb31() const { return SMB31; } 00067 std::vector<double> smb32() const { return SMB32; } 00068 00069 private: 00070 int stationCode(MuonTransientTrackingRecHit::ConstMuonRecHitPointer hit) const; 00071 // seed parameters vectors 00072 std::vector<double> DT12; 00073 std::vector<double> DT13; 00074 std::vector<double> DT14; 00075 std::vector<double> DT23; 00076 std::vector<double> DT24; 00077 std::vector<double> DT34; 00078 00079 std::vector<double> CSC01; 00080 std::vector<double> CSC12; 00081 std::vector<double> CSC02; 00082 std::vector<double> CSC13; 00083 std::vector<double> CSC03; 00084 std::vector<double> CSC14; 00085 std::vector<double> CSC23; 00086 std::vector<double> CSC24; 00087 std::vector<double> CSC34; 00088 00089 std::vector<double> OL1213; 00090 std::vector<double> OL1222; 00091 std::vector<double> OL1232; 00092 std::vector<double> OL2213; 00093 std::vector<double> OL2222; 00094 00095 std::vector<double> SME11; 00096 std::vector<double> SME12; 00097 std::vector<double> SME13; 00098 std::vector<double> SME21; 00099 std::vector<double> SME22; 00100 std::vector<double> SME31; 00101 std::vector<double> SME32; 00102 std::vector<double> SME41; 00103 00104 std::vector<double> SMB10; 00105 std::vector<double> SMB11; 00106 std::vector<double> SMB12; 00107 std::vector<double> SMB20; 00108 std::vector<double> SMB21; 00109 std::vector<double> SMB22; 00110 std::vector<double> SMB30; 00111 std::vector<double> SMB31; 00112 std::vector<double> SMB32; 00113 00114 00115 }; 00116 #endif