61   out << 
"Information on " << 
db.nBoardInfo() << 
" boards recorded:";
 
   62   for (BoardInfoLookup::BoardInfo_t 
const& boardInfo: 
db.allBoardInfo()) {
 
   63     assert(boardInfo.setup);
 
   64     out << 
"\n  board \"" << boardInfo.setup->name
 
   65       << 
"\" (fragment ID " << std::hex << boardInfo.fragmentID << std::dec
 
   66       << 
"): trigger delay " << boardInfo.setup->triggerDelay
 
   67       << 
", TTT reset delay " << boardInfo.setup->TTTresetDelay
 
   68       << 
", pre-trigger buffer length " << boardInfo.facts.preTriggerTime;
 
   69     if (boardInfo.config) {
 
   70       out << 
", buffer " << boardInfo.config->bufferLength
 
   71         << 
" tick long, board ID " << boardInfo.config->boardID
 
   72         << 
" with " << boardInfo.config->nChannels << 
" channels";
 
   75       out << 
" (no PMT configuration)";
 
   78     std::vector<std::size_t> specialChannels;
 
   79     for (
auto const& [ iChannel, chSetup ]
 
   82       if (!chSetup.isDefault()) specialChannels.push_back(iChannel);
 
   84     if (specialChannels.empty()) 
continue;
 
   85     out << 
"; " << specialChannels.size() << 
" special channel configurations:";
 
   86     for (std::size_t 
const iCh: specialChannels) {
 
   87       out << 
"\n    ch.number " << iCh << 
": " 
   88         << boardInfo.setup->channelSettings[iCh];
 
auto enumerate(Iterables &&...iterables)
Range-for loop helper tracking the number of iteration. 
 
height to which particles are projected pnfs larsoft persistent physics cosmics Fermilab CORSIKA standard He_showers_ * db