time64 time64CanonicalDayTime (time64 t) { struct tm tm; gnc_localtime_r(&t, &tm); gnc_tm_set_day_middle(&tm); return gnc_mktime (&tm); }
/* Converts any time on a day to midday that day. * given a timepair contains any time on a certain day (local time) * converts it to be midday that day. */ Timespec timespecCanonicalDayTime(Timespec t) { struct tm tm; Timespec retval; time64 t_secs = t.tv_sec + (t.tv_nsec / NANOS_PER_SECOND); gnc_localtime_r(&t_secs, &tm); gnc_tm_set_day_middle(&tm); retval.tv_sec = gnc_mktime(&tm); retval.tv_nsec = 0; return retval; }