35 const std::vector<T_EmulatedDefectsKey> &emulated_module_defects) {
37 ChipFlags_t chip_status=(1u<<module_helper.circuitsPerColumn()*module_helper.circuitsPerRow())-1;
39 if (!emulated_module_defects.empty()) {
42 if (module_helper.isRangeKey(key)) {
44 if ( module_helper.getRow(key)==0
45 && module_helper.getColumn(key)==0
46 && (module_helper.getChip(last_key)-module_helper.getChip(key)>0
47 || ( module_helper.getColumn(last_key) >=module_helper.columnsPerCircuit()
48 && module_helper.getRow(last_key) >=module_helper.rowsPerCircuit()))) {
49 unsigned int end_chip = module_helper.getChip(last_key);
50 if ( module_helper.getColumn(last_key) >=module_helper.columnsPerCircuit()
51 && module_helper.getRow(last_key) >= module_helper.rowsPerCircuit()) {
54 for (
unsigned int chip_i=module_helper.getChip(key); chip_i<end_chip; ++chip_i) {
55 assert( chip_i < 31u && (1u<<chip_i ) < std::numeric_limits<ChipFlags_t>::max());
56 chip_status &= ~(1<<(chip_i));