15 int wire = wiregroup - 8 * ((wiregroup - 1) / 8);
16 int channel = layer_wire_to_channel_[
layer - 1][wire - 1];
21 int col = (wiregroup - 1) / 8 + 1;
22 int wire = wiregroup - 8 * ((wiregroup - 1) / 8);
23 int afeb = (
col - 1) * 3 + layer_wire_to_board_[
layer - 1][wire - 1];
28 int col = (afeb - 1) / 3 + 1;
29 int pos_in_col = afeb - (
col - 1) * 3;
30 int layer = pos_in_col * 2 - 1;
31 if (channel < 5 || (channel > 8 && channel < 13))
37 int col = (afeb - 1) / 3 + 1;
38 int wire = (
col - 1) * 8 + 1;
40 wire = wire + (channel - 1);
41 if (channel > 4 && channel < 9)
42 wire = wire + (channel - 5);
43 if (channel > 8 && channel < 13)
44 wire = wire + (channel - 5);
46 wire = wire + (channel - 9);
int getAfebCh(int layer, int wiregroup) const
return AFEB channel number
constexpr std::array< uint8_t, layerIndexSize > layer
int getMaxAfeb(int station, int ring) const
return max. number of AFEBs
int getMaxWire(int station, int ring) const
return max. number of wiregroups per layer
int getWireGroup(int afeb, int channel) const
return wiregroup number
int getLayer(int afeb, int channel) const
return layer number
int getAfebPos(int layer, int wiregroup) const
return AFEB position number