Rudiments
/home/dmuse/src/rudiments/include/rudiments/snooze.h
00001 // Copyright (c) 2004 David Muse
00002 // See the COPYING file for more information.
00003 
00004 #ifndef RUDIMENTS_SNOOZE_H
00005 #define RUDIMENTS_SNOOZE_H
00006 
00007 #include <rudiments/private/snoozeincludes.h>
00008 
00009 #ifdef RUDIMENTS_NAMESPACE
00010 namespace rudiments {
00011 #endif
00012 
00014 class RUDIMENTS_DLLSPEC snooze {
00015         public:
00016 
00021                 static bool     macrosnooze(uint32_t seconds);
00022 
00029                 static bool     macrosnooze(uint32_t seconds,
00030                                         uint32_t *remainingseconds);
00031 
00032 
00038                 static bool     microsnooze(uint32_t seconds,
00039                                         uint32_t microseconds);
00040 
00048                 static bool     microsnooze(uint32_t seconds,
00049                                         uint32_t microseconds,
00050                                         uint32_t *secondsremaining,
00051                                         uint32_t *microsecondsremaining);
00052 
00053 
00060                 static bool     nanosnooze(uint32_t seconds,
00061                                         uint32_t nanoseconds);
00062 
00071                 static bool     nanosnooze(uint32_t seconds,
00072                                         uint32_t nanoseconds,
00073                                         uint32_t *secondsremaining,
00074                                         uint32_t *nanosecondsremaining);
00075 };
00076 
00077 #ifdef RUDIMENTS_NAMESPACE
00078 }
00079 #endif
00080 
00081 #endif