From: g0dil Date: Fri, 4 Apr 2008 13:33:04 +0000 (+0000) Subject: Scheduler: Document the ClockService conversion members (microseconds...) X-Git-Url: http://g0dil.de/git?a=commitdiff_plain;h=091048ffd94ceff5b8b415d1c7487c7893287b42;p=senf.git Scheduler: Document the ClockService conversion members (microseconds...) Scheduler: Add reverse conversion helpers to ClockService git-svn-id: https://svn.berlios.de/svnroot/repos/senf/trunk@784 270642c3-0616-0410-b53a-bc976706d245 --- diff --git a/Scheduler/ClockService.cci b/Scheduler/ClockService.cci index a26d937..f536931 100644 --- a/Scheduler/ClockService.cci +++ b/Scheduler/ClockService.cci @@ -57,41 +57,76 @@ prefix_ senf::ClockService::clock_type senf::ClockService::from_timeval(timeval return from_time_t(time.tv_sec) + ClockService::microseconds(time.tv_usec); } -prefix_ senf::ClockService::clock_type senf::ClockService::nanoseconds(clock_type v) +prefix_ senf::ClockService::clock_type senf::ClockService::nanoseconds(int64_type v) { return v; } -prefix_ senf::ClockService::clock_type senf::ClockService::microseconds(clock_type v) +prefix_ senf::ClockService::clock_type senf::ClockService::microseconds(int64_type v) { return v * nanoseconds(1000); } -prefix_ senf::ClockService::clock_type senf::ClockService::milliseconds(clock_type v) +prefix_ senf::ClockService::clock_type senf::ClockService::milliseconds(int64_type v) { return v * microseconds(1000); } -prefix_ senf::ClockService::clock_type senf::ClockService::seconds(clock_type v) +prefix_ senf::ClockService::clock_type senf::ClockService::seconds(int64_type v) { return v * milliseconds(1000); } -prefix_ senf::ClockService::clock_type senf::ClockService::minutes(clock_type v) +prefix_ senf::ClockService::clock_type senf::ClockService::minutes(int64_type v) { return v * seconds(60); } -prefix_ senf::ClockService::clock_type senf::ClockService::hours(clock_type v) +prefix_ senf::ClockService::clock_type senf::ClockService::hours(int64_type v) { return v * minutes(60); } -prefix_ senf::ClockService::clock_type senf::ClockService::days(clock_type v) +prefix_ senf::ClockService::clock_type senf::ClockService::days(int64_type v) { return v * hours(24); } +prefix_ senf::ClockService::clock_type senf::ClockService::in_nanoseconds(int64_type v) +{ + return v; +} + +prefix_ senf::ClockService::clock_type senf::ClockService::in_microseconds(int64_type v) +{ + return v / nanoseconds(1000); +} + +prefix_ senf::ClockService::clock_type senf::ClockService::in_milliseconds(int64_type v) +{ + return v / microseconds(1000); +} + +prefix_ senf::ClockService::clock_type senf::ClockService::in_seconds(int64_type v) +{ + return v / milliseconds(1000); +} + +prefix_ senf::ClockService::clock_type senf::ClockService::in_minutes(int64_type v) +{ + return v / seconds(60); +} + +prefix_ senf::ClockService::clock_type senf::ClockService::in_hours(int64_type v) +{ + return v / minutes(60); +} + +prefix_ senf::ClockService::clock_type senf::ClockService::in_days(int64_type v) +{ + return v / hours(24); +} + prefix_ void senf::ClockService::restart() { instance().restart_m(); diff --git a/Scheduler/ClockService.hh b/Scheduler/ClockService.hh index 04bcc1a..255fcbe 100644 --- a/Scheduler/ClockService.hh +++ b/Scheduler/ClockService.hh @@ -98,6 +98,7 @@ namespace senf { nanoseconds relative to some implementation defined reference time. */ typedef boost::int_fast64_t clock_type; + typedef boost::int_fast64_t int64_type; /** \brief Absolute time data type @@ -141,13 +142,21 @@ namespace senf { /**< This member converts an absolute time value represented as a timeval value into a clock value */ - static clock_type nanoseconds(clock_type v); - static clock_type microseconds(clock_type v); - static clock_type milliseconds(clock_type v); - static clock_type seconds(clock_type v); - static clock_type minutes(clock_type v); - static clock_type hours(clock_type v); - static clock_type days(clock_type v); + static clock_type nanoseconds(int64_type v); ///< Convert \a v nanoseconds to clock_type + static clock_type microseconds(int64_type v); ///< Convert \a v microseconds to clock_type + static clock_type milliseconds(int64_type v); ///< Convert \a v milliseconds to clock_type + static clock_type seconds(int64_type v); ///< Convert \a v seconds to clock_type + static clock_type minutes(int64_type v); ///< Convert \a v minutes to clock_type + static clock_type hours(int64_type v); ///< Convert \a v hours to clock_type + static clock_type days(int64_type v); ///< Convert \a v days to clock_type + + static int64_type in_nanoseconds(clock_type v); ///< Convert \a v to nanoseconds + static int64_type in_microseconds(clock_type v); ///< Convert \a v to microseconds + static int64_type in_milliseconds(clock_type v); ///< Convert \a v to milliseconds + static int64_type in_seconds(clock_type v); ///< Convert \a v to seconds + static int64_type in_minutes(clock_type v); ///< Convert \a v to minutes + static int64_type in_hours(clock_type v); ///< Convert \a v to hours + static int64_type in_days(clock_type v); ///< Convert \a v to days static void restart();