8 unsigned sector)
const {
35 unsigned sector)
const {
38 <<
"HGCalGeomRotation: 60 degree sector defintion selected, but not WaferCentred centring. This is " 39 "incompatible, assuming WaferCentred centring";
43 throw cms::Exception(
"RotationException") <<
"HGCalGeomRotation: desired sector must be either 0, 1, 2, 3, 4, or 5";
45 for (
unsigned rot = 0;
rot < sector;
rot++) {
53 unsigned sector)
const {
64 <<
"HGCalGeomRotation: WaferCentring must be one of: WaferCentred, CornerCentredY or CornerCentredMercedes";
68 edm::LogError(
"RotationException") <<
"HGCalGeomRotation: desired sector must be either 0, 1 or 2";
71 for (
unsigned rot = 0;
rot < sector;
rot++) {
81 if (moduleU > 0 && moduleV >= 0)
85 if (moduleU >= moduleV && moduleV < 0)
91 if (moduleU >= 0 && moduleV >= 0)
95 if (moduleU > moduleV && moduleV < 0)
101 if (moduleU >= 1 && moduleV >= 1)
105 if (moduleU >= moduleV && moduleV < 1)
111 <<
"HGCalGeomRotation: WaferCentring must be one of: WaferCentred, CornerCentredY or CornerCentredMercedes";
114 for (
unsigned rot = 0;
rot < sector;
rot++) {
126 <<
"HGCalGeomRotation: 60 degree sector defintion selected, but not WaferCentred centring. This is " 127 "incompatible, assuming WaferCentred centring";
130 if (moduleU > 0 && moduleV >= 0) {
131 if (moduleV <= moduleU) {
136 }
else if (moduleU >= moduleV && moduleV < 0) {
150 for (
unsigned rot = 0;
rot < sector;
rot++) {
158 int moduleURotated, moduleVRotated;
159 moduleURotated = moduleU - moduleV;
160 moduleVRotated = moduleU;
162 moduleU = moduleURotated;
163 moduleV = moduleVRotated;
167 int moduleURotated, moduleVRotated;
168 moduleURotated = moduleV;
169 moduleVRotated = moduleV - moduleU;
171 moduleU = moduleURotated;
172 moduleV = moduleVRotated;
176 int moduleURotated, moduleVRotated;
178 moduleURotated = -moduleV +
offset;
179 moduleVRotated = moduleU - moduleV +
offset;
181 moduleU = moduleURotated;
182 moduleV = moduleVRotated;
186 int moduleURotated, moduleVRotated;
188 moduleURotated = moduleV - moduleU;
189 moduleVRotated = -moduleU +
offset;
191 moduleU = moduleURotated;
192 moduleV = moduleVRotated;
void RotateModule60DegreesClockwise(int &moduleU, int &moduleV) const
void RotateModule120DegreesClockwise(int &moduleU, int &moduleV, int offset) const
void uvMappingFromSector0(WaferCentring waferCentring, int &moduleU, int &moduleV, unsigned sector) const
unsigned uvMappingTo60DegreeSector0(WaferCentring waferCentring, int &moduleU, int &moduleV) const
Log< level::Error, false > LogError
void RotateModule60DegreesAnticlockwise(int &moduleU, int &moduleV) const
void uvMappingFrom120DegreeSector0(WaferCentring waferCentring, int &moduleU, int &moduleV, unsigned sector) const
void uvMappingFrom60DegreeSector0(WaferCentring waferCentring, int &moduleU, int &moduleV, unsigned sector) const
unsigned uvMappingTo120DegreeSector0(WaferCentring waferCentring, int &moduleU, int &moduleV) const
void RotateModule120DegreesAnticlockwise(int &moduleU, int &moduleV, int offset) const
unsigned uvMappingToSector0(WaferCentring waferCentring, int &moduleU, int &moduleV) const