00001 //------------------------------------------------- 00002 // 00013 // 00014 //-------------------------------------------------- 00015 #ifndef L1MUDT_TF_CONFIG_H 00016 #define L1MUDT_TF_CONFIG_H 00017 00018 //--------------- 00019 // C++ Headers -- 00020 //--------------- 00021 00022 #include <string> 00023 00024 //---------------------- 00025 // Base Class Headers -- 00026 //---------------------- 00027 00028 //------------------------------------ 00029 // Collaborating Class Declarations -- 00030 //------------------------------------ 00031 00032 #include <FWCore/ParameterSet/interface/ParameterSet.h> 00033 #include <FWCore/Utilities/interface/InputTag.h> 00034 00035 // --------------------- 00036 // -- Class Interface -- 00037 // --------------------- 00038 00039 class L1MuDTTFConfig { 00040 00041 public: 00042 00044 L1MuDTTFConfig(const edm::ParameterSet & ps); 00045 00047 virtual ~L1MuDTTFConfig(); 00048 00049 static edm::InputTag getDTDigiInputTag() { return m_DTDigiInputTag; } 00050 static edm::InputTag getCSCTrSInputTag() { return m_CSCTrSInputTag; } 00051 00052 static bool Debug() { return m_debug; } 00053 static bool Debug(int level) { return (m_debug && m_dbgLevel >= level); } 00054 00055 static void setDebugLevel(int level) { m_dbgLevel = level; } 00056 static int getDebugLevel() { return m_dbgLevel; } 00057 00058 static int getBxMin() { return m_BxMin; } 00059 static int getBxMax() { return m_BxMax; } 00060 static bool overlap() { return m_overlap; } 00061 static int getExtTSFilter() { return m_extTSFilter; } 00062 static bool getopenLUTs() { return m_openLUTs; } 00063 static bool getUseEX21() { return m_useEX21; } 00064 static bool getEtaTF() { return m_etaTF; } 00065 static bool getEtaCanc() { return m_etacanc; } 00066 static bool getTSOutOfTimeFilter() { return m_TSOutOfTimeFilter; } 00067 static int getTSOutOfTimeWindow() { return m_TSOutOfTimeWindow; } 00068 static int getNbitsExtPhi() { return m_NbitsExtPhi; } 00069 static int getNbitsExtPhib() { return m_NbitsExtPhib; } 00070 static int getNbitsPtaPhi() { return m_NbitsPtaPhi; } 00071 static int getNbitsPtaPhib() { return m_NbitsPtaPhib; } 00072 static int getNbitsPhiPhi() { return m_NbitsPhiPhi; } 00073 static int getNbitsPhiPhib() { return m_NbitsPhiPhib; } 00074 00075 private: 00076 00077 void setDefaults(); 00078 00079 private: 00080 00081 const edm::ParameterSet* m_ps; 00082 00083 static edm::InputTag m_DTDigiInputTag; 00084 static edm::InputTag m_CSCTrSInputTag; 00085 00086 static bool m_debug; // debug flag 00087 static int m_dbgLevel; // debug level 00088 00089 static bool m_overlap; // barrel-endcap overlap region 00090 00091 static int m_BxMin; 00092 static int m_BxMax; 00093 00094 static int m_extTSFilter; // Extrapolation TS-Quality Filter 00095 00096 static bool m_openLUTs; // use open LUTs 00097 00098 static bool m_useEX21; // perform EX21 extrapolation (cross-check EX12) 00099 00100 static bool m_etaTF; // use eta track finder 00101 00102 static bool m_etacanc; // use etaFlag for CSC segment cancellation 00103 00104 static bool m_TSOutOfTimeFilter; // perform out-of-time TS cancellation 00105 static int m_TSOutOfTimeWindow; // phi window size to be checked 00106 00107 static int m_NbitsExtPhi; // precision for extrapolation 00108 static int m_NbitsExtPhib; 00109 static int m_NbitsPtaPhi; // precision for pt-assignment 00110 static int m_NbitsPtaPhib; 00111 static int m_NbitsPhiPhi; // precision for phi-assignment 00112 static int m_NbitsPhiPhib; 00113 00114 }; 00115 00116 #endif