File indexing completed on 2024-04-06 12:22:14
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef DT_CONFIG_SECTCOLL_H
0015 #define DT_CONFIG_SECTCOLL_H
0016
0017
0018
0019
0020 #include <iostream>
0021
0022
0023
0024
0025
0026
0027
0028
0029 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0030 #include "FWCore/Utilities/interface/Exception.h"
0031 #include "L1TriggerConfig/DTTPGConfig/interface/DTConfig.h"
0032
0033
0034
0035
0036
0037 class DTConfigSectColl : public DTConfig {
0038 public:
0039
0040 static const int NTSTSC = 3, NTSPSC = 5;
0041
0042
0043 static const int NDTSC = 4;
0044
0045
0046 DTConfigSectColl(const edm::ParameterSet& ps);
0047
0048
0049 DTConfigSectColl();
0050
0051
0052 ~DTConfigSectColl() override;
0053
0054
0055 inline bool debug() const { return m_debug; }
0056
0057
0058 inline bool SCGetCarryFlag(int istat) const {
0059 if (istat < 1 || istat > 4) {
0060 throw cms::Exception("DTTPG") << "DTConfigSectColl::SCGetCarryFlag: station number out of range: istat=" << istat
0061 << std::endl;
0062 }
0063 return m_scecf[istat - 1];
0064 }
0065
0066
0067 inline int CoarseSync(int istat) const {
0068 if (istat < 1 || istat > 5) {
0069 throw cms::Exception("DTTPG") << "DTConfigSectColl::CoarseSync: station number out of range: istat=" << istat
0070 << std::endl;
0071 }
0072 return m_sccsp[istat - 1];
0073 }
0074
0075
0076
0077 inline void setDebug(bool debug) { m_debug = debug; }
0078
0079
0080 void setSCCarryFlag(bool scecf, int istat);
0081
0082
0083 void setCoarseSync(int sccsp, int istat);
0084
0085
0086 void print() const;
0087
0088 private:
0089
0090 void setDefaults(const edm::ParameterSet& ps);
0091
0092 bool m_debug;
0093 bool m_scecf[4];
0094 int m_sccsp[5];
0095 };
0096
0097 #endif