Shows how to use xtd::date_time class.
#include <xtd/console>
#include <xtd/convert>
#include <xtd/date_time>
#include <xtd/math>
#include <xtd/startup>
class program {
public:
static auto main() {
auto freq = 60 * 60 * 2;
auto d6 = (
d1.add_hours(2)).add_seconds(2 *
window);
auto d7 = (
d1.add_hours(2)).add_seconds(-2 *
window);
auto d8 = (
d1.add_hours(2)).add_seconds(
window / 2);
auto d9 = (
d1.add_hours(2)).add_seconds(-
window / 2);
}
private:
static bool roughly_equals(
const date_time&
time,
const date_time& time_with_window,
int window_in_seconds,
int frequency_in_seconds) {
auto delta =
convert::to_int32((time_with_window - time).total_seconds_duration().count()) % frequency_in_seconds;
delta = delta > window_in_seconds ? frequency_in_seconds - delta : delta;
}
};