Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:20:55

0001 #ifndef L1TMuonEndCap_PtAssignmentEngineAux_h
0002 #define L1TMuonEndCap_PtAssignmentEngineAux_h
0003 
0004 #include <cstdint>
0005 #include <cstdlib>
0006 #include <cmath>
0007 #include <vector>
0008 
0009 #include "L1Trigger/L1TMuonEndCap/interface/Common.h"
0010 
0011 // This class (and its daughters) should never own any data members. It should have only functions.
0012 
0013 class PtAssignmentEngineAux {
0014 public:
0015   // Functions for GMT quantities
0016   int getGMTPt(float pt) const;
0017   int getGMTPtDxy(float pt) const;
0018 
0019   float getPtFromGMTPt(int gmt_pt) const;
0020   float getPtFromGMTPtDxy(int gmt_pt_dxy) const;
0021 
0022   int getGMTPhi(int phi) const;
0023   int getGMTPhiV2(int phi) const;
0024 
0025   int getGMTEta(int theta, int endcap) const;
0026 
0027   int getGMTQuality(int mode, int theta, bool promoteMode7, int version) const;
0028 
0029   std::pair<int, int> getGMTCharge(int mode, const std::vector<int>& phidiffs) const;
0030 
0031   int getGMTDxy(float dxy) const;
0032 };
0033 
0034 #endif