18 #include "eckit/config/LocalConfiguration.h"
19 #include "oops/util/abor1_cpp.h"
20 #include "oops/util/DateTime.h"
21 #include "oops/util/Duration.h"
22 #include "oops/util/Logger.h"
27 : options_(), bgn_(), end_(), start_(), finish_() {}
30 : options_(), bgn_(), end_(), start_(), finish_() {
35 const util::Duration & freq)
36 : options_(), bgn_(), end_(),
37 start_(new
util::DateTime(start)), finish_(new
util::DateTime(finish)) {
39 eckit::LocalConfiguration conf;
40 conf.set(
"frequency", freq.toString());
47 util::DateTime start(bgn);
52 util::DateTime finish(end);
69 doit = (freq.toSeconds() == 0 && steps.empty());
71 if (!doit && freq.toSeconds() > 0) {
72 const util::Duration dt = now -
bgn_;
73 doit = (dt >= util::Duration(0) && dt % freq == 0);
76 if (!doit && !steps.empty()) {
77 auto it = find(steps.begin(), steps.end(), now);
78 doit = (it != steps.end());
82 Log::trace() <<
"In PostTimer:itIsTime, time = " << now <<
", doit = " << doit << std::endl;