A time interface class. This class replicates the normal time functions, but goes a couple of steps further. mbed library 82 and prior has a defective gmtime function. Also, this class enables access to setting the time, and adjusting the accuracy of the RTC.
Dependents: CI-data-logger-server WattEye X10Svr SSDP_Server
Diff: TimeInterface.cpp
- Revision:
- 9:56c1041f7f32
- Parent:
- 7:1de342fa7840
--- a/TimeInterface.cpp Thu Nov 26 17:43:26 2015 +0000 +++ b/TimeInterface.cpp Tue Jan 26 12:00:26 2016 +0000 @@ -145,17 +145,16 @@ std::time(&privTime); tminfo = std::localtime(&privTime); - uint32_t min_since_jan = minutesSinceJan(tminfo->tm_mon + 1, tminfo->tm_mday, tminfo->tm_hour, tminfo->tm_min); - uint32_t min_dst_start = minutesSinceJan(dst_pair.dst_start.MM, dst_pair.dst_start.DD, dst_pair.dst_start.hh, dst_pair.dst_start.mm) + get_tzo_min(); - uint32_t min_dst_stop = minutesSinceJan(dst_pair.dst_stop.MM, dst_pair.dst_stop.DD, dst_pair.dst_stop.hh, dst_pair.dst_stop.mm) + get_tzo_min(); + uint32_t min_since_jan = minutesSinceJan(tminfo->tm_mon + 1, tminfo->tm_mday, tminfo->tm_hour, tminfo->tm_min) + get_tzo_min(); + uint32_t min_dst_start = minutesSinceJan(dst_pair.dst_start.MM, dst_pair.dst_start.DD, dst_pair.dst_start.hh, dst_pair.dst_start.mm); + uint32_t min_dst_stop = minutesSinceJan(dst_pair.dst_stop.MM, dst_pair.dst_stop.DD, dst_pair.dst_stop.hh, dst_pair.dst_stop.mm); if (min_since_jan >= min_dst_start && min_since_jan < min_dst_stop) { dst = 1; - //INFO(" is dst: %u - %u - %u", min_since_jan, min_dst_start, min_dst_stop); } else { dst = 0; - //INFO("not dst: %u - %u - %u", min_since_jan, min_dst_start, min_dst_stop); } + INFO(" dst: %d, eval: %u <= %u < %u", dst, min_dst_start, min_since_jan, min_dst_stop); } INFO(" timelocal: %u, %d, %d", std::time(timer), get_tzo_min(), dst); return std::time(timer) + get_tzo_min() * 60 + dst * 3600;