Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:13:06

0001 //-------------------------------------------------
0002 //
0003 //   Class: DTRPCBxCorrection
0004 //
0005 //   DTRPCBxCorrection
0006 //
0007 //
0008 //   Author :
0009 //   G. Flouris               U Ioannina    Mar. 2015
0010 //   mod.: g karathanasis
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   ///Return Output PhContainer
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   //  L1MuTMChambPhContainer m_phiDTDigis;
0044   //  L1MuTMChambPhContainer m_phiRPCDigis;
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