src/date_func.h
author frosch
Fri, 20 Jun 2008 21:14:10 +0000
changeset 9570 8b9c1cbb0077
parent 8140 0d0d8c94f84b
permissions -rw-r--r--
(svn r13594) -Feature(ette)[FS#2093]: Supply newgrfs with 'day of month', 'leap year' and 'day of year'.
8140
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     1
/* $Id$ */
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     2
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     3
/** @file date_func.h Functions related to dates. */
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     4
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     5
#ifndef DATE_FUNC_H
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     6
#define DATE_FUNC_H
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     7
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     8
#include "date_type.h"
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
     9
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    10
extern Year      _cur_year;
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    11
extern Month     _cur_month;
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    12
extern Date      _date;
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    13
extern DateFract _date_fract;
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    14
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    15
void SetDate(Date date);
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    16
void ConvertDateToYMD(Date date, YearMonthDay *ymd);
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    17
Date ConvertYMDToDate(Year year, Month month, Day day);
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    18
9570
8b9c1cbb0077 (svn r13594) -Feature(ette)[FS#2093]: Supply newgrfs with 'day of month', 'leap year' and 'day of year'.
frosch
parents: 8140
diff changeset
    19
static inline bool IsLeapYear(Year yr)
8b9c1cbb0077 (svn r13594) -Feature(ette)[FS#2093]: Supply newgrfs with 'day of month', 'leap year' and 'day of year'.
frosch
parents: 8140
diff changeset
    20
{
8b9c1cbb0077 (svn r13594) -Feature(ette)[FS#2093]: Supply newgrfs with 'day of month', 'leap year' and 'day of year'.
frosch
parents: 8140
diff changeset
    21
	return yr % 4 == 0 && (yr % 100 != 0 || yr % 400 == 0);
8b9c1cbb0077 (svn r13594) -Feature(ette)[FS#2093]: Supply newgrfs with 'day of month', 'leap year' and 'day of year'.
frosch
parents: 8140
diff changeset
    22
}
8b9c1cbb0077 (svn r13594) -Feature(ette)[FS#2093]: Supply newgrfs with 'day of month', 'leap year' and 'day of year'.
frosch
parents: 8140
diff changeset
    23
8140
0d0d8c94f84b (svn r11702) -Codechange: move all date related stuff to date*.
rubidium
parents:
diff changeset
    24
#endif /* DATE_FUNC_H */