Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 //-------------------------------------------------
0002 //
0003 /**  \class L1MuBMTFConfig
0004  *
0005  *   Configuration parameters for L1MuBMTrackFinder
0006  *
0007  *
0008  *
0009  *   N. Neumeister            CERN EP
0010  */
0011 //
0012 //--------------------------------------------------
0013 #ifndef L1MUBM_TF_CONFIG_H
0014 #define L1MUBM_TF_CONFIG_H
0015 
0016 //---------------
0017 // C++ Headers --
0018 //---------------
0019 
0020 #include <string>
0021 
0022 //----------------------
0023 // Base Class Headers --
0024 //----------------------
0025 
0026 //------------------------------------
0027 // Collaborating Class Declarations --
0028 //------------------------------------
0029 
0030 #include "L1Trigger/L1TMuonBarrel/interface/L1TMuonBarrelParamsAllPublic.h"
0031 #include <FWCore/ParameterSet/interface/ParameterSet.h>
0032 #include <FWCore/Utilities/interface/InputTag.h>
0033 #include "CondFormats/L1TObjects/interface/L1TMuonBarrelParams.h"
0034 
0035 //              ---------------------
0036 //              -- Class Interface --
0037 //              ---------------------
0038 
0039 class L1MuBMTFConfig {
0040 public:
0041   /// constructor
0042   L1MuBMTFConfig(const edm::ParameterSet& ps);
0043 
0044   void setDefaultsES(const L1TMuonBarrelParams&);
0045 
0046   /// destructor
0047   virtual ~L1MuBMTFConfig();
0048 
0049   static edm::InputTag getBMDigiInputTag() { return m_BMDigiInputTag; }
0050   static edm::InputTag getBMThetaDigiInputTag() { return m_BMThetaDigiInputTag; }
0051 
0052   static bool Debug() { return m_debug; }
0053   static bool Debug(int level) { return (m_debug && m_dbgLevel >= level); }
0054 
0055   static void setDebugLevel(int level) { m_dbgLevel = level; }
0056   static int getDebugLevel() { return m_dbgLevel; }
0057 
0058   static int getBxMin() { return m_BxMin; }
0059   static int getBxMax() { return m_BxMax; }
0060   static int getExtTSFilter() { return m_extTSFilter; }
0061   static bool getopenLUTs() { return m_openLUTs; }
0062   static bool getUseEX21() { return m_useEX21; }
0063   static bool getEtaTF() { return m_etaTF; }
0064   static bool getTSOutOfTimeFilter() { return m_TSOutOfTimeFilter; }
0065   static int getTSOutOfTimeWindow() { return m_TSOutOfTimeWindow; }
0066   static int getNbitsExtPhi() { return m_NbitsExtPhi; }
0067   static int getNbitsExtPhib() { return m_NbitsExtPhib; }
0068   static int getNbitsPtaPhi() { return m_NbitsPtaPhi; }
0069   static int getNbitsPtaPhib() { return m_NbitsPtaPhib; }
0070   static int getNbitsPhiPhi() { return m_NbitsPhiPhi; }
0071   static int getNbitsPhiPhib() { return m_NbitsPhiPhib; }
0072 
0073 private:
0074   void setDefaults(edm::ParameterSet const&);
0075 
0076 private:
0077   static edm::InputTag m_BMDigiInputTag;
0078   static edm::InputTag m_BMThetaDigiInputTag;
0079 
0080   static bool m_debug;    // debug flag
0081   static int m_dbgLevel;  // debug level
0082 
0083   static int m_BxMin;
0084   static int m_BxMax;
0085 
0086   static int m_extTSFilter;  // Extrapolation TS-Quality Filter
0087 
0088   static bool m_openLUTs;  // use open LUTs
0089 
0090   static bool m_useEX21;  // perform EX21 extrapolation (cross-check EX12)
0091 
0092   static bool m_etaTF;  // use eta track finder
0093 
0094   static bool m_TSOutOfTimeFilter;  // perform out-of-time TS cancellation
0095   static int m_TSOutOfTimeWindow;   // phi window size to be checked
0096 
0097   static int m_NbitsExtPhi;  // precision for extrapolation
0098   static int m_NbitsExtPhib;
0099   static int m_NbitsPtaPhi;  // precision for pt-assignment
0100   static int m_NbitsPtaPhib;
0101   static int m_NbitsPhiPhi;  // precision for phi-assignment
0102   static int m_NbitsPhiPhib;
0103 };
0104 
0105 #endif