18 if (
auto numDigis = config[
"minDigis"]) {
19 for (YAML::const_iterator it = numDigis.begin(); it != numDigis.end(); it++) {
22 throw std::runtime_error(
"DigiEventSelectorConfig: invalid detector in minDigis entry: "
23 + it->first.as<std::string>());
25 auto value = it->second.as<
size_t>();
29 L_(warning) <<
"DigiEventSelectorConfig: Ignoring minimum 0 for digis in " << det;
32 if (
auto numLayers = config[
"minLayers"]) {
33 for (YAML::const_iterator it = numLayers.begin(); it != numLayers.end(); it++) {
36 throw std::runtime_error(
"DigiEventSelectorConfig: invalid detector in minLayers entry: "
37 + it->first.as<std::string>());
39 auto value = it->second.as<
size_t>();
43 L_(warning) <<
"DigiEventSelectorConfig: Ignoring minimum 0 for layers in " << det;
46 if (
auto maskedChannels = config[
"maskedChannels"]) {
47 for (YAML::const_iterator it = maskedChannels.begin(); it != maskedChannels.end(); ++it) {
50 throw std::runtime_error(
"DigiEventSelectorConfig: invalid detector in maskedChannels entry: "
51 + it->first.as<std::string>());
53 auto value = it->second.as<std::vector<uint32_t>>();
54 if (value.size() > 0) {
55 fMaskedChannels[det] = std::unordered_set<uint32_t>(value.begin(), value.end());
56 L_(info) <<
"Masking following " << det <<
" channels from event selecting: ";
58 L_(info) <<
" - 0x" << std::hex << std::setw(8) << std::setfill(
'0') << address << std::dec;