File indexing completed on 2024-04-06 12:19:42
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 #include "L1Trigger/DTTrackFinder/interface/L1MuDTSecProcId.h"
0019
0020
0021
0022
0023
0024 #include <iostream>
0025 #include <iomanip>
0026 #include <cstdlib>
0027
0028
0029
0030
0031
0032 using namespace std;
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042 L1MuDTSecProcId::L1MuDTSecProcId() : m_wheel(0), m_sector(0) {}
0043
0044 L1MuDTSecProcId::L1MuDTSecProcId(int wheel_id, int sector_id) : m_wheel(wheel_id), m_sector(sector_id) {
0045 if (!(wheel_id >= -3 && wheel_id <= 3)) {
0046
0047 }
0048 if (!(sector_id >= 0 && sector_id < 12)) {
0049
0050 }
0051 }
0052
0053 L1MuDTSecProcId::L1MuDTSecProcId(const L1MuDTSecProcId& id) : m_wheel(id.m_wheel), m_sector(id.m_sector) {}
0054
0055
0056
0057
0058
0059 L1MuDTSecProcId::~L1MuDTSecProcId() {}
0060
0061
0062
0063
0064
0065
0066
0067
0068 L1MuDTSecProcId& L1MuDTSecProcId::operator=(const L1MuDTSecProcId& id) {
0069 if (this != &id) {
0070 m_wheel = id.m_wheel;
0071 m_sector = id.m_sector;
0072 }
0073 return *this;
0074 }
0075
0076
0077
0078
0079 int L1MuDTSecProcId::locwheel() const { return (m_wheel / abs(m_wheel) * (abs(m_wheel) - 1)); }
0080
0081
0082
0083
0084 bool L1MuDTSecProcId::operator==(const L1MuDTSecProcId& id) const {
0085 if (wheel() != id.wheel())
0086 return false;
0087 if (sector() != id.sector())
0088 return false;
0089 return true;
0090 }
0091
0092
0093
0094
0095 bool L1MuDTSecProcId::operator!=(const L1MuDTSecProcId& id) const {
0096 if (m_wheel != id.wheel())
0097 return true;
0098 if (m_sector != id.sector())
0099 return true;
0100 return false;
0101 }
0102
0103
0104
0105
0106 bool L1MuDTSecProcId::operator<(const L1MuDTSecProcId& id) const {
0107 if (sector() < id.sector())
0108 return true;
0109 if (sector() > id.sector())
0110 return false;
0111 if (wheel() < 0 && id.wheel() < 0) {
0112 if (-wheel() < -id.wheel())
0113 return true;
0114 } else {
0115 if (wheel() < id.wheel())
0116 return true;
0117 }
0118 return false;
0119 }
0120
0121
0122
0123
0124 ostream& operator<<(ostream& s, const L1MuDTSecProcId& id) {
0125 s.setf(ios::right, ios::adjustfield);
0126 s << "Sector Processor ( " << setw(2) << id.wheel() << "," << setw(2) << id.sector() << " )";
0127 return s;
0128 }