void ForEachTime(unsigned item_index, C &&c) { assert(item_index < maps.size()); const auto &mi = maps[item_index]; for (unsigned i = 0; i < MAX_WEATHER_TIMES; ++i) if (mi.times[i]) c(IndexToTime(i)); }
gcc_const unsigned GetItemCount() const { return maps.size(); }
bool IsTimeAvailable(unsigned item_index, unsigned time_index) const { assert(item_index < maps.size()); assert(time_index < MAX_WEATHER_TIMES); return maps[item_index].times[time_index]; }