00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00020 #ifndef flc_sys_time_H
00021 #define flc_sys_time_H
00022
00023 namespace Falcon {
00024
00025
00032 class SystemTime {
00033 };
00034
00035 typedef enum {
00036 tz_local = 0,
00037 tz_UTC = 1,
00038 tz_UTC_E_1 = 2,
00039 tz_UTC_E_2 = 3,
00040 tz_UTC_E_3 = 4,
00041 tz_UTC_E_4 = 5,
00042 tz_UTC_E_5 = 6,
00043 tz_UTC_E_6 = 7,
00044 tz_UTC_E_7 = 8,
00045 tz_UTC_E_8 = 9,
00046 tz_UTC_E_9 = 10,
00047 tz_UTC_E_10 = 11,
00048 tz_UTC_E_11 = 12,
00049 tz_UTC_E_12 = 13,
00050 tz_UTC_W_1 = 14,
00051 tz_UTC_W_2 = 15,
00052 tz_UTC_W_3 = 16,
00053 tz_UTC_W_4 = 17,
00054 tz_UTC_W_5 = 18,
00055 tz_UTC_W_6 = 19,
00056 tz_UTC_W_7 = 20,
00057 tz_UTC_W_8 = 21,
00058 tz_UTC_W_9 = 22,
00059 tz_UTC_W_10 = 23,
00060 tz_UTC_W_11 = 24,
00061 tz_UTC_W_12 = 25,
00063 tz_NFT = 26,
00065 tz_ACDT = 27,
00067 tz_ACST = 28,
00069 tz_HAT = 29,
00071 tz_NST = 30,
00073 tz_NONE = 31
00074 } TimeZone;
00075
00076
00077 class TimeStamp;
00078
00079 namespace Sys {
00080
00081
00082 namespace Time {
00083
00084 void FALCON_DYN_SYM currentTime( ::Falcon::TimeStamp &ts );
00085
00086 TimeZone FALCON_DYN_SYM getLocalTimeZone();
00087
00088 numeric FALCON_DYN_SYM seconds();
00089 bool FALCON_DYN_SYM absoluteWait( const TimeStamp &ts );
00090 bool FALCON_DYN_SYM relativeWait( const TimeStamp &ts );
00091 bool FALCON_DYN_SYM nanoWait( int32 seconds, int32 nanoseconds );
00092 void FALCON_DYN_SYM timestampFromSystemTime( const SystemTime &st, ::Falcon::TimeStamp &ts );
00093
00094 }
00095 }
00096 }
00097
00098 #endif
00099
00100