| 18 | } |
| 19 | |
| 20 | Array::Ptr TimePeriodTask::EvenMinutesTimePeriodUpdate(const TimePeriod::Ptr& tp, double begin, double end) |
| 21 | { |
| 22 | REQUIRE_NOT_NULL(tp); |
| 23 | |
| 24 | ArrayData segments; |
| 25 | |
| 26 | for (long t = begin / 60 - 1; t * 60 < end; t++) { |
| 27 | if ((t % 2) == 0) { |
| 28 | segments.push_back(new Dictionary({ |
| 29 | { "begin", t * 60 }, |
| 30 | { "end", (t + 1) * 60 } |
| 31 | })); |
| 32 | } |
| 33 | } |
| 34 | |
| 35 | return new Array(std::move(segments)); |
| 36 | } |