00001 00015 /***************************************************************************** 00016 ** Ifdefs 00017 *****************************************************************************/ 00018 00019 #ifndef ECL_TIME_LITE_FUNCTIONS_HPP_ 00020 #define ECL_TIME_LITE_FUNCTIONS_HPP_ 00021 00022 /***************************************************************************** 00023 ** Includes 00024 *****************************************************************************/ 00025 00026 #include <ctime> 00027 #include <ecl/config/macros.hpp> 00028 #include <ecl/time_lite/config.hpp> 00029 00030 /***************************************************************************** 00031 ** Includes 00032 *****************************************************************************/ 00033 00034 #if defined(ECL_HAS_MACH_TIMERS) 00035 #include "functions_mac.hpp" 00036 #elif defined(ECL_HAS_RT_TIMERS) 00037 // monotonic clock -> clock_gettime; clock_selection -> clock_nanosleep 00038 // #if defined(_POSIX_MONOTONIC_CLOCK) && (_POSIX_MONOTONIC_CLOCK) >= 0L && defined(_POSIX_CLOCK_SELECTION) && (_POSIX_CLOCK_SELECTION) >= 0L 00039 #include "functions_rt.hpp" 00040 #elif defined(ECL_HAS_POSIX_TIMERS) 00041 #include "functions_pos.hpp" 00042 #elif defined(ECL_HAS_WIN_TIMERS) 00043 // basic system time functions (horrid resolution and little functionality!) 00044 #include "functions_win.hpp" 00045 #else 00046 #error("There is not a supporting time implementation on this platform (possibly needs extended ecl support).") 00047 #endif 00048 00049 #endif /* ECL_TIME_LITE_FUNCTIONS_HPP_ */