/*
- * Copyright (C) 2012 Andy Spencer <andy753421@gmail.com>
+ * Copyright (C) 2012-2013 Andy Spencer <andy753421@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
typedef int day_t;
typedef int hour_t;
typedef int min_t;
+typedef int sec_t;
typedef enum {
JAN = 0,
day_t day;
hour_t hour;
min_t min;
+ sec_t sec;
} date_t;
/* Global data */
-extern year_t YEAR;
-extern month_t MONTH;
-extern day_t DAY;
+extern date_t NOW; // current wall clock time, refreshed at 10 Hz
+extern date_t SEL; // date and time the user is looking at
/* Initialize */
void date_init(void);
+void date_sync(void);
/* Time functions */
int is_leap_year(year_t year);
stamp_t get_stamp(date_t *date);
int get_mins(date_t *start, date_t *end);
int compare(date_t *a, date_t *b);
+int same_day(date_t *a, date_t *b);
int before(date_t *start, int year, int month, int day, int hour, int min);
int all_day(date_t *start, date_t *end);
const char *day_to_st(wday_t day);
const char *day_to_str(wday_t day);
const char *day_to_string(wday_t day);
-
-/* Tests */
-void date_test(void);