File indexing completed on 2023-03-17 11:13:06
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #ifndef L1T_TwinMux_DTRPCBxCorrection_H
0014 #define L1T_TwinMux_DTRPCBxCorrection_H
0015
0016 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambPhContainer.h"
0017 #include "DataFormats/L1DTTrackFinder/interface/L1MuDTChambThContainer.h"
0018
0019 #include "CondFormats/L1TObjects/interface/L1TTwinMuxParams.h"
0020 #include "L1Trigger/L1TTwinMux/interface/L1MuTMChambPhContainer.h"
0021
0022 #include <iostream>
0023
0024 class DTRPCBxCorrection {
0025 public:
0026 DTRPCBxCorrection(L1MuDTChambPhContainer, L1MuDTChambPhContainer);
0027 ~DTRPCBxCorrection(){};
0028
0029 void run(const L1TTwinMuxParams&);
0030
0031
0032 L1MuDTChambPhContainer getDTContainer() { return m_dt_tsshifted; }
0033
0034 static int nRPCHits(L1MuTMChambPhContainer inCon, int bx, int wh, int sec, int st);
0035 static int nRPCHits(L1MuDTChambPhContainer inCon, int bx, int wh, int sec, int st);
0036 static int deltaPhi(int dt_phi, int rpc_strip);
0037
0038 private:
0039 int sign(float);
0040 inline int flipBit(int inv) { return (inv ^ 1); };
0041 void BxCorrection(int track_seg);
0042
0043
0044
0045 L1MuDTChambPhContainer m_phiDTDigis;
0046 L1MuDTChambPhContainer m_phiRPCDigis;
0047 L1MuDTChambPhContainer m_dt_tsshifted;
0048
0049 std::vector<L1MuDTChambPhDigi> m_l1ttma_out;
0050
0051 int m_QualityLimit;
0052 int m_DphiWindow;
0053 };
0054 #endif