00001 #ifndef CondFormats_L1TObjects_L1GtPsbConfig_h 00002 #define CondFormats_L1TObjects_L1GtPsbConfig_h 00003 00020 // system include files 00021 #include <vector> 00022 #include <iosfwd> 00023 00024 // user include files 00025 #include "CondFormats/L1TObjects/interface/L1GtFwd.h" 00026 00027 // forward declarations 00028 00029 // class declaration 00030 class L1GtPsbConfig 00031 { 00032 00033 public: 00034 00036 L1GtPsbConfig(); 00037 00039 L1GtPsbConfig(const int&); 00040 00042 virtual ~L1GtPsbConfig(); 00043 00045 L1GtPsbConfig(const L1GtPsbConfig&); 00046 00048 L1GtPsbConfig& operator=(const L1GtPsbConfig&); 00049 00051 bool operator==(const L1GtPsbConfig&) const; 00052 00054 bool operator!=(const L1GtPsbConfig&) const; 00055 00057 bool operator<(const L1GtPsbConfig&) const; 00058 00059 public: 00060 00062 static const int PsbNumberLvdsGroups; 00063 00065 static const int PsbSerLinkNumberChannels; 00066 00067 public: 00068 00070 inline const int gtBoardSlot() const 00071 { 00072 return m_gtBoardSlot; 00073 } 00074 00075 void setGtBoardSlot(const int&); 00076 00078 inline const bool gtPsbCh0SendLvds() const 00079 { 00080 return m_gtPsbCh0SendLvds; 00081 } 00082 00083 void setGtPsbCh0SendLvds(const bool&); 00084 00086 inline const bool gtPsbCh1SendLvds() const 00087 { 00088 return m_gtPsbCh1SendLvds; 00089 } 00090 00091 void setGtPsbCh1SendLvds(const bool&); 00092 00094 inline const std::vector<bool>& gtPsbEnableRecLvds() const 00095 { 00096 return m_gtPsbEnableRecLvds; 00097 } 00098 00099 void setGtPsbEnableRecLvds(const std::vector<bool>&); 00100 00102 inline const std::vector<bool>& gtPsbEnableRecSerLink() const 00103 { 00104 return m_gtPsbEnableRecSerLink; 00105 } 00106 00107 void setGtPsbEnableRecSerLink(const std::vector<bool>&); 00108 00110 void print(std::ostream& myCout) const; 00111 00113 friend std::ostream& operator<<(std::ostream&, const L1GtPsbConfig&); 00114 00115 private: 00116 00118 int m_gtBoardSlot; 00119 00121 bool m_gtPsbCh0SendLvds; 00122 00124 bool m_gtPsbCh1SendLvds; 00125 00128 std::vector<bool> m_gtPsbEnableRecLvds; 00129 00131 std::vector<bool> m_gtPsbEnableRecSerLink; 00132 00133 }; 00134 00135 #endif /*CondFormats_L1TObjects_L1GtPsbConfig_h*/