00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00035 #ifndef TOD_H
00036 #define TOD_H
00037
00038 #define PTICKS_PER_CLOCK 1500
00039
00040
00041 #define HOURS_PER_DAY 28
00042 #define DAYS_PER_WEEK 7
00043 #define WEEKS_PER_MONTH 5
00044 #define MONTHS_PER_YEAR 17
00045 #define SEASONS_PER_YEAR 5
00046 #define PERIODS_PER_DAY 6
00047
00048
00049 #define WEEKS_PER_YEAR (WEEKS_PER_MONTH*MONTHS_PER_YEAR)
00050 #define DAYS_PER_MONTH (DAYS_PER_WEEK*WEEKS_PER_MONTH)
00051 #define DAYS_PER_YEAR (DAYS_PER_MONTH*MONTHS_PER_YEAR)
00052 #define HOURS_PER_WEEK (HOURS_PER_DAY*DAYS_PER_WEEK)
00053 #define HOURS_PER_MONTH (HOURS_PER_WEEK*WEEKS_PER_MONTH)
00054 #define HOURS_PER_YEAR (HOURS_PER_MONTH*MONTHS_PER_YEAR)
00055
00056 #define LUNAR_DAYS DAYS_PER_MONTH
00057
00061 typedef struct _timeofday {
00062 int year;
00063 int month;
00064 int day;
00065 int dayofweek;
00066 int hour;
00067 int minute;
00068 int weekofmonth;
00069 int season;
00070 int periodofday;
00071 } timeofday_t;
00072
00073
00074 extern void get_tod(timeofday_t *tod);
00075
00076 #endif